WebhookEndpoint

Create Webhook Endpoint

Changed on

Registers a URL to receive events for every integration tied to this partner. There is no per-endpoint event filter — a registered endpoint receives the full set of events the partner's integrations emit. Each event is delivered as POST <webhook_url> with a JSON body shaped like:

{
  "id":          "evt-...",
  "type":        "patient.created",
  "practice_id": "prc-...",
  "created_at":  "2026-05-26T14:23:00.000Z",
  "object":      { ...full resource snapshot... }
}

The object field carries the resource snapshot; its shape matches the corresponding GET /api/provider/<resource>/:id response. Each request carries an X-Hint-Signature: sha256=<hmac> header — HMAC-SHA256 of the raw request body, keyed by the partner's webhook signature key (Partner Portal → API Keys → Webhooks Signature Key, mirrored to the HINT_WEBHOOK_SECRET env var on Hosted Mode deploys). Endpoints should compute the expected signature themselves and reject requests whose signature doesn't match. Discover the current event-type list at GET /partner/webhook_events — it returns the resource.action strings your pinned API version publishes. Implementations should ignore unknown event types; new resource/action pairs may be added without a version bump.

post/partner/webhook_endpoints

Request

  • Base URL
    https://api.sandbox.hint.com/api
  • URL
    https://api.sandbox.hint.com/api/partner/webhook_endpoints
  • Auth
    API key in header AUTHORIZATION

Request body

webhook_urlstring required

HTTPS URL that will receive event payloads. The endpoint must respond with a 2xx within ~10 s; non-2xx responses are retried with backoff and surfaced via last_delivered_at + WebhookRequest.

backendstring

The owning backend's public id (pbnd-...). Omit to register the endpoint on the partner's default backend.

Response

Successful response

idstring
created_atstring
last_delivered_atstring
updated_atstring
webhook_urlstring

Changes