Read a webhook delivery
Read a webhook delivery in the authenticated project environment.
GET
/v1/webhooks/{endpointId}/deliveries/{deliveryId}Requirements
A secret API key with webhooks:read. 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. |
Example
Set RELAYRTC_API_URL to your API base including /v1, such as http://localhost:8082/v1.
curl -X GET "$RELAYRTC_API_URL/webhooks/webhook_example/deliveries/delivery_example" \
-H "Authorization: Bearer $RELAYRTC_SECRET_KEY"Response
200 with delivery fields, the complete event, original rawBody and attempts.
{
"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": 0,
"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",
"event": {
"id": "event_example",
"type": "room.ended",
"projectId": "project_example",
"environmentId": "environment_example",
"occurredAt": "2026-01-01T12:00:00.000Z",
"data": {
"roomId": "room_example"
}
},
"rawBody": "{\"id\":\"event_example\",\"type\":\"room.ended\",\"projectId\":\"project_example\",\"environmentId\":\"environment_example\",\"occurredAt\":\"2026-01-01T12:00:00.000Z\",\"data\":{\"roomId\":\"room_example\"}}",
"attempts": []
}Notes
Treat logged event data as sensitive application data. rawBody is the full original event JSON. See event fields.
Errors
Invalid fields return 400. Invalid credentials return 401; a missing scope returns 403. A missing resource returns 404. See error responses.