List received emails
List the organization's received email, newest first. Rows carry metadata only; fetch one email for its body.
Paging runs both ways. Pass a response's next_cursor as after for the next, older page, or its prev_cursor as before to walk back toward newer mail. after and before cannot be combined. Every page is newest first whichever way it was reached, and has_more says whether another page lies in the direction you are moving.
Received mail has no test or live split: a mf_test_ key reads the same mail as a mf_live_ key. Rows older than the plan's retention window are never returned. Requires the read:inbound scope; send and read:emails do not grant it.
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 <= 10025A previous response's next_cursor. Continues to older mail.
A previous response's prev_cursor. Walks back to newer mail.
Text (1-200 characters) matched as a substring of the subject, the sender address, or the sender's display name.
>= 1, <= 200Only mail sent to an address at this domain (matched against received_for).
Only mail with at least one attachment. Accepts true only.
"true"Only mail whose spam verdict is FAIL. Accepts true only.
"true"Response
A page of received emails.
dataarray<object>requireddata.idstringrequiredThe received email id (inb_…).
data.created_atstring<date-time>requiredWhen Mailfully received the email.
data.fromstringrequiredThe sender's bare address.
data.from_headerstringrequiredThe From header as written, display name included. Empty when absent.
data.toarray<string>requiredAddresses in the To header.
data.ccarray<string>requiredAddresses in the Cc header.
data.received_forarray<string>requiredThe envelope recipients at this organization's domains, lowercased. Includes blind-copied recipients and never lists another organization's addresses.
data.subjectstringrequiredThe subject, or an empty string when there is none.
data.message_idstringrequiredThe Message-ID header, or null when the sender set none.
data.attachment_countintegerrequireddata.spam"PASS" | "FAIL" | "GRAY" | "PROCESSING_FAILED" | nullrequiredAn SES verdict. GRAY means SES had nothing to check or could not decide; null means SES reported no verdict.
"PASS" | "FAIL" | "GRAY" | "PROCESSING_FAILED" | nulldata.virus"PASS" | "FAIL" | "GRAY" | "PROCESSING_FAILED" | nullrequiredAn SES verdict. GRAY means SES had nothing to check or could not decide; null means SES reported no verdict.
"PASS" | "FAIL" | "GRAY" | "PROCESSING_FAILED" | nulldata.quota_lockedbooleanrequiredtrue while the email is locked because it arrived over the monthly ceiling or spend cap and usage is still over. Its content endpoints return 403 email_above_quota until then.
has_morebooleanrequiredWhether another page lies in the direction of travel.
next_cursorstringrequiredPass as after for older mail; null when there is none.
prev_cursorstringrequiredPass as before for newer mail; null on the newest page.
