Skip to content

Replay

Replay any past event to re-deliver it to the target endpoint.

Replay Event

POST /api/v1/events/:id/replay

How It Works

  1. The original event's payload is retrieved from R2
  2. A new event is created with status QUEUED
  3. The original event is marked REPLAYED (terminal state)
  4. The new event goes through the normal delivery pipeline

Response

HTTP 200 OK
json
{
  "id": "evt_new123...",
  "status": "QUEUED",
  "message": "Event replayed"
}

Use Cases

  • Downstream recovery: Your endpoint was down and missed events — replay them once it's back up
  • Bug fixes: You fixed a bug in your webhook handler — replay events to re-process them
  • Testing: Replay production events to a staging endpoint for testing

Limitations

  • Only events that have reached a terminal state (DELIVERED, EXPIRED, REPLAYED) are guaranteed to be replayable
  • Events still in the delivery pipeline (QUEUED, PROCESSING, RETRYING) may return an error
  • The payload is fetched from R2 — if the payload was deleted, replay will fail

Released under the MIT License.