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.
Request
- Base URL: https://app.lettr.com/api
- URL: https://app.lettr.com/api/campaigns/{campaignId}/events
- Auth: HTTP bearer
Path parameters
Campaign ID
Query parameters
Filter by event type
Filter by recipient email
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.
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).
Max events per page (max 100)
Pagination cursor from a previous response
Response
Campaign events retrieved successfully.
Example response
{
"message": "Campaign events retrieved successfully.",
"data": {
"events": [
{
"event_id": "92356829",
"event_type": "open",
"email": "jane@example.com",
"timestamp": "2026-05-01T12:30:00+00:00"
}
]
}
}Changes
No recorded changes to this operation across all 1 revision of this API.