SubscriptionStatus
L'état courant d'une Subscription FHIR : événements émis, derniers numéros de séquence, statut. Le notification payload type=handshake / heartbeat / event-notification.
Objet de la ressource
SubscriptionStatus est le corps de notification envoyé par le serveur FHIR aux abonnés via WebSocket, REST hook, e-mail ou message. Elle indique le statut actuel de la souscription (handshake initial, heartbeat de vie, notification d'événement, query-event) et porte les ressources liées à l'événement déclenchant. C'est le pendant moderne (R4B/R5) du Subscription FHIR R4 historique.
Champs clés
| Champ | Type | Cardinalité | Rôle |
|---|---|---|---|
status | code | 0..1 | `requested`, `active`, `error`, `off`, `entered-in-error`. |
type | code | 1..1 | `handshake`, `heartbeat`, `event-notification`, `query-status`, `query-event`. |
eventsSinceSubscriptionStart | integer64 | 0..1 | Total d'événements depuis le début. |
notificationEvent | BackboneElement[] | 0..* | Liste des événements transmis. |
subscription | Reference(Subscription) | 1..1 | Subscription rattachée. |
topic | canonical(SubscriptionTopic) | 0..1 | Topic souscrit. |
error | CodeableConcept[] | 0..* | Erreurs détectées. |
Exemple JSON
{
"resourceType": "SubscriptionStatus",
"id": "example-event-notif",
"status": "active",
"type": "event-notification",
"eventsSinceSubscriptionStart": 247,
"notificationEvent": [{
"eventNumber": 247,
"timestamp": "2026-05-15T17:30:00+00:00",
"focus": {
"reference": "Encounter/encounter-001"
}
}],
"subscription": {
"reference": "Subscription/example-sub-001"
},
"topic": "https://example.org/fhir/SubscriptionTopic/admission-discharge"
} Pièges courants
- Type=event-notification sans notificationEvent : payload vide.
- EventsSinceSubscriptionStart non monotone : signe que le serveur a perdu des événements.
- Status='error' sans error : impossible de diagnostiquer.
Ressources liées
- subscription — souscription.
- subscriptiontopic — topic d'événement.
- auditevent — log d'audit.
- messageheader — événement FHIR Messaging.