List emails
List accepted messages, newest first, with keyset pagination.
List accepted messages, newest first, with keyset pagination. The read window is bounded by the plan's retention floor (free/starter 30 days, growth 60, scale 90); a supplied from is silently clamped up to that floor. List rows never include message bodies. Requires the send or read:emails scope.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Maximum rows to return. Default 25, clamped to [1, 100].
x >= 1, x <= 10025Opaque pagination cursor from a previous response's `next_cursor`.
Filter by lifecycle status.
"queued" | "sending" | "sent" | "delivered" | "bounced" | "complained" | "failed" | "canceled" | "reconcile_review"Filter by tag value (the tag name is ignored).
Filter by exact recipient domain.
Filter by an exact `to` address; `cc` and `bcc` addresses never match.
Inclusive lower `created_at` bound (ISO 8601); clamped up to the retention floor.
Inclusive upper `created_at` bound (ISO 8601).
Response
A page of emails.
dataarray<object>requireddata.idstringrequiredThe message id (a bare ULID, no prefix).
data.toarray<string>requireddata.fromstringrequireddata.subjectstringrequireddata.status"queued" | "sending" | "sent" | "delivered" | "bounced" | "complained" | "failed" | "canceled" | "reconcile_review"requiredMessage lifecycle status.
"queued" | "sending" | "sent" | "delivered" | "bounced" | "complained" | "failed" | "canceled" | "reconcile_review"data.last_eventstringrequiredLatest event type; falls back to the status when no event has applied yet.
data.recipient_domainstringrequireddata.tagsarray<object>requireddata.created_atstring<date-time>requireddata.scheduled_atstring<date-time>requiredhas_morebooleanrequirednext_cursorstringrequiredOpaque cursor for the next page; pass back as `cursor`.