Create and manage email campaigns. A campaign combines content (from a template or custom HTML), an audience (a list or segment), and a sender identity. Campaigns go through a lifecycle: incomplete → scheduled → delivering → delivered. They can also be active (ready to schedule), suspended, resumed, canceled, archived, or deleted. Send test emails before scheduling to preview the final result.
Show all campaigns
List all campaigns in the account. Results can be filtered by name, status, and type, and sorted by name, creation date, or scheduled date.
Required scope(s): campaigns:read
query Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
pageper_pagewith_countInclude count in the response
Include count in the response
filterValid Terms:
statusnametypelist_id
Valid Operators:
==
Query separator:
;
Valid Terms:
statusnametypelist_id
Valid Operators:
==
Query separator:
;
sortSort term and direction, using syntax [-|+]term.
Valid terms:
namecreated_onscheduled_forscheduled_onupdated_ontype
Sort term and direction, using syntax [-|+]term.
Valid terms:
namecreated_onscheduled_forscheduled_onupdated_ontype
Show all campaigns › Responses
Successful Response
Create a campaign
Create a new campaign in draft status. Requires a name, audience (list and optional segment), and content. The campaign must be scheduled separately after creation.
Required scope(s): campaigns:write
query Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Create a campaign › Request Body
nameName of the campaign
reply_to_emailSpecify a different reply-to email address than the sender
Create a campaign › Responses
Successful Response
idobjectcreatedShow a campaign details
Retrieve the full details of a campaign, including its content, audience, tracking settings, sender, scheduling, and status.
Required scope(s): campaigns:read
path Parameters
campaign_idquery Parameters
revision_idaccount_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Show a campaign details › Responses
Successful Response
Delete a campaign
Delete a campaign. Only campaigns in draft status can be deleted. To remove a delivered or scheduled campaign, archive it instead.
Required scope(s): campaigns:delete
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Delete a campaign › Responses
Successful Response
idobjectdeletedUpdate a campaign
Update a campaign's name, content, or tracking settings. All fields are optional — only provided fields are updated. The campaign must be in draft status to update its content.
Required scope(s): campaigns:write
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Update a campaign › Request Body
nameName of the campaign
reply_to_emailSpecify a different reply-to email address than the sender
Update a campaign › Responses
Successful Response
idobjectupdatedRender a campaign
Render a campaign's HTML and text content with merge tags replaced. Returns the final content as it would appear to a recipient.
Required scope(s): campaigns:read
path Parameters
campaign_idquery Parameters
contact_idaccount_idRender a campaign › Responses
Successful Response
Send a test email
Send a test email for a campaign to one or more email addresses. The test email renders the campaign content exactly as recipients would see it, including merge tags and tracking links.
Required scope(s): (campaigns:send-test OR campaigns:send)
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Send a test email › Request Body
emailtypeAn enumeration.
Send a test email › Responses
Successful Response
emailRecipient email address
typeAn enumeration.
objectObject type
sentWhether the test email was sent
Schedule a campaign
Schedule a campaign for delivery. Optionally specify a date and time to send. If no date is provided, the campaign is sent immediately. The account must have a verified mailing address before scheduling.
Required scope(s): campaigns:send
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Schedule a campaign › Request Body
dateScheduled send time
html_emptyRequired to be true if the html message is empty
Schedule a campaign › Responses
Successful Response
idobjectscheduledUnschedule a campaign
Remove a campaign from the delivery schedule, returning it to draft status. Only works for campaigns that have not yet started delivering.
Required scope(s): campaigns:send
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Unschedule a campaign › Responses
Successful Response
idobjectscheduledReschedule a campaign
Change the scheduled delivery date of an already-scheduled campaign.
Required scope(s): campaigns:send
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Reschedule a campaign › Request Body
dateScheduled send time
html_emptyRequired to be true if the html message is empty
Reschedule a campaign › Responses
Successful Response
idobjectscheduledSuspend a campaign
Pause a campaign that is currently delivering. Delivery stops and can be resumed later with the resume endpoint.
Required scope(s): campaigns:admin
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Suspend a campaign › Responses
Successful Response
idobjectsuspendedResume a campaign
Resume delivery of a previously suspended campaign.
Required scope(s): campaigns:send
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Resume a campaign › Responses
Successful Response
idobjectresumedCancel a campaign
Cancel a campaign that is scheduled or currently delivering. Unlike suspend, a canceled campaign cannot be resumed.
Required scope(s): campaigns:admin
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Cancel a campaign › Responses
Successful Response
idobjectcancelledArchive a campaign
You can only delete a campaign when the status is draft. However, if you want to remove a campaign from your list of active campaigns, you can archive it.
Required scope(s): campaigns:write
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Archive a campaign › Responses
Successful Response
idobjectarchivedUnarchive a campaign
Restore a previously archived campaign back to the active campaign list.
Required scope(s): campaigns:write
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
Unarchive a campaign › Responses
Successful Response
idobjectarchivedShow all campaign revisions
List all saved revisions of a campaign's content. Each revision captures a snapshot of the campaign at a point in time.
Required scope(s): campaigns:read
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
pageper_pagewith_countInclude count in the response
Include count in the response
Show all campaign revisions › Responses
Successful Response
Show a campaign links
List all tracked links in a campaign.
Required scope(s): links:read
path Parameters
campaign_idquery Parameters
account_idOptional Account ID to be used for the request
Optional Account ID to be used for the request
pageper_pagewith_countInclude count in the response
Include count in the response
Show a campaign links › Responses
Successful Response
List of links