Skip to main content
GET
List campaign engagement events
Returns engagement events (opens, clicks, bounces, etc.) for a campaign, with optional filtering by type, recipient email, and date range. Uses cursor-based pagination: keep requesting with the returned next_cursor until it is null. When a filter is applied, a page may come back with an empty events array and a non-null next_cursor — that means more pages remain, not that there are no matching events, so continue paginating until next_cursor is null. Requires the campaigns:read scope.

Authorizations

Authorization
string
header
required

API key for authentication

Path Parameters

campaignId
string<uuid>
required

Campaign ID

Query Parameters

event_type
enum<string>

Filter by event type

Available options:
injection,
delivery,
bounce,
spam_complaint,
open,
click,
list_unsubscribe
email
string<email>

Filter by recipient email

start_date
string<date-time>

Only events at or after this time (ISO 8601). A date-only value (e.g. 2026-05-01) is treated as the start of that day in UTC.

end_date
string<date-time>

Only events at or before this time (ISO 8601), inclusive. A date-only value (e.g. 2026-05-01) covers the whole of that day in UTC (through 23:59:59).

limit
integer
default:25

Max events per page (max 100)

Required range: 1 <= x <= 100
cursor
string

Pagination cursor from a previous response

Response

Campaign events retrieved successfully.

message
string
required
Example:

"Campaign events retrieved successfully."

data
object
required