This page is part of the FHIRcast (v2.1.0-ballot: STU3 Ballot 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions
Similar to the Hub’s notifications to the subscriber, the subscriber MAY request context changes with an HTTP POST to the hub.url
. The Hub SHALL either accept this context change by responding with any successful HTTP status or reject it by responding with any 4xx or 5xx HTTP status. Similar to event notifications, described above, the Hub MAY also respond with a 202 (Accepted) status, process the request, and then later respond with a syncerror
event in order to reject the request. In this case the syncerror
would only be sent to the requestor. The subscriber SHALL be capable of gracefully handling a rejected context request.
Once a requested context change is accepted, the Hub SHALL broadcast the context notification to all subscribers, including the original requestor. The requestor can use the broadcasted notification as confirmation of their request. The Hub reusing the request’s id
is further confirmation that the event is a result of their request.
The format of the Request Context Change request is presented below.
Field | Optionality | Type | Description |
---|---|---|---|
timestamp |
Required | string | ISO 8601-2 timestamp in UTC describing the time at which the event occurred. |
id |
Required | string | Event identifier, which MAY be used to recognize retried notifications. This id SHALL be uniquely generated by the subscriber and could be a UUID. Following an accepted context change request, the Hub MAY re-use this value in the broadcasted event notifications. |
event |
Required | object | A JSON object describing the event as defined in Event Definition. |
POST https://hub.example.com/7jaa86kgdudewiaq0wtu HTTP/1.1
Host: hub
Authorization: Bearer i8hweunweunweofiwweoijewiwe
Content-Type: application/json
{
"timestamp": "2018-01-08T01:40:05.14",
"id": "wYXStHqxFQyHFELh",
"event": {
"hub.topic": "fdb2f928-5546-4f52-87a0-0648e9ded065",
"hub.event": "patient-close",
"context": [
{
"key": "patient",
"resource": {
"resourceType": "Patient",
"id": "798E4MyMcpCWHab9",
"identifier": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"value": "MR",
"display": "Medication Record Number"
}
"text": "MRN"
]
}
}
]
}
}
]
}
}
HTTP/1.1 202 Accepted