Get Email Campaign
Fetches a single campaign with its messages, audience definition, status, and send progress. Returns 404 if the campaign does not exist in this project.
Authorization
Authorization In: header
Path Parameters
ID of the project that owns the campaign.
ID of the campaign to fetch.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/projects/string/email-campaigns/string"{ "id": "string", "createdAt": "string", "updatedAt": "string", "projectId": "string", "name": "string", "status": "DRAFT", "type": "STANDARD", "workflowId": "string", "workflowStepId": "string", "sentAt": "string", "contactListId": "string", "contactsFilterGroups": [], "lastSuccessContactId": "string", "lastSuccessContactCreatedAt": "string", "sendOrderByProperty": { "direction": "asc", "propertyKey": "string" }, "abTestConfig": { "variable": "SUBJECT", "samplePercent": 20, "winnerMetric": "OPEN_RATE", "winnerWaitHours": 4, "winnerWaitUnit": "HOURS", "sendTimeDelayHours": 2, "sendTimeDelayUnit": "HOURS", "winnerMessageId": "string", "winnerSelectedAt": "string", "winnerRolloutAt": "string", "winnerWaitStartedAt": "string", "status": "AWAITING_SAMPLE", "samplePaginationEnd": 0 }, "utmConfig": { "enabled": true, "params": { "campaign": "", "content": "", "medium": "", "source": "", "term": "" } }, "sendCount": 0, "sendingTargetDurationMs": 0, "sendPaginationCount": 0, "messages": [], "bcc": "string", "bodyHTML": "string", "bodyJSON": { "property1": null, "property2": null }, "cc": "string", "fromDomain": "string", "fromEmailUsername": "string", "fromName": "string", "previewTextHTML": "string", "previewTextJSON": { "property1": null, "property2": null }, "replyTo": "string", "scheduledAt": "string", "subjectHTML": "string", "subjectJSON": { "property1": null, "property2": null }, "text": "string", "theme": { "body": { "align": "left", "background": "string", "container": "string" }, "button": { "background": "string", "borderColor": "string", "borderSize": 0, "color": "string", "radius": 0 }, "link": { "color": "string" }, "template": "string", "typography": { "h1": { "color": "string", "fontSize": 0, "lineHeight": 0 }, "h2": { "color": "string", "fontSize": 0, "lineHeight": 0 }, "h3": { "color": "string", "fontSize": 0, "lineHeight": 0 }, "p": { "color": "string", "fontSize": 0, "lineHeight": 0 } } }}List Email Campaigns
Lists the project's campaigns with status and send progress. Audience, UTM, A/B config, and message bodies are omitted — fetch a campaign by id for those. Optionally narrow with `type` or `types`. Omit `take` to return every matching campaign; the dashboard passes `take` (max 100) and `after` to page.
Create Email Campaign
Creates a campaign together with its first message (subject, body, sender) in one transaction. New campaigns always start as a DRAFT. Creating one never sends anything. Define the audience with `contactListId`, `contactsFilterGroups`, or both; set `type` to `AB_TEST` and supply `abTestConfig` for a split test.