This
page
is
part
of
the
FHIR
Specification
(v0.0.82:
(v1.0.2:
DSTU
1).
2).
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
Detailed Descriptions for the elements in the Subscription resource.
| Subscription | |
| Definition |
The subscription resource is used to define a push based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined "channel" so that another system is able to take an appropriate action. |
| Control | 1..1 |
| Alternate Names | WebHook; Hook; Routing Rule |
| Summary | true |
| Subscription.criteria | |
| Definition |
The rules that the server should use to determine when to generate notifications for this subscription. |
| Control | 1..1 |
| Type | string |
| Summary | true |
| Comments |
The
rules
are
a
search
criteria
(without
the
[base]
|
| Subscription.contact | |
| Definition |
Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting. |
| Control | 0..* |
| Type | ContactPoint |
| Summary | true |
| Subscription.reason | |
| Definition |
A description of why this subscription is defined. |
| Control | 1..1 |
| Type | string |
| Summary | true |
| Subscription.status | |
| Definition |
The status of the subscription, which marks the server state for managing the subscription. |
| Control | 1..1 |
| Binding |
SubscriptionStatus:
|
| Type | code |
| Is Modifier | true |
| Summary | true |
| Comments |
A client can only submit subscription resources in the requested or off state. Only the server can move a subscription from requested to active, and then to error. Either the server or the client can turn a subscription off. |
| Subscription.error | |
| Definition |
A record of the last error that occurred when the server processed a notification. |
| Control | 0..1 |
| Type | string |
| Summary | true |
| Subscription.channel | |
| Definition |
Details where to send notifications when resources are received that meet the criteria. |
| Control | 1..1 |
| Summary | true |
| Subscription.channel.type | |
| Definition |
The
type
of
channel
to
send
|
| Control | 1..1 |
| Binding |
SubscriptionChannelType:
|
| Type | code |
| Summary | true |
| Subscription.channel.endpoint | |
| Definition |
The
uri
that
describes
|
| Control | 0..1 |
| Type | uri |
| Summary | true |
| Comments |
For
rest-hook,
and
websocket,
the
|
| Subscription.channel.payload | |
| Definition |
The mime type to send the payload in - either application/xml+fhir, or application/json+fhir. If the mime type is blank, then there is no payload in the notification, just a notification. |
| Control | 1..1 |
| Type | string |
| Summary | true |
| Comments |
Sending the payload has obvious security consequences. The server is responsible for ensuring that the content is appropriately secured. |
| Subscription.channel.header | |
| Definition |
Additional headers / information to send as part of the notification. |
| Control | 0..1 |
| Type | string |
| Summary | true |
| Comments |
Exactly what these mean depend on the channel type. The can convey additional information to the recipient and/or meet security requirements. |
| Subscription.end | |
| Definition |
The time for the server to turn the subscription off. |
| Control | 0..1 |
| Type | instant |
| Summary | true |
| Comments |
The server is permitted to deviate from this time, but should observe it. |
| Subscription.tag | |
| Definition |
A tag to add to any resource that matches the criteria, after the subscription is processed. |
| Control | 0..* |
| Binding | SubscriptionTag: Tags to put on a resource after subscriptions have been sent. ( Example ) |
| Type | Coding |
| Summary | true |
| Comments |
So that other systems can tell which resources have been the subject of a notification. |