Request
Response
events empty to receive everything. POST /webhooks/{id}/test sends a webhook.test synchronously so you can check your receiver before anything real happens.
What a delivery looks like
data is the same object the API returns for that resource, so one parser serves both.
Verify before you parse
Operational rules
- Respond
2xxwithin a few seconds and process asynchronously. - Deduplicate on
id. Retries resend the same event, and a network blip can deliver one twice. - Anything other than
2xxis retried at 1 min, 5 min, 30 min, 2 h, 6 h, 12 h and 24 h (eight attempts).GET /webhook-deliveriesshows every attempt with the last status code and error;POST /webhook-deliveries/{id}/retryresends on demand. - Rotate a secret with
POST /webhooks/{id}/rotate-secret; the live URL must behttpsand publicly reachable.