Webhook endpoints
Resend a delivery
Send the delivery's event to its endpoint again now, as a new delivery (one attempt), and return it.
POST
/v1/webhook_deliveries/{id}/retryscope webhooks:managePath parameters
idstringrequiredDelivery ID (
wdl_…).
Headers
ZyloPay-VersionstringPin the request to an API version (2026-09-28). Defaults to the version the API key was created with.
Idempotency-KeystringRecommended. A unique key per operation (a UUID v4); retries with the same key and body return the first response.
Returns
HTTP 200 with the webhook delivery object.
Errors
| Status | Meaning |
|---|---|
400 | Invalid request (invalid_request_error / idempotency_error). |
401 | Missing, invalid, expired or revoked API key (authentication_error). |
403 | The key lacks the scope, the IP is not allowed, or the account is disabled (permission_error). |
409 | Conflict: idempotency key reused or in progress, or the object is in the wrong state. |
429 | Rate limit reached for this key (rate_limit_error); see Retry-After. |
500 | Internal error (api_error). Retry with the same Idempotency-Key. |
Branch on error.code. Every code is listed in error codes.
Example request
curl https://zylopay-api.fly.dev/api/v1/webhook_deliveries/wdl_8Tq3Zm1Xk6Pv9Rw2Lb4Ns7Hd/retry \
-X POST \
-H "Authorization: Bearer $ZYLOPAY_SECRET_KEY" \
-H "Idempotency-Key: $(uuidgen)"Example response
{
"id": "wdl_6Ns1Hd4Lb7Rw2Pv9Xk3Zm8Tq",
"object": "webhook_delivery",
"livemode": false,
"endpoint": "we_2Lk9Qm4Xz7Pv1Rt8Wb3Ns6Hd",
"event": "evt_7Hq2Zp9LwK4mXr8Vb3Ns1Td5",
"event_type": "payment.succeeded",
"status": "succeeded",
"attempts": 1,
"manual": true,
"next_attempt_at": null,
"last_attempt_at": "2026-09-28T16:00:00.000Z",
"last_status_code": 200,
"last_error": null,
"created": "2026-09-28T16:00:00.000Z",
"completed_at": "2026-09-28T16:00:00.000Z"
}