Delivered but not received
The send was accepted or shows delivered and nothing arrived. Check test mode, message status, suppression, spam and recipient routing in order.
delivered means the receiving server accepted the message. It does not mean the message reached an inbox. Work through the checks below in order.
1. Was it a test-mode send
Every recipient in a test-mode send is rewritten to a labeled mailbox-simulator address, so no mail reaches a real inbox. If you did not mean to send in test mode, check whether an mf_test_ key was used by mistake. See Test mode.
2. Check the message status
Pull the message and its event timeline:
curl https://api.mailfully.com/v1/emails/01J9ZC3AB8XQ4RW2N7VKT5EMHD \
-H "Authorization: Bearer mf_live_xxxxxxxxxxxx"
curl https://api.mailfully.com/v1/emails/01J9ZC3AB8XQ4RW2N7VKT5EMHD/events \
-H "Authorization: Bearer mf_live_xxxxxxxxxxxx"
| Status | What it means for "nothing arrived" |
|---|---|
held | The message is waiting for review and sends once released. You can cancel it while it waits. |
canceled | The message never sent. Every to recipient was suppressed, you canceled it, or it was dropped before sending, for example because the account was paused (last_event is paused). |
failed | The message was rejected, or every remaining recipient was suppressed before sending. |
sent | Our sending servers accepted the message. The delivery outcome is still pending. |
delivered | The recipient's mail server accepted the message. A later spam report or late bounce can still change it to complained or bounced. |
See How sending works for all ten statuses.
Was the recipient suppressed
A send to a suppressed address still returns 202. There are three outcomes:
- Some recipients suppressed: the message goes to the rest.
- Every
torecipient suppressed when the request arrives: you get202with an id, but the message has statuscanceled. Nothing is sent or billed, but its recipients still count toward the daily limit. - Suppressed in the moments between accepting and sending: the message becomes
failedwithlast_event: "suppressed", and asuppressedevent appears in the timeline.
The 202 says nothing about the third case. The event timeline does:
{
"data": [
{ "type": "send", "event_at": "2026-07-08T14:02:12.000Z", "detail": null },
{ "type": "suppressed", "event_at": "2026-07-08T14:02:12.410Z", "detail": null }
]
}
See Suppressions and Why an address was suppressed.
An open or click is also not confirmation of Inbox placement or a human action. Image proxies, security scanners, and prefetching can produce these events. Open/click detail.automation is likely, unlikely, or unknown; missing historical evidence is unknown, and user agents do not determine the classification. Unlikely and unknown can still be automated.
3. Check spam
A delivered event with nothing in the inbox often means the message went to spam. See Why emails go to spam.
4. Check routing at the recipient
Forwarding rules, aliases, catch-all domains and corporate quarantine can intercept a message after delivered. Ask the recipient to check their organization's quarantine and any forwarding rule.
Still stuck
Email contact@mailfully.com with the message id, the send time, the recipient's domain and the event timeline from GET /v1/emails/:id/events.
