FHIR Complete

Encounter

Clinical encounters, visits, hospitalizations, and ward management

Search Encounters

GET /Encounter?patient={id}&status={status}&date={date}&_count={limit}&_offset={offset}

Parameters

ParameterTypeDescription
patientstringFilter by patient resource_id
statusstringplanned, arrived, triaged, in-progress, onleave, finished, cancelled
datedateFilter by encounter date
classstringAMB (ambulatory), IMP (inpatient), EMER (emergency)

Create / Read / Update / Delete

POST /Encounter
GET /Encounter/{resource_id}
PUT /Encounter/{resource_id}
DELETE /Encounter/{resource_id}

Start Visit

Transition an encounter from planned/arrived to in-progress:

POST /Encounter/{resource_id}/$start-visit

Finish Encounter

Complete an encounter:

POST /Encounter/{resource_id}/$finish

Hospitalization

Start Hospitalization

POST /Encounter/$start-hospitalization
Content-Type: application/json
{
  "patientId": "patient-001",
  "locationId": "ward-A-bed-5",
  "admitSource": "emd"
}

End Hospitalization

POST /Encounter/{resource_id}/$end-hospitalization

Transfer Bed

POST /Encounter/{resource_id}/$transfer-bed
Content-Type: application/json
{
  "newLocationId": "ward-B-bed-12"
}

Ward Management

Get Ward Census

GET /Encounter/$ward-census?location={wardId}

Returns current bed occupancy for a ward.

Get Available Beds

GET /Encounter/$available-beds?location={wardId}

Returns list of unoccupied beds in a ward.

Episode of Care

For tracking long-term care relationships:

GET /EpisodeOfCare?patient={id}&status={status}
POST /EpisodeOfCare
PUT /EpisodeOfCare/{resource_id}
DELETE /EpisodeOfCare/{resource_id}