Webhooks
Send a `ping` event to the endpoint and wait up to 10 s for its answer
POST /v1/webhooks/{id}/test: Send a `ping` event to the endpoint and wait up to 10 s for its answer
POST /v1/webhooks/{id}/test
| Operation id | testWebhook |
| Key scope | admin: admin keys only |
| Section | Webhooks |
#Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | pattern ^whk_[0-9a-hjkmnp-tv-z]{26}$ |
#Example request
curl -X POST "https://api.kaab.ist/v1/webhooks/{id}/test" \
-H "Authorization: Bearer $KAAB_API_KEY"
#Responses
#200
Delivery
{
"id": "dlv_01j9zqk3q7m4n5p6r7s8t9v0wx",
"object": "webhook_delivery",
"endpoint_id": "whk_01j9zqk3q7m4n5p6r7s8t9v0wx",
"event_id": "evt_01j9zqk3q7m4n5p6r7s8t9v0wx",
"event_type": "job.needs_attention",
"origin": "planned",
"attempt": 2,
"status": "pending",
"response_code": 500,
"response_ms": 1200,
"response_body": "upstream exploded",
"error": "http_500",
"next_retry_at": "2026-09-18T10:05:00Z",
"last_attempt_at": "2026-09-18T10:00:01Z",
"created_at": "2026-09-18T10:00:00Z"
}
#Errors
Every error answers with the error envelope; its code is one of the error codes.
| Status | When |
|---|---|
| 400 | request_invalid: request validation failed |
| 401 | Missing or invalid API key |
| 402 | insufficient_credits: top up to continue |
| 403 | The key's scope does not cover this operation |
| 404 | Resource not found |
| 409 | Conflicting state (see error.code) |
| 422 | Semantically invalid request (see error.code) |
| 429 | Rate limited; see Retry-After |
| 500 | internal: unexpected server error |