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.
Cuerpo de la solicitud
event_type
string
Event type to simulate. Defaults to a generic test ping if omitted.
Carga de respuesta
status
string
obligatorio
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
obligatorio
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
obligatorio
Round-trip delivery latency in milliseconds.
event_payload
object
The event body Bird delivered to the endpoint. Set on successful test delivery only.
Mostrar atributos secundarios
event_payload.type
string
obligatorio
Event type.
event_payload.timestamp
string
obligatorio
Time the non-delivery was recorded.
event_payload.data
object
obligatorio
Payload of the sms.undelivered event.
Mostrar atributos secundarios
event_payload.data.sms_id
string
obligatorio
ID of the SMS message.
event_payload.data.workspace_id
string
obligatorio
ID of the workspace.
event_payload.data.to
string
obligatorio
Recipient phone number in E.164 format.
event_payload.data.from
string
obligatorio
Sender the message was sent from — an E.164 number, an alphanumeric sender ID, or a short code.
event_payload.data.tags
nullable array
obligatorio
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
obligatorio
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
obligatorio
Why the message was not delivered.
Mostrar atributos secundarios
event_payload.data.error.code
string
obligatorio
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
obligatorio
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
obligatorio
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.