Webhooks
Subscribe to events, verify signed deliveries and diagnose failed attempts without exposing participant answers in webhook payloads.
Read the implementation guideList webhook endpoints
/v1/webhooksEvery webhook endpoint in the organization, oldest first, each with the outcome of its most recent delivery. Signing secrets are never returned here. only endpoint creation and secret rotation ever show one.
Create a webhook endpoint
/v1/webhooksCreates a webhook endpoint and returns its signing secret. the only time the secret is ever shown in full. At most 10 active endpoints are allowed per organization.
List available webhook events
/v1/webhooks/eventsThe full catalog of events an endpoint can subscribe to, with a one-line description of each. the same list the dashboard's "Add endpoint" dialog reads. Never includes "ping", which a test send delivers but no endpoint can subscribe to.
Update a webhook endpoint
/v1/webhooks/{id}Updates an endpoint's URL, subscribed events, or active flag. Omitted fields are left alone, and events is replaced wholesale rather than merged. Setting active: false pauses delivery without losing the endpoint's secret or its history.
Delete a webhook endpoint
/v1/webhooks/{id}Deletes an endpoint and its whole delivery history. Anything still queued for it stops. To pause an endpoint while keeping its history, PATCH it with active: false instead.
Rotate a webhook signing secret
/v1/webhooks/{id}/rotate-secretReplaces the endpoint's signing secret and returns the new one. the only time it is ever shown in full. The old secret stops verifying immediately.
List webhook delivery attempts
/v1/webhooks/{id}/deliveriesThis endpoint's delivery history, newest first: one row per delivery with its status, how many attempts it has taken, the last response code seen, and when the next attempt is due. nextAttemptAt is null once a delivery is completed or failed. a terminal delivery has no next attempt. Page with cursor.
Replay a webhook delivery
/v1/webhooks/deliveries/{deliveryId}/replayReplays a past delivery as a brand-new one against the same endpoint, event, and payload data. its own id and a fresh attempt history.
Send a webhook test ping
/v1/webhooks/{id}/testSends a synthetic "ping" delivery to this endpoint, regardless of its subscribed events, so a caller can confirm the endpoint is reachable and its signature verifies. Limited to 10 calls per minute per key.
Before you connect
Use the scopes shown on each endpoint. Read the response schema and common errors, and keep mutations separate from diagnostic read requests.
AuthenticationError handlingOpenAPI contract