๐ช Webhooks
Outbound webhooks for workspace events. Receive HTTP POSTs at your endpoint when a patient is created, an appointment is scheduled, a SOAP note is signed, etc.
๐ก Event Catalog
patient.created/patient.updatedappointment.created/appointment.cancelled/appointment.completedsoap_note.signedclaim.submitted/claim.paid/claim.deniedmail.receivedmeeting.started/meeting.endedauth.signed_in(admin-only)break_glass.invoked(always sent + admin-emailed)

๐ Signing
- Every payload signed with HMAC-SHA256 over the body using the workspaceโs webhook secret.
- Signature delivered in
X-Synalux-Signatureheader โ verify in your endpoint to reject spoofs. - Timestamp in
X-Synalux-Timestampheader โ reject if older than 5 minutes (replay protection).
๐ Delivery
- Retry policy: exponential backoff (1m, 5m, 30m, 2h, 12h) for non-2xx responses.
- Dead-letter queue after 5 failures โ admin gets an email + the failed event surfaces in the workspace inbox.
- Idempotency โ every event has a stable
event_idyou can use as a deduplication key. - Inbound webhooks for messaging providers (Telegram / WhatsApp / Viber / SMS / Messenger / Instagram) live at
/api/v1/<provider>/webhookโ see each provider page.
๐๏ธ Architecture
POST /api/v1/admin/webhooks Configure outbound endpoints (admin)
GET /api/v1/admin/webhooks List configured endpoints
DELETE /api/v1/admin/webhooks/:id Remove
GET /api/v1/admin/webhooks/:id/deliveries Recent delivery attempts (success / fail / status)
POST /api/v1/admin/webhooks/:id/replay/:event_id Manual replay of a failed delivery๐ณ Plans
Available on Advanced+ for outbound; inbound webhooks for messaging providers ship on Standard+.