Retry (resend) a webhook delivery
Manually re-send a past delivery - the manual counterpart to the automatic 12-attempt retry. A new delivery attempt is created for the SAME event: it carries the same webhook-id (event id) as the original, so an idempotent receiver de-duplicates it against the first delivery. The original delivery record is never modified. Works on any endpoint status; retrying a disabled endpoint records the attempt but does not re-enable it (re-enable via PATCH first). Scope: webhooks:manage. Send an Idempotency-Key. Rate limit: 10 retries per endpoint per minute.
Authorizations
Your secret API key as a Bearer token: Authorization: Bearer vxn_sk_.... Keys are created and scoped in the dashboard - see Authentication.
Headers
Required on every mutating POST. See Idempotency.
8 - 255Path Parameters
Response
Retry accepted - a new delivery attempt (same event id) has been queued.
One delivery attempt record. Retained 90 days. High-volume listing: one row per attempt including retries. We store the response STATUS CODE only. No response headers, no response body bytes, and no request-body hash are retained, by design: see the privacy note in the Webhooks guide. Each attempt records its number, timestamp, status code, error string and duration. Replay is available over the API: POST /v1/webhook_endpoints/{id}/deliveries/{delivery_id}/retry. There is intentionally no single-delivery GET-by-id endpoint - list + retry only.
The locked v1 event catalog - 22 events across 9 subjects. Names follow resource.action with past-participle actions (transaction.created), never the dotted verb-stems used by transaction types - the two vocabularies never mix. product.created/product.updated fire for dashboard and API-created catalog changes; POS-synced catalog changes do not emit (they mirror the till, and a first sync would flood your endpoint).
customer.created, customer.updated, customer.deleted, customer.pass_installed, customer.pass_uninstalled, card.created, card.updated, card.deleted, custom_field.created, custom_field.updated, custom_field.deleted, product.created, product.updated, transaction.created, transaction.reversed, notification.sent, notification.delivery_updated, location.updated, team_member.added, team_member.updated, team_member.removed, webhook_endpoint.delivery_failed "transaction.created"