Replay a webhook delivery
Replay a webhook delivery in the authenticated project environment.
/v1/webhooks/{endpointId}/deliveries/{deliveryId}/replayRequirements
A secret API key with webhooks:write. Resources are restricted to the key's project and environment.
Path parameters
| Name | Type | Required / default | Description |
|---|---|---|---|
| endpointId | string | Required | ID returned when creating the webhook. |
| deliveryId | string | Required | ID of a delivery for this endpoint. |
Query parameters
| Name | Type | Required / default | Description |
|---|---|---|---|
| projectId | string | Key project | Must match the key's project. |
| environmentId | string | Key environment | Must match the key's environment. |
Request body
| Name | Type | Required / default | Description |
|---|---|---|---|
| expectedReplayCount | integer | Required | The current replayCount, from 0 to 99. |
Example
Set RELAYRTC_API_URL to your API base including /v1, such as http://localhost:8082/v1.
curl -X POST "$RELAYRTC_API_URL/webhooks/webhook_example/deliveries/delivery_example/replay" \
-H "Authorization: Bearer $RELAYRTC_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"expectedReplayCount":0}'Response
202 with the queued delivery, including its incremented replayCount.
{
"id": "delivery_example",
"endpointId": "webhook_example",
"eventId": "event_example",
"projectId": "project_example",
"environmentId": "environment_example",
"url": "https://your-app.example/webhooks/relayrtc",
"status": "pending",
"attemptCount": 0,
"runAttemptCount": 0,
"replayCount": 1,
"lastError": null,
"nextAttemptAt": "2026-01-01T12:00:00.000Z",
"deliveredAt": null,
"runStartedAt": "2026-01-01T12:00:00.000Z",
"createdAt": "2026-01-01T12:00:00.000Z",
"updatedAt": "2026-01-01T12:00:00.000Z"
}Notes
The endpoint must be enabled. The delivery must be succeeded, failed or cancelled and have the expected replay count. Conflicts return 409. Replay preserves event and delivery IDs and starts a new retry budget.
Your receiver must deduplicate by event ID. There are at most 100 explicit replays per delivery.
Errors
Invalid fields return 400. Invalid credentials return 401; a missing scope returns 403. A missing resource returns 404. See error responses.