Get a message
https://myagentmail.com/v1/inboxes/{id}/messages/{messageId}Returns full bodies plus attachment metadata. Also marks the message as read.
Path parameters
idrequired string | Inbox UUID |
messageIdrequired string | Message UUID |
Responses
idstring | format: uuid |
direction"inbound" | "outbound" | enum: "inbound" | "outbound" |
fromstring | |
tostring | |
subjectstring | |
plainBodystring | |
htmlBodystring | |
isReadboolean | |
threadIdstring | format: uuid |
messageIdHeaderstring | |
inReplyTostring | |
receivedAtstring | format: date-time |
firstOpenedAtstring | Timestamp of the first recipient open event (outbound emails only). Populated by ZeptoMail tracking when track:true on send. NULL until the first open. Note: opens are noisy due to Apple Mail Privacy Protection — ~30-50% of opens are auto-fetches by Apple's image proxy, not real user opens. Gate business logic on click events instead when possible. format: date-time |
lastOpenedAtstring | Most recent open event. Updates on every open. format: date-time |
openCountinteger | Total opens. Subject to the same Apple-MPP noise as the timestamps. default: 0 |
firstClickedAtstring | Timestamp of the first recipient link-click. Reliable signal of engagement (unlike opens, click events are not Apple-MPP-poisoned). NULL until the first click. format: date-time |
lastClickedAtstring | format: date-time |
clickCountinteger | default: 0 |
attachmentsobject[] | |
idstring | format: uuid |
filenamestring | |
contentTypestring | |
sizeBytesinteger |
Authentication
Send your API key in the X-API-Key header (or Authorization: Bearer <key>). Any prefix accepted by this endpoint — tk_, wk_, ak_, or sa_ — is documented in the key prefix table.