Skip to main content
POST
email.message.send

Authorizations

Authorization
string
header
required

API key: sk_live_…

Headers

Idempotency-Key
string
required

Required: this capability has an external effect.

Maximum string length: 255
Pramaan-Max-Price-Micro
string

Optional. The most this request may be priced at, in micro-USD (a whole number above 0). It replaces the capability's own price ceiling for this request, lower or higher. Sources that could cost more are left out; when none is left the answer is 400 with the lowest limit that would work.

Pattern: ^[1-9]\d{0,14}$

Body

application/json
from
string
required

The inbox address to send from — one of yours, e.g. hello@example.com.

Required string length: 1 - 320
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
to
required

Recipient email address, or a list of them.

Required string length: 1 - 320
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
subject
string
required

Subject line, up to 998 characters.

Required string length: 1 - 998
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
cc

Copy recipients.

Required string length: 1 - 320
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
bcc

Hidden copy recipients.

Required string length: 1 - 320
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
replyTo
string

Address replies go to instead of the inbox.

Required string length: 1 - 320
Pattern: ^(?:[^\p{Cc}\p{Zl}\p{Zp}]|\t)*$
autoSubmitted
enum<string>

Mark automatic mail so recipients can prevent reply loops.

Available options:
auto-generated,
auto-replied
inReplyTo
string

RFC Message-ID of the parent message.

Maximum string length: 998
Pattern: ^<[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:\.[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+)*@[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*>$
references
string[]

Thread history: at most 20 RFC Message-IDs and 4,096 bytes.

Maximum array length: 20
Maximum string length: 998
Pattern: ^<[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:\.[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+)*@[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*>$
text
string

Plain-text body. Send text, html or both.

Required string length: 1 - 1000000
html
string

HTML body. Send text, html or both.

Required string length: 1 - 1000000
attachments
object[]

Files to attach, base64-encoded. Attachments combined must stay under 6 MB.

Maximum array length: 10

Response

The result

status
enum<string>
required

Whether the message was accepted for delivery.

Available options:
sent
messageId
string
required

The message's public RFC Message-ID, e.g. abc@example.com.

acceptance
enum<string>

Confirmed acceptance or confirmed queueing; neither proves delivery.

Available options:
accepted,
queued
rfcMessageId
string

Final RFC Message-ID when confirmed, distinct from the message reference.

Maximum string length: 998
Pattern: ^<[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:\.[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+)*@[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*>$
ref
string

Reference to what this call created. Pass it as ref to email.message.get or email.message.reply.