IDs
Codex generates custom globally unique identifiers for all types of entities. Each ID generated by Codex contains only alphanumeric characters and usually has a fixed length of 10 characters (some exceptions occur).
Each ID generated by Codex is unique across all entities, meaning no two entries and models should contain the same ID. The format of generated IDs is a custom encoding of GUID like IDs, with shorter length.
Prefixes
All IDs in Codex contain a two letter prefix which determines the type of entity the ID is assigned to. For example, all entry IDs contain a prefix of "ce" and all section IDs contain a prefix of "se".
External IDs
Codex provides out of the box support for external IDs for clients that are migrating existing content to Codex or importing entries from an external system. External IDs are stored as string values, meaning you can save any string compatible value as an external identifier. External IDs must comply the uniqueness across organization or site, based on the entity type they are being assigned for. For example, assets must contain unique external ids across the whole Codex organization, meanwhile entries, sections, authors etc. must contain unique external ids across the Codex site, but can contain duplicate IDs across the whole organization.
Codex API has made it easy to retrieve content by external ids. All entities that support external IDs in their GET by ID endpoints support retrieving the entity by external ID. For example the endpoint for retrieving an entry by ID: /v2/entries/{id}
works with Codex IDs but also external IDs as value for the parameter {id}.