Skip to main content
POST
Send a test event

Authorizations

Authorization
string
header
required

An API key from Settings → API keys, sent as Authorization: Bearer kb_live_…. A workspace key starts kb_; a personal key starts kbp_ and acts as its owner.

Headers

Idempotency-Key
string
required

A unique key (a UUID works) for this request. Retrying with the same key returns the first answer instead of running twice.

Maximum string length: 255
Kallabot-Version
enum<string>

The API version to answer as, a date (YYYY-MM-DD). Leave it out for the current version (2026-11-07). An unknown version is refused with 400 unsupported_api_version.

Available options:
2026-11-07
Example:

"2026-11-07"

Path Parameters

endpoint_id
string
required

Body

application/json
event_type
string | null

Send this event type's sample payload. Omit for a plain webhook.test.

Maximum string length: 80

Response

Successful Response

id
string
required

The delivery id (whd_… for tests).

event_id
string
required

The event's id; the same across retries, so receivers can dedupe.

endpoint_id
string
required

The endpoint it goes to.

status
enum<string>
required

Where it stands.

Available options:
pending,
retrying,
delivered,
dead,
canceled
attempt_count
integer
required

Tries so far.

is_test
boolean
required

True for a test event.

created_at
string | null
required

When it was queued.

event_type
string
required

The event type.

url
string
required

The endpoint URL at the time.

body
Body · object
required

The exact JSON body sent (signatures are in headers, not here).

attempts
WebhookDeliveryAttempt · object[]
required

Every try, oldest first.

last_attempt_at
string | null

The latest try.

delivered_at
string | null

When your endpoint accepted it.

next_attempt_at
string | null

When the next retry is due.

last_error
string | null

The latest failure, readable.

response_status
integer | null

Your endpoint's latest HTTP status.

duration_ms
integer | null

The latest try's duration.

replay_of
string | null

The delivery this re-sends, if any.

api_version
string | null

The payload version it was sent as.

occurred_at
string | null

When the event happened.

endpoint_name
string | null

The endpoint's label.