DSTU2

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

6.15.8 6.14.9 Resource Subscription - Detailed Descriptions

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] part. part). Like Bundle.entry.request.url, it has no leading "/".

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: Required : http://hl7.org/fhir/subscription-status (The The status of a subscription) subscription. ( Required )
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 notififcations notifications on.

Control 1..1
Binding SubscriptionChannelType: Required : http://hl7.org/fhir/subscription-channel-type (The The type of method used to execute a subscription) subscription. ( Required )
Type code
Summary true
Subscription.channel.endpoint
Definition

The uri that describes tha the actual end point end-point to send messages to.

Control 0..1
Type uri
Summary true
Comments

For rest-hook, and websocket, the end point end-point must be an http: or https https: URL; for email, a mailto: url, for sms, a tel: url, and for message the endpoint can be in any form of url the server understands (usually, http: or mllp:). The URI is allowed to be relative; in which case, it is relative to the server end-point (since their may be more than one, clients should avoid using relative URIs).

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.