Use FHIR subscriptions to receive webhook notifications when patient data changes

domain: fhir · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Check the server's CapabilityStatement for subscription support; in FHIR R4 use the Subscription resource; in FHIR R4B/R5 the SubscriptionTopic resource provides more structured event definitions.
  2. Create a Subscription resource via POST [base]/Subscription with criteria specifying the resource type and optional filter (e.g., 'Observation?patient=[id]&code=http://loinc.org|[code]'), channel.type of 'rest-hook', and channel.endpoint set to your HTTPS webhook URL.
  3. Include channel.header with an Authorization header value your webhook endpoint will validate to authenticate incoming notifications from the FHIR server.
  4. The server sends HTTP POST notifications to your endpoint when matching resources change; the notification body may be a minimal ping (empty Bundle), the changed resource, or a full payload depending on server configuration and Subscription.channel.payload setting.
  5. Respond to webhook notifications with HTTP 200 within a few seconds; if processing takes longer, acknowledge immediately and process asynchronously to avoid notification retries.
  6. Handle subscription lifecycle: check Subscription.status (requested → active → error); the server may transition to 'error' if your endpoint is unreachable; re-create or reactivate subscriptions after downtime.

Known gotchas

Related routes

Set up a FHIR topic-based Subscription with a rest-hook channel for change notifications
healthcare-fhir · 6 steps · unrated
Implement FHIR R4 topic-based Subscriptions (R5 backport) to receive real-time notifications when specific resource changes occur, using a REST-hook channel
hl7.org/fhir · 5 steps · unrated
implement FHIR Subscriptions for change notifications (R4 channel-based vs R4B/R5 topic-based differences)
fhir · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans