Skip to main content

Get Campaign Email History

Retrieve a paginated list of individual email delivery records for a campaign, including per-recipient open/click events.


Endpoint

GET https://api.campaignlark.com/v1/campaigns/:id/email-history

Path Parameters

ParameterTypeRequiredDescription
idstringrequiredThe campaign ID.

Query Parameters

ParameterTypeRequiredDefaultDescription
pageintegeroptional1Page number.
limitintegeroptional50Items per page (1–100).

Sample Request

GET https://api.campaignlark.com/v1/campaigns/64f1a2b3c4d5e6f7a8b9c0d1/email-history?page=1&limit=20

Response

Success — 200 OK

{
"error": null,
"data": {
"email_history": [
{
"contact_id": "64f1a2b3c4d5e6f7a8b9c0e1",
"first_name": "Jane",
"last_name": "Doe",
"email_address": "jane@example.com",
"status": "DELIVERED",
"first_opened": "2025-07-01T09:15:00Z",
"last_opened": "2025-07-01T14:30:00Z",
"first_clicked": "2025-07-01T09:16:00Z",
"last_clicked": "2025-07-01T09:16:00Z",
"bounce_reason": null,
"open_events": [
{
"timestamp": "2025-07-01T09:15:00Z",
"ip": "203.0.113.42",
"user_agent": "Mozilla/5.0...",
"country": "AU",
"device_type": "Mobile",
"os": "iOS"
}
],
"click_events": [
{
"timestamp": "2025-07-01T09:16:00Z",
"ip": "203.0.113.42",
"user_agent": "Mozilla/5.0...",
"country": "AU",
"device_type": "Mobile",
"os": "iOS",
"link_url": "https://example.com/sale"
}
]
}
],
"pagination": {
"current_page": 1,
"per_page": 20,
"total_pages": 5,
"total_count": 98
}
}
}

Email History Item

FieldTypeDescription
contact_idstringThe contact's ID.
first_namestring | nullContact's first name.
last_namestring | nullContact's last name.
email_addressstringContact's email address.
statusstringDelivery status (e.g. DELIVERED, BOUNCED).
first_openedstring | nullISO 8601 timestamp of the first open.
last_openedstring | nullISO 8601 timestamp of the most recent open.
first_clickedstring | nullISO 8601 timestamp of the first click.
last_clickedstring | nullISO 8601 timestamp of the most recent click.
bounce_reasonstring | nullBounce reason, if applicable.
open_eventsarrayIndividual open tracking events.
click_eventsarrayIndividual click tracking events, each including link_url.

Tracking Event Object

FieldTypeDescription
timestampstringISO 8601 timestamp.
ipstringIP address of the event.
user_agentstringUser agent string.
countrystringCountry code (if detected).
device_typestringDevice type (if detected).
osstringOperating system (if detected).

Click Event Object

Extends the Tracking Event with:

FieldTypeDescription
link_urlstringThe URL that was clicked.

Errors

StatusMessageCause
400Please provide a campaign ID.id path param is missing.
400We could not find the campaign you are looking for.Campaign not found.