admission
One completed admission form snapshot from a therapy discipline — sourced from
rosetta-app's product database. One admission record represents one completed
admission form for one (patient, discipline) case; the full form payload travels at
full fidelity in formData rather than being broken out field-by-field, since
admission forms are discipline-specific and evolve independently of this contract.
Fields
| Field | Type | Required | Description |
|---|---|---|---|
identifiers | Identifier[] | yes (≥1) | Business identifiers for this admission snapshot. |
patientRef | SourceRef | yes | The patient this admission form was completed for. |
discipline | string | yes | The therapy discipline, e.g. physiotherapy. |
capturedAt | IsoDatetime | yes | When the admission form was captured. |
completedAt | IsoDatetime | no | When the admission form was completed, if later than capture. |
formData | object | yes | The full admission form payload, at full fidelity (see below). |
formData is a free-form JSON object — its shape is owned by the source discipline's
form, not fixed by this contract. Values may be scalars (string/number/boolean), nested
objects, or arrays of either.
Example payload
{
"identifiers": [{ "system": "urn:rosetta-app:admission", "value": "adm-7001" }],
"patientRef": {
"sourceSystem": "rosetta-app",
"resourceType": "patient",
"sourceId": "pat-1"
},
"discipline": "physiotherapy",
"capturedAt": "2026-07-13T09:00:00.000Z",
"completedAt": "2026-07-13T09:30:00.000Z",
"formData": {
"mobility": "independent",
"vitals": { "heartRate": 72 },
"medications": ["aspirin", "ibuprofen"]
}
}
As a change-feed event
{
"sequence": 201,
"resourceType": "admission",
"canonicalId": "2b5c8d0f-4c7e-4a1b-8d2c-5c8b1e4f7a0f",
"operation": "create",
"version": 1,
"occurredAt": "2026-07-13T09:30:05.000Z",
"orgSlug": "default",
"record": {
"identifiers": [{ "system": "urn:rosetta-app:admission", "value": "adm-7001" }],
"patientRef": {
"sourceSystem": "rosetta-app",
"resourceType": "patient",
"sourceId": "pat-1"
},
"discipline": "physiotherapy",
"capturedAt": "2026-07-13T09:00:00.000Z",
"completedAt": "2026-07-13T09:30:00.000Z",
"formData": {
"mobility": "independent",
"vitals": { "heartRate": 72 },
"medications": ["aspirin", "ibuprofen"]
}
}
}
From the Records API
curl -H "Authorization: Bearer $ROSETTA_SYNC_TOKEN" \
"https://sync.example.com/api/v1/records/admission/2b5c8d0f-4c7e-4a1b-8d2c-5c8b1e4f7a0f"
{
"id": "2b5c8d0f-4c7e-4a1b-8d2c-5c8b1e4f7a0f",
"resourceType": "admission",
"version": 1,
"payload": {
"identifiers": [{ "system": "urn:rosetta-app:admission", "value": "adm-7001" }],
"patientRef": {
"sourceSystem": "rosetta-app",
"resourceType": "patient",
"sourceId": "pat-1"
},
"discipline": "physiotherapy",
"capturedAt": "2026-07-13T09:00:00.000Z",
"completedAt": "2026-07-13T09:30:00.000Z",
"formData": {
"mobility": "independent",
"vitals": { "heartRate": 72 },
"medications": ["aspirin", "ibuprofen"]
}
},
"updatedAt": "2026-07-13T09:30:05.000Z",
"orgSlug": "default",
"identifiers": [{ "system": "urn:rosetta-app:admission", "value": "adm-7001" }]
}
Consumption notes
- One record per completed admission form — a patient re-admitted to the same
discipline later gets a new
admissionrecord, not an update to the earlier one. formDatais intentionally schema-free at this contract's level: validate/parse it according to the discipline's own form definition, not this document.completedAtis optional — when the source form has no distinct completion timestamp separate from capture, onlycapturedAtis present.patientRefis a source reference; correlate it to the canonicalpatientwhoseidentifierscontain the matching business identifier.- This is the outbound counterpart of rosetta-app's own admission workflow — see the
encounterpage for the (patient, discipline) case dates this form is associated with.