Skip to main content
Webhook event is sent when an external HIP pushes encrypted health data to your HIU. The Health Information User (HIU) can initiate a consent request through the Consent-API to get care context data. Once consent is validated, the Health Information Provider (HIP) sends the encrypted health data to the HIU.

Large pushes

A webhook has a size limit, and a single HIP push can be larger than that. Every entry therefore carries a content_ref, and when the webhook would be too large, content is sent as an empty string for some entries. What to do when you receive this webhook:
  1. For each entry in data.entries, check content.
  2. If content is empty, fetch the entry with the Fetch data push entry API, passing data.transaction_id and the entry’s content_ref.
  3. Decrypt content with key_information and your private key, whether it came inline or from the API, and verify checksum.
An entry can be fetched for 15 minutes after the webhook is sent. After that it is deleted and the API returns 404, so fetch entries as soon as you receive the webhook.
We recommend fetching every entry through the Fetch data push entry API. Inline content may be removed from this webhook in a future version.

Request

Headers: Body:

Field Descriptions

  • data: Contains additional details related to the event.
    • consent_id: Consent id for the data transfer
    • transaction_id: Transaction id for the data flow. Use this one, not the top-level transaction_id, when calling the Fetch data push entry API.
    • entries: List of care contexts with encrypted fhir data
      • care_context_id The care context this entry belongs to.
      • checksum Checksum of the plain-text FHIR data, to verify after decryption.
      • content The encrypted FHIR data. Empty when the entry did not fit in the webhook; see Large pushes.
      • media Media type of the decrypted data, application/fhir+json.
      • content_ref Reference to fetch this entry with the Fetch data push entry API. Always present. Valid for 15 minutes after the webhook is sent.
    • key_information : Contains the cryptographic key material and related parameters required for secure ECDH-based key exchange between HIU and HIP.
      • crypto_alg The cryptographic algorithm used for key exchange (e.g., “ECDH”).
      • curve The elliptic curve used in ECDH key generation (e.g., “Curve25519”, “P-256”).
      • dh_public_key Object containing the HIU’s public key and related metadata:
        • expiry The expiration timestamp (in ISO 8601 format) indicating how long the public key is valid.
        • parameters Additional parameters related to the ECDH key (optional or curve-specific).
        • key_value The base64-encoded public key value generated by the HIU.
      • nonce A 32-byte random nonce (Base64-encoded) generated by the HIU, used to ensure uniqueness in the session key derivation.