List a contact's emails
Every email this contact was sent or is queued to get, newest first. Where each one came from, its subject, and whether it was delivered.
Requires the contacts:read scope.
Every email this contact was sent or is queued to get, newest first: broadcasts, automation steps, and the system emails LaunchList sends for a product action to work, such as the verification email or an invitation.
The email object#
| Field | Description |
|---|---|
id |
The msg_ handle. Use it to page this list. |
source.type |
broadcast, automation, lifecycle (a system email) or reward (a referral reward announcement). |
source.id |
The bcd_ broadcast or aut_ automation handle. null for other sources. |
source.name |
The broadcast or automation name, or the system email's name. |
source.kind |
For a system email: verification, invitation, welcome or status_link. null otherwise. |
subject |
The subject as this contact received it. null until the email is rendered for sending. |
status |
queued, sent, delivered, bounced, complained, suppressed, failed or canceled. |
unsubscribed |
Whether they unsubscribed using this email's link and are still unsubscribed. Broadcasts only, else null. |
created_at |
When it was queued, ISO 8601. |
sent_at |
When the email provider accepted it. |
delivered_at |
When the receiving mail server accepted it. |
suppressed means we held the email back because the contact unsubscribed, bounced or was
otherwise no longer mailable by the time it was due. failed means it could not be handed to the
email provider. canceled means the broadcast was canceled before it reached them.
The send address, the email body and provider message ids are never included.
Paging#
limit works as it does everywhere else, from 1 to 100, default 25. Pass the id of the last row
you have as starting_after to get the next page.
Next#
Common questions
Why are there no opens or clicks?
Open and click tracking is off by default, so an empty value would read as "never opened" when the truth is "never measured". The history reports only what we know happened to the email.
Why is unsubscribed null on some rows?
Only a broadcast's unsubscribe link records which email it came from. For automation steps and system emails we cannot say which email someone unsubscribed from, so the field is null rather than a guess. The contact's own unsubscribed field is always accurate.