DocsEmails ▾
IntroductionQuickstartAuthenticationSending emailDomainsAPI keysSMTP relayWebhooksTemplatesBroadcastsAudiences & contactsSuppression listOpen & click trackingIP warm-upDeliverabilityAnalytics & logsLimits & errorsSelf-hosting & configurationEmailsDomainsAudiences & contactsBroadcastsTemplatesWebhooksAPI keys, suppressions, metrics
API reference
Emails API
Send email
POST/emails
| Field | Type | Description |
|---|---|---|
fromrequired | string | Sender, "Name <email@domain>". Domain must be verified. |
torequired | string | string[] | Recipients (max 50 across to, cc, bcc). |
subjectrequired | string | Subject line. |
html | string | HTML body. |
text | string | Plain text body. Generated from HTML if omitted. |
cc / bcc | string | string[] | Copy recipients. |
reply_to | string | string[] | Reply-to address. |
headers | object | Custom headers. |
attachments | object[] | { filename, content (base64), content_type } |
tags | object[] | [{ name, value }] |
scheduled_at | string | ISO 8601, up to 30 days ahead. |
template | object | { id, variables } instead of html/subject. |
{
"id": "49a3999c-0ce1-4ea6-ab68-afcd6dc2e794"
}Send batch
POST/emails/batch
Body is an array of up to 100 email objects. Returns { "data": [{ "id": "…" }] }.
Retrieve email
GET/emails/:id
Returns the email and an events array with every state change.
List emails
GET/emails?limit=20&offset=0
Update scheduled email
PATCH/emails/:id
| Field | Type | Description |
|---|---|---|
scheduled_atrequired | string | New send time. |
Cancel email
POST/emails/:id/cancel