curl --request GET \
--url https://api.quo.com/webhooks/{webhookId}/events \
--header 'Authorization: <api-key>' \
--header 'Quo-Api-Version: <quo-api-version>'{
"data": [
{
"id": "msg_2abcDEFghiJKLmnoPQRstu",
"eventId": "2abcDEFghiJKLmnoPQRstu45",
"resourceId": "ACsampleactivity0000000000000000",
"eventType": "message.received",
"status": "success",
"nextAttemptAt": "2026-01-01T00:05:00Z",
"createdAt": "2026-01-01T00:00:00Z"
}
],
"nextCursor": "eyJsYXN0SWQiOiJVU211a09NaXBhIn0"
}{
"message": "/webhookId: Expected string to match '^[0-9]+$'",
"docs": "https://quo.com/docs",
"title": "Bad Request",
"errors": [
{
"path": "/webhookId",
"message": "Expected string to match '^[0-9]+$'",
"value": "abc123",
"schema": {
"type": "String",
"pattern": "^[0-9]+$"
}
}
]
}{
"message": "You are unauthorized to access the webhook",
"docs": "https://quo.com/docs",
"title": "Unauthorized"
}{
"message": "You are forbidden to access the webhook",
"docs": "https://quo.com/docs",
"title": "Forbidden"
}{
"message": "Webhook with ID 123 not found",
"docs": "https://quo.com/docs",
"title": "Not Found"
}{
"message": "An unknown error occurred",
"docs": "https://quo.com/docs",
"title": "Unknown Error"
}List deliveries for a webhook
List deliveries for a webhook, including their delivery, event, and resource identifiers. Deliveries are sorted by createdAt descending, newest first. Use resourceId to find deliveries for a business object.
curl --request GET \
--url https://api.quo.com/webhooks/{webhookId}/events \
--header 'Authorization: <api-key>' \
--header 'Quo-Api-Version: <quo-api-version>'{
"data": [
{
"id": "msg_2abcDEFghiJKLmnoPQRstu",
"eventId": "2abcDEFghiJKLmnoPQRstu45",
"resourceId": "ACsampleactivity0000000000000000",
"eventType": "message.received",
"status": "success",
"nextAttemptAt": "2026-01-01T00:05:00Z",
"createdAt": "2026-01-01T00:00:00Z"
}
],
"nextCursor": "eyJsYXN0SWQiOiJVU211a09NaXBhIn0"
}{
"message": "/webhookId: Expected string to match '^[0-9]+$'",
"docs": "https://quo.com/docs",
"title": "Bad Request",
"errors": [
{
"path": "/webhookId",
"message": "Expected string to match '^[0-9]+$'",
"value": "abc123",
"schema": {
"type": "String",
"pattern": "^[0-9]+$"
}
}
]
}{
"message": "You are unauthorized to access the webhook",
"docs": "https://quo.com/docs",
"title": "Unauthorized"
}{
"message": "You are forbidden to access the webhook",
"docs": "https://quo.com/docs",
"title": "Forbidden"
}{
"message": "Webhook with ID 123 not found",
"docs": "https://quo.com/docs",
"title": "Not Found"
}{
"message": "An unknown error occurred",
"docs": "https://quo.com/docs",
"title": "Unknown Error"
}Authorizations
Headers
API version header. Supported values: 2026-03-30
2026-03-30 Path Parameters
The unique identifier of a webhook
^[0-9]+$"123"
Query Parameters
Max number of items to return per page.
1 <= x <= 50"eyJsYXN0SWQiOiJVU211a09NaXBhIn0"
Current delivery status of the event: success once any attempt succeeded, pending before the first attempt, sending mid-retry, or failed after all retries are exhausted.
success, pending, sending, failed "success"
DEPRECATED, use eventType instead. Will still work, but if both are provided, their values are combined and deduplicated. Restrict results to deliveries of these event types.
1Event type
message.received, message.delivered, message.failed, message.undelivered, call.ringing, call.answered, call.completed, call.missed, call.forwarded, call.menu.selected, call.recording.completed, call.transcript.completed, call.summary.completed, call.voicemail.completed, contact.updated, contact.deleted, integration.created, integration.updated, integration.deleted, task.assigned, task.created, task.completed, task.updated, task.deleted, task.unassigned, task.reopened, task.duedate.removed, task.duedate.updated, task.overdue, task.linked, task.unlinked ["message.received"]
Filter by event type, such as eventType=message.received. To match any of several, use eventType[in]=message.received,call.completed.
message.received, message.delivered, message.failed, message.undelivered, call.ringing, call.answered, call.completed, call.missed, call.forwarded, call.menu.selected, call.recording.completed, call.transcript.completed, call.summary.completed, call.voicemail.completed, contact.updated, contact.deleted, integration.created, integration.updated, integration.deleted, task.assigned, task.created, task.completed, task.updated, task.deleted, task.unassigned, task.reopened, task.duedate.removed, task.duedate.updated, task.overdue, task.linked, task.unlinked "message.received"
Only include deliveries for this exact resource ID. This filter does not match deliveries created before September 1, 2026.
1"ACsampleactivity0000000000000000"
Bound the results by dispatch time, in ISO 8601 format: createdAt[gt]=2026-01-01T00:00:00Z&createdAt[lt]=2026-02-01T00:00:00Z. Both bounds are exclusive.
Show child attributes
Show child attributes
{ "gt": "2026-01-01T00:00:00Z" }
DEPRECATED, use createdAt[lt] instead. Only include deliveries dispatched before this timestamp.
"2026-01-02T00:00:00Z"
DEPRECATED, use createdAt[gt] instead. Only include deliveries dispatched after this timestamp.
"2026-01-01T00:00:00Z"
Was this page helpful?