RinghouseAPI reference
Get started

Webhooks

Retry delivery

Send one delivery again, with the same webhook-id so a receiver that already has it can ignore it.

POST/v1/webhooks/{webhook_id}/deliveries/{delivery_id}/retry

Needs the webhooks:write scope.

Path parameters

webhook_idstringrequired
Webhook id
delivery_idstringrequired
Delivery id, as sent in webhook-id

Returns

The delivery, due again. A failed call answers with an error instead.

idstring
The `webhook-id` header it was sent with.
attemptsinteger
createdAtstring
deliveredAtstringnullable
eventstring
lastErrorstringnullable
Why the last attempt failed; kept while it is retried.
nextAttemptAtstringnullable
Null once it has settled.
payloadobject
responseMsintegernullable
How long the latest try took, answered or not.
responseStatusintegernullable
The HTTP status the latest try got back; null when it never answered.
statusDeliveryStatus
Where a delivery stands: still being tried, arrived, or given up on.
curl -X POST https://api.ringhouse.ai/v1/webhooks/{webhook_id}/deliveries/{delivery_id}/retry \
  -H "Authorization: Bearer rh_live_xxxxxxxx"
{
  "id": "8c1d4e7a-5b2f-4a90-9e1c-3f7d2b6a1c08",
  "attempts": 1,
  "createdAt": "2026-09-25T14:02:11Z",
  "deliveredAt": "2026-09-25T14:05:16Z",
  "event": "call.missed",
  "lastError": null,
  "nextAttemptAt": null,
  "payload": {
    "id": "0f6e2d1c-9a8b-4e7f-b3c2-1d0e9f8a7b6c",
    "type": "call.missed",
    "apiVersion": "2026-09-25",
    "createdAt": "2026-09-25T14:02:11Z",
    "data": {
      "id": "4b1a8d2e-6c3f-47b9-8e05-d91a2c7f6b34"
    }
  },
  "responseMs": 142,
  "responseStatus": 200,
  "status": "delivered"
}