Skip to main content
POST
TypeScript

Authorizations

Authorization
string
header
required

Project-bound Apollo Signal API key. Keys begin with ap_signal_ and must carry the permission shown on the operation.

Body

application/json

Email message including sender, recipients (addresses or a topic / segment id), subject, body content, and optional scheduling and tracking configuration.

Email content and delivery options. from, to, and subject are required, and at least one of html or text must be supplied.

from
string
required

Sender address. Its domain must be verified in the authenticated project.

subject
string
required

Email subject. The request is rejected when this field is omitted.

to
string[]
required

Recipient addresses, or one topic (top_…) or segment (seg_…) identifier. A single string is accepted. Audience sends are capped at 50 resolved recipients and cannot include cc or bcc.

attachments
AttachmentRequest · object[]

Base64-encoded attachments. The decoded total must fit the configured attachment limit, and the message may contain at most 500 MIME parts including bodies.

bcc
string[]

Blind-carbon-copy recipient addresses. These count toward the project's per-message recipient limit.

cc
string[]

Carbon-copy recipient addresses. These count toward the project's per-message recipient limit.

deliveryWindow
DeliveryWindowRequest · object

Allowed time window for an optimal non-transactional send. Required when optimization may delay the message.

html
string

HTML body. Supply html, text, or both.

idempotencyKey
string

Project-scoped key that returns the original send result when the request is retried.

metadata
Map<String,String> · object

Caller-defined string metadata associated with the send.

replyTo
string

Address that receives replies instead of the sender address.

scheduledAt
string

ISO 8601 send time or optimal. Explicit times must be 30 seconds to 30 days in the future; omit to send immediately.

sendTimeCategory
enum<string>
default:transactional

Delivery category. transactional messages are never delayed by optimal-time scheduling. Defaults to transactional.

Available options:
transactional,
marketing,
notification,
digest
tags
Map<String,String> · object

Caller-defined string labels used to categorize the email.

testMode
boolean
default:false

Exercises the send flow without delivering to real recipients. Defaults to false.

text
string

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

trackingSettings
TrackingSettingsRequest · object

Per-message overrides for the project's tracking settings.

Response

Email accepted for delivery. The id can be used to retrieve status or cancel. For a recipient fan-out, messages lists one entry per recipient message; each entry can be tracked independently.

createdAt
string
required
id
string
required
status
string
required
audienceId
string
messageId
string
messages
BatchSendItemResponse · object[]
scheduledAt
string