Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.offthehook.dev/llms.txt

Use this file to discover all available pages before exploring further.

Use this endpoint to re-queue an event that failed after exhausting all automatic retry attempts. Retrying resets the attempts counter to 0 and restarts the full retry schedule from the beginning, as if the event were being delivered for the first time.

Request

POST /v1/subscriptions/:id/events/:eventId/retry
No request body is required.

Path parameters

id
string
required
The subscription ID (e.g. sub_2QkP9aB7xN...).
eventId
string
required
The event ID to re-queue (e.g. evt_8xN9kP2QbA...).
curl -X POST https://api.offthehook.dev/v1/subscriptions/sub_2QkP9aB7xN.../events/evt_8xN9kP2QbA.../retry \
  -H "Authorization: Bearer oth_YOUR_API_KEY"

Response

200 OK — the updated EventView with status: "pending" and attempts reset to 0.
{
  "id": "evt_8xN9kP2QbA...",
  "subscriptionId": "sub_2QkP9aB7xN...",
  "kind": "wallet.transfer.broadcasted",
  "chainId": "tron:mainnet",
  "status": "pending",
  "attempts": 0,
  "deliveryCount": 0,
  "responseStatus": 503,
  "responseBody": "Service Unavailable",
  "payload": { "id": "evt_8xN9kP2QbA...", "kind": "wallet.transfer.broadcasted", "date": "...", "data": {} },
  "dateCreated": "2026-05-08T12:34:56Z"
}
Before retrying, confirm your endpoint is returning a 2xx response and that signature verification is working correctly. If neither is fixed, the event will fail again after running through the full automatic retry schedule: 200ms → 1s → 5s → 1m → 5m → 30m → 2h.

Errors

CodeHTTPDescription
not_found404The event ID does not exist, does not belong to the given subscription, or the subscription belongs to a different API key.
unauthorized401The Authorization header is missing or the key is invalid.