Documentation
Sign inGet started

Send a test event

POST
/v1/webhooks/{webhook_id}/test
curl -X POST "https://us1.platform.bird.com/v1/webhooks/{webhook_id}/test" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "event_type": "email.delivered"
  }'
Sends a synthetic, fully-signed test event directly to the endpoint and returns the outcome synchronously. Use this to verify your endpoint is reachable and your signature verification is correct. The response reports whether your endpoint accepted the event, the HTTP status it returned, and the round-trip latency — an unreachable endpoint is reported in the response body, not as a request error.
Treść żądania
event_type
string
Event type to simulate. Defaults to a generic test ping if omitted.
Treść odpowiedzi
status
string
wymagane
Whether your endpoint accepted the test event. delivered means it returned a 2xx status; failed means it returned a non-2xx status or could not be reached.
response_status_code
nullable integer
wymagane
HTTP status returned by your endpoint. Null when no response was received (timeout, connection error, DNS failure).
response_body
string
Response body returned by your endpoint, truncated when oversized. Empty when no body was returned.
response_duration_ms
integer
wymagane
Round-trip delivery latency in milliseconds.
event_payload
object
The event body Bird delivered to the endpoint. Set on successful test delivery only.
Pokaż atrybuty podrzędne
event_payload.type
string
wymagane
Event type.
event_payload.timestamp
string
wymagane
Time the non-delivery was recorded.
event_payload.data
object
wymagane
Payload of the sms.undelivered event.
Pokaż atrybuty podrzędne
event_payload.data.sms_id
string
wymagane
ID of the SMS message.
event_payload.data.workspace_id
string
wymagane
ID of the workspace.
event_payload.data.to
string
wymagane
Recipient phone number in E.164 format.
event_payload.data.from
string
wymagane
Sender the message was sent from — an E.164 number, an alphanumeric sender ID, or a short code.
event_payload.data.tags
nullable array
wymagane
Tags provided on the send request, echoed on every event for the message so you can route and correlate without an extra lookup. Null when the message carried no tags.
event_payload.data.metadata
nullable object
wymagane
The metadata object provided on the send request, echoed on every event for the message so you can correlate events with your own records. Null when the message carried no metadata.
event_payload.data.error
nullable object
wymagane
Why the message was not delivered.
Pokaż atrybuty podrzędne
event_payload.data.error.code
string
wymagane
Bird-stable failure reason. invalid_destination — the number is not assigned, ported out, or malformed. unreachable — handset off or out of coverage. blocked_by_carrier — the carrier filtered the message. blocked_by_recipient — the recipient device blocked the sender. landline_unreachable — the destination is a landline that does not accept SMS. content_rejected — the carrier rejected the content. sender_unregistered — the sender is not registered for the destination. recipient_opted_out — the recipient is on a suppression list. provider_unavailable — an upstream failure after retries. unknown — an unmapped failure.
event_payload.data.error.description
string
wymagane
Human-readable explanation of the failure.
event_payload.data.error.carrier_error_code
nullable string
Raw carrier-supplied error code, when available, for low-level debugging.
event_payload.data.error.occurred_at
string
wymagane
When the failure occurred.
error
string
A short explanation of why the event could not be delivered. Present only when your endpoint could not be reached.