FHIR R4 endpoints
Read ECG records and patient data as standard FHIR R4 resources
For HMIS systems that prefer FHIR over HL7 v2, the cloud exposes a read-only FHIR R4 API at /fhir/*. Same JWT auth as the rest of the API.
Resources supported
| Resource | Endpoint | Notes |
|---|---|---|
Patient |
GET /fhir/Patient/{mrn} |
MRN as resource id; supports ?identifier=… search |
Patient |
GET /fhir/Patient?_lastUpdated=ge2026-04-01 |
Bulk pull since timestamp |
Observation |
GET /fhir/Observation/{ecgId} |
One ECG = one Observation |
Observation |
GET /fhir/Observation?subject=Patient/12345 |
All ECGs for one patient |
DiagnosticReport |
GET /fhir/DiagnosticReport/{ecgId} |
Wraps the Observation + AI interpretation |
Bundle |
implicit on all collection responses | Standard FHIR pagination via link.next |
Auth
GET /fhir/Patient/12345
Authorization: Bearer eyJhbGciOiJIUzI1NiI...
Accept: application/fhir+json
Example: pull all ECGs for one patient since last sync
GET /fhir/Observation?subject=Patient/12345&_lastUpdated=ge2026-04-01&_count=50
Authorization: Bearer …
Accept: application/fhir+json
Returns a Bundle of Observation resources with codes 93000 (12-lead ECG) and component values for HR, PR, QRS, QT.
Plan availability
| Plan | FHIR access |
|---|---|
| Basic | — |
| Professional | ✓ read-only |
| Enterprise | ✓ read-only |
| Multi-site | ✓ read-only |
Write endpoints (POST / PUT) are deliberately not exposed — ECGs enter the system only via the gateway's HL7 path or the sync ingest API. This keeps the FHIR surface side-effect-free for HMIS pulls.
CapabilityStatement
GET /fhir/metadata
Returns the SMART-on-FHIR-compatible CapabilityStatement enumerating supported resources and search params.