The WebhookDelivery object

Represents a single attempt to deliver a webhook event to one of your endpoints. Every attempt — successful or failed — is recorded, including the request payload, the response your endpoint returned, and any retry metadata.

Use these records to debug webhook integrations and to replay events after fixing a bug in your handler.

Attributes

stringOptional

Unique identifier of the form whd_….

stringOptional

Always "webhook_delivery".

stringOptional

ID of the underlying event (e.g. evt_…). The same event can have many delivery attempts.

stringOptional

Type of the event being delivered, e.g. deposit.completed.

stringOptional

The URL the delivery targeted.

integerOptional

Attempt number, starting at 1.

enumOptional

pending, succeeded, failed, or exhausted.

integer | nullOptional

HTTP status returned by your endpoint. null for connection failures.

string | nullOptional

First 8KB of your endpoint's response body, for debugging.

integer | nullOptional

How long your endpoint took to respond.

integer | nullOptional

Unix timestamp of the next scheduled retry. null once exhausted or succeeded.

booleanOptional

Environment flag.

integerOptional

Unix timestamp the attempt was made.

Endpoints

The WebhookDelivery object
{
"id": "whd_01HXZ12345ABCDEFGHJKMNPQRS",
"object": "webhook_delivery",
"event_id": "evt_01HXYZ7M2P5RT4VG3K8AQWE9FN",
"event_type": "deposit.completed",
"endpoint_url": "https://example.com/webhooks/aeses",
"attempt": 2,
"status": "succeeded",
"response_status": 200,
"response_body": "ok",
"response_duration_ms": 142,
"next_attempt_at": null,
"livemode": true,
"created_at": 1731600190
}