ID conventions

All resources have unique numeric IDs, such as applicant ID, application ID, tracker ID and institution ID.

  • IDs carry no meaning or information
  • IDs are permanent and will never change
  • There may be gaps between IDs
  • Deleted IDs are never reused

Some resources have unique properties, such as a tracker code or a flag name. While these properties uniquely identify a resource, they cannot be used as IDs. These properties may change over time, and an ID must remain constant throughout the life of the resource.

Resource IDs in collections

Resource IDs are typically used as object keys in API responses. For example, GET /api/applicants will return a collection of applicants as a JSON object with the resource IDs as keys:

Example response
curl
{
  "123": { .. applicant properties .. },
  "124": { .. applicant properties .. },
  "125": { .. applicant properties .. }
}

You can get detailed information about a specific resource by using its ID. For example, GET /api/applicants/123 will return the data about an applicant with ID 123:

Example response
curl
"123": {
  "id": "...",
  "type": "...",
  "registered": "...",
  "name": {
    "full": "...",
    "given": "...",
    "middle": "...",
    "family": "..."
  },
  "email": "...",
  "phone": "...",
  "reference": "...",
  "matriculation": "...",
  "citizenship": "...",
  "notes": "...",
  "applications": "...",
  "trackers": "...",
  "photo": "...",
  "consents": "...",
  "invoices": "...",
  "wishes": "...",
  "documents": "..."
}