Process a FHIR message
`$process-message`: a `message` Bundle whose first entry is a `MessageHeader`. Synchronous; duplicates (`Bundle.id` + `MessageHeader.id`, 30 days) replay the stored response. Data rejections answer 200 with `fatal-error`; transient failures answer 503 with `Retry-After`.
$process-message: a message Bundle whose first entry is a MessageHeader. Synchronous; duplicates (Bundle.id + MessageHeader.id, 30 days) replay the stored response. Data rejections answer 200 with fatal-error; transient failures answer 503 with Retry-After.
OAuth 2.0 client credentials. private_key_jwt (SMART Backend Services asymmetric) is recommended; client secrets need an IP allowlist or mTLS outside the sandbox.
In: header
Scope: fhir:write
Query Parameters
length <= 64Header Parameters
Overrides the app's pinned dated version for this request.
1–255 characters of [A-Za-z0-9._:-] (a UUID v4 is recommended); never PHI. Stored 24 hours per app.
Request Body
application/fhir+json
TypeScript Definitions
Use the request body type in TypeScript.
A FHIR R4 Bundle (≤ 200 entries). In the sandbox it carries the HTEST test tag (api-platform §4.4).
Response Body
application/fhir+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X POST "https://example.com/v1/fhir/$process-message" \ -H "Content-Type: application/fhir+json" \ -d '<meta> <tag> <code>HTEST</code> <system>http://terminology.hl7.org/CodeSystem/v3-ActReason</system> </tag> </meta> <resourceType>Bundle</resourceType> <type>message</type>'{ "property1": null, "property2": null}