This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU) in it's permanent home (it will always be available at this URL). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Infrastructure And Messaging Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: Device, Practitioner |
This is the narrative for the resource. See also the XML, JSON or Turtle format.
OPERATION: Process Message
The official URL for this operation definition is:
http://hl7.org/fhir/OperationDefinition/MessageHeader-process-message
This operation accepts a message, processes it according to the definition of the event in the message header, and returns one or more response messages.
In addition to processing the message event, a server may choose to retain all or some the resources and make them available on a RESTful interface, but is not required to do so.
URL: [base]/$process-message
Parameters
Use | Name | Cardinality | Type | Binding | Documentation |
IN | content | 1..1 | Bundle | The message to process (or, if using asynchronous messaging, it may be a response message to accept) | |
IN | async | 0..1 | boolean | If 'true' the message is processed using the asynchronous messaging pattern | |
IN | response-url | 0..1 | url | A URL to submit response messages to, if asynchronous messaging is being used, and if the MessageHeader.source.endpoint is not the appropriate place to submit responses | |
OUT | return | 0..1 | Bundle | A response message, if synchronous messaging is being used (mandatory in this case). For asynchronous messaging, there is no return value |
This operation does not use the parameters resource; the parameters "async" and "response-url" always go in the URL, if they are used, and the "content" parameter is always the body of the HTTP message.
When processing messages, a server may return one of several status codes:
The following rules apply when using $process-message:
The $process-message operation can be used by any HTTP end-point that accepts FHIR messages, not just FHIR RESTful servers.
In order to ensure consistency of processing, the logical rules regarding processing of Bundle.id and message id SHALL be followed when messages are processed using this operation.
The $process-message operation may be used synchronously, or asynchronously.
The following rules apply when using the $process-message operation synchronously:
The following rules apply when using the $process-message operation asynchronously:
Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.