API reference

Webhooks

Delivery targets and the history. Needs its own scope webhooks:manage — whoever can change targets can redirect the event stream.

Operations

OperationWhat it doesScope
GET/v1/webhooks/endpointsYour webhook endpoints — never the signing secretwebhooks:manage
POST/v1/webhooks/endpointsAdd an endpoint — the signing secret comes back once and never againwebhooks:manage
PATCH/v1/webhooks/endpoints/{id}Change url, events, description or statuswebhooks:manage
DELETE/v1/webhooks/endpoints/{id}Remove an endpoint and its delivery historywebhooks:manage
POST/v1/webhooks/endpoints/{id}/rotate-secretIssue a new signing secret without losing an eventwebhooks:manage
POST/v1/webhooks/endpoints/{id}/testSend a sample delivery to prove the pathwebhooks:manage
GET/v1/webhooks/deliveriesEvery delivery, newest first — status, code and last errorwebhooks:manage
GET/v1/webhooks/deliveries/{id}One delivery with every attempt: request, response, status codewebhooks:manage
POST/v1/webhooks/deliveries/{id}/retrySend it again now — allowed after the automatic attempts ran outwebhooks:manage

A key that lacks one of these scopes is refused with 403 insufficient_scope, and error.missingScope names the one it was missing. Scopes are fixed when the key is issued.

Shared across these operations

The error envelope and the full list of error types are the same for every operation in the API, as are the object schemas the responses are built from. Neither is repeated per page.