Skip to content

Delivery status

Retrieve a sent email by ID. 404s for ids owned by other teams — no cross-team reads. Never throws — returns { data, error }.

const { data, error } = await client.get(emailId); // id returned by send()
data?.status; // EmailStatus — accepted ≠ delivered; poll for bounced / complained
FieldType
idstring
fromstring
tostring[]
subjectstring
htmlstring | null
textstring | null
ccstring[] | null
bccstring[] | null
replyTostring[] | null
headersRecord<string, string> | null
statusEmailStatus
scheduledAtstring | null
createdAtstring
updatedAtstring

createdAt and updatedAt are ISO 8601 strings.

queued | sending | sent | delivered | delivery_delayed | bounced | complained | failed | scheduled | canceled

Status updates arrive asynchronously from SES — a send() success means accepted, not delivered. Poll get() (or query later) to handle bounced / complained.