Test a webhook
Sends a test event to the specified webhook endpoint to verify connectivity. A version 1 webhook is tested at once and the answer says whether it was delivered; a version 2 webhook's test is queued with Svix, which delivers it right after, and the answer says it was queued.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v3/webhooks/d4f5a6b7-c8d9-4e0f-a1b2-c3d4e5f6a7b8/test" \ -H "Idempotency-Key: req_abc123_retry1" \ -H "Content-Type: application/json" \ -d '{ "event_type": "message.sent", "sandbox": false }'{
"success": true,
"data": {
"success": true,
"message": "Test event delivered successfully"
},
"error": null,
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-11-05T15:14:26.5577755+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "VALIDATION_001",
"message": "Event type is required",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-11-05T15:14:26.5577783+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "RESOURCE_008",
"message": "Webhook not found",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-11-05T15:14:26.5577787+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "INTERNAL_001",
"message": "An unexpected error occurred while testing the webhook",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-11-05T15:14:26.5577791+00:00",
"version": "v3"
}
}Rotate webhook signing secret POST
Generates a new signing secret for the specified webhook. The old secret is immediately invalidated.
Get webhook events GET
Retrieves a paginated list of delivery events for the specified webhook. If the webhook is cloned onto your sender profiles, the list includes what those clones received; read payload.account_id to tell whose event it is.