This page is part of the FHIR Specification (v5.0.0-draft-final: Final QA Preview for R5 - see ballot notes). 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
FHIR Infrastructure Work Group | Maturity Level: 2 | Trial Use | Security Category: Business | Compartments: Not linked to any defined compartments |
Detailed Descriptions for the elements in the Subscription resource.
Subscription | |||||||||
Element Id | Subscription | ||||||||
Definition | The subscription resource describes a particular client's request to be notified about a SubscriptionTopic. | ||||||||
Short Display | Notification about a SubscriptionTopic | ||||||||
Cardinality | 0..* | ||||||||
Type | DomainResource | ||||||||
Alternate Names | WebHook; Hook; Routing Rule | ||||||||
Summary | false | ||||||||
Subscription.identifier | |||||||||
Element Id | Subscription.identifier | ||||||||
Definition | A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance. | ||||||||
Short Display | Additional identifiers (business identifier) | ||||||||
Note | This is a business identifier, not a resource identifier (see discussion) | ||||||||
Cardinality | 0..* | ||||||||
Type | Identifier | ||||||||
Summary | true | ||||||||
Subscription.name | |||||||||
Element Id | Subscription.name | ||||||||
Definition | A natural language name identifying the subscription. | ||||||||
Short Display | Human readable name for this subscription | ||||||||
Cardinality | 0..1 | ||||||||
Type | string | ||||||||
Summary | true | ||||||||
Subscription.status | |||||||||
Element Id | Subscription.status | ||||||||
Definition | The status of the subscription, which marks the server state for managing the subscription. | ||||||||
Short Display | requested | active | error | off | entered-in-error | ||||||||
Cardinality | 1..1 | ||||||||
Terminology Binding | Subscription Status (Required) | ||||||||
Type | code | ||||||||
Is Modifier | true (Reason: This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid) | ||||||||
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. This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid. | ||||||||
Subscription.topic | |||||||||
Element Id | Subscription.topic | ||||||||
Definition | The reference to the subscription topic to be notified about. | ||||||||
Short Display | Reference to the subscription topic being subscribed to | ||||||||
Cardinality | 1..1 | ||||||||
Type | canonical(SubscriptionTopic) | ||||||||
Summary | true | ||||||||
Subscription.contact | |||||||||
Element Id | Subscription.contact | ||||||||
Definition | Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting. | ||||||||
Short Display | Contact details for source (e.g. troubleshooting) | ||||||||
Cardinality | 0..* | ||||||||
Type | ContactPoint | ||||||||
Summary | true | ||||||||
Subscription.end | |||||||||
Element Id | Subscription.end | ||||||||
Definition | The time for the server to turn the subscription off. | ||||||||
Short Display | When to automatically delete the subscription | ||||||||
Cardinality | 0..1 | ||||||||
Type | instant | ||||||||
Summary | true | ||||||||
Comments | The server is permitted to deviate from this time but should observe it. | ||||||||
Subscription.managingEntity | |||||||||
Element Id | Subscription.managingEntity | ||||||||
Definition | Entity with authorization to make subsequent revisions to the Subscription and also determines what data the subscription is authorized to disclose. | ||||||||
Short Display | Entity responsible for Subscription changes | ||||||||
Cardinality | 0..1 | ||||||||
Type | Reference(CareTeam | HealthcareService | Organization | RelatedPerson | Patient | Practitioner | PractitionerRole) | ||||||||
Summary | true | ||||||||
Subscription.reason | |||||||||
Element Id | Subscription.reason | ||||||||
Definition | A description of why this subscription is defined. | ||||||||
Short Display | Description of why this subscription was created | ||||||||
Cardinality | 0..1 | ||||||||
Type | string | ||||||||
Summary | true | ||||||||
Subscription.filterBy | |||||||||
Element Id | Subscription.filterBy | ||||||||
Definition | The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions applicable to that resource are met; otherwise it returns false (i.e., logical AND). | ||||||||
Short Display | Criteria for narrowing the subscription topic stream | ||||||||
Cardinality | 0..* | ||||||||
Summary | true | ||||||||
Invariants |
| ||||||||
Subscription.filterBy.resourceType | |||||||||
Element Id | Subscription.filterBy.resourceType | ||||||||
Definition | A resource listed in the | ||||||||
Short Display | Allowed Resource (reference to definition) for this Subscription filter | ||||||||
Cardinality | 0..1 | ||||||||
Terminology Binding | Types used with Subscriptions (Extensible)
| ||||||||
Type | uri | ||||||||
Summary | true | ||||||||
Subscription.filterBy.filterParameter | |||||||||
Element Id | Subscription.filterBy.filterParameter | ||||||||
Definition | The filter as defined in the | ||||||||
Short Display | Filter label defined in SubscriptionTopic | ||||||||
Cardinality | 1..1 | ||||||||
Type | string | ||||||||
Summary | true | ||||||||
Subscription.filterBy.comparator | |||||||||
Element Id | Subscription.filterBy.comparator | ||||||||
Definition | Comparator applied to this filter parameter. | ||||||||
Short Display | eq | ne | gt | lt | ge | le | sa | eb | ap | ||||||||
Cardinality | 0..1 | ||||||||
Terminology Binding | Search Comparator (Required) | ||||||||
Type | code | ||||||||
Summary | false | ||||||||
Comments | Must be a comparator allowed by the SubscriptionTopic relevant to this Subscription filter. | ||||||||
Invariants |
| ||||||||
Subscription.filterBy.modifier | |||||||||
Element Id | Subscription.filterBy.modifier | ||||||||
Definition | Modifier applied to this filter parameter. | ||||||||
Short Display | missing | exact | contains | not | text | in | not-in | below | above | type | identifier | of-type | code-text | text-advanced | iterate | ||||||||
Cardinality | 0..1 | ||||||||
Terminology Binding | Search Modifier Code (Required) | ||||||||
Type | code | ||||||||
Summary | false | ||||||||
Comments | Must be a modifier allowed by the SubscriptionTopic relevant to this Subscription filter. | ||||||||
Invariants |
| ||||||||
Subscription.filterBy.value | |||||||||
Element Id | Subscription.filterBy.value | ||||||||
Definition | The literal value or resource path as is legal in search - for example, | ||||||||
Short Display | Literal value or resource path | ||||||||
Cardinality | 1..1 | ||||||||
Type | string | ||||||||
Summary | true | ||||||||
Subscription.channelType | |||||||||
Element Id | Subscription.channelType | ||||||||
Definition | The type of channel to send notifications on. | ||||||||
Short Display | Channel type for notifications | ||||||||
Cardinality | 1..1 | ||||||||
Terminology Binding | Subscription Channel Type (Extensible) | ||||||||
Type | Coding | ||||||||
Summary | true | ||||||||
Subscription.endpoint | |||||||||
Element Id | Subscription.endpoint | ||||||||
Definition | The url that describes the actual end-point to send notifications to. | ||||||||
Short Display | Where the channel points to | ||||||||
Cardinality | 0..1 | ||||||||
Type | url | ||||||||
Summary | true | ||||||||
Comments | For rest-hook the end-point must be an | ||||||||
Subscription.parameter | |||||||||
Element Id | Subscription.parameter | ||||||||
Definition | Channel-dependent information to send as part of the notification (e.g., HTTP Headers). | ||||||||
Short Display | Channel type | ||||||||
Cardinality | 0..* | ||||||||
Summary | false | ||||||||
Comments | Exactly what these mean depend on the channel type. They can convey additional information to the server or recipient and/or meet security requirements; for example, support of multiple headers in the outgoing notifications for rest-hook type subscriptions. Note that names are not required to be unique, but channel definitions can impose restrictions. | ||||||||
Subscription.parameter.name | |||||||||
Element Id | Subscription.parameter.name | ||||||||
Definition | Parameter name for information passed to the channel for notifications, for example in the case of a REST hook wanting to pass through an authorization header, the name would be Authorization. | ||||||||
Short Display | Name (key) of the parameter | ||||||||
Cardinality | 1..1 | ||||||||
Type | string | ||||||||
Summary | false | ||||||||
Subscription.parameter.value | |||||||||
Element Id | Subscription.parameter.value | ||||||||
Definition | Parameter value for information passed to the channel for notifications, for example in the case of a REST hook wanting to pass through an authorization header, the value would be | ||||||||
Short Display | Value of the parameter to use or pass through | ||||||||
Cardinality | 1..1 | ||||||||
Type | string | ||||||||
Summary | false | ||||||||
Subscription.heartbeatPeriod | |||||||||
Element Id | Subscription.heartbeatPeriod | ||||||||
Definition | If present, a 'heartbeat' notification (keep-alive) is sent via this channel with an interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. | ||||||||
Short Display | Interval in seconds to send 'heartbeat' notification | ||||||||
Cardinality | 0..1 | ||||||||
Type | unsignedInt | ||||||||
Summary | true | ||||||||
Subscription.timeout | |||||||||
Element Id | Subscription.timeout | ||||||||
Definition | If present, the maximum amount of time a server will allow before failing a notification attempt. | ||||||||
Short Display | Timeout in seconds to attempt notification delivery | ||||||||
Cardinality | 0..1 | ||||||||
Type | unsignedInt | ||||||||
Summary | true | ||||||||
Subscription.contentType | |||||||||
Element Id | Subscription.contentType | ||||||||
Definition | The MIME type to send the payload in - e.g.,
| ||||||||
Short Display | MIME type to send, or omit for no payload | ||||||||
Cardinality | 0..1 | ||||||||
Terminology Binding | Mime Types (Required) | ||||||||
Type | code | ||||||||
Summary | true | ||||||||
Subscription.content | |||||||||
Element Id | Subscription.content | ||||||||
Definition | How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. | ||||||||
Short Display | empty | id-only | full-resource | ||||||||
Cardinality | 0..1 | ||||||||
Terminology Binding | Subscription Payload Content (Required) | ||||||||
Type | code | ||||||||
Summary | true | ||||||||
Comments | Sending the payload has obvious security implications. The server is responsible for ensuring that the content is appropriately secured. | ||||||||
Subscription.maxCount | |||||||||
Element Id | Subscription.maxCount | ||||||||
Definition | If present, the maximum number of events that will be included in a notification bundle. Note that this is not a strict limit on the number of entries in a bundle, as dependent resources can be included. | ||||||||
Short Display | Maximum number of events that can be combined in a single notification | ||||||||
Cardinality | 0..1 | ||||||||
Type | positiveInt | ||||||||
Summary | true |