Deliverability

Every email you send through Zend is tracked from the moment it's queued until it's delivered, bounced, or complained about. Use these endpoints to check individual messages, monitor aggregate rates, and manage your suppression list.

For sending itself, see Send Email; to set up the domains you send from, see Sending domains.

Check delivery status

GET/email/messages/:id

Fetch a single message by the _id returned from POST /email/send. The response includes its current status and, once delivered, delivered_at.

curl https://api.tryzend.com/email/messages/6884da240f0e633b7b979bff \
  -H "x-api-key: YOUR_API_KEY"

Statuses progress pending → sent → delivered, or land on bounced / complained when the recipient's server rejects or flags the message.

List recent messages:

GET/email/messages
curl "https://api.tryzend.com/email/messages?limit=50" \
  -H "x-api-key: YOUR_API_KEY"

Deliverability metrics

GET/email/metrics

Get delivery, bounce, and complaint rates over a date range — the same data behind the Deliverability dashboard.

curl "https://api.tryzend.com/email/metrics?from=2026-07-01&to=2026-07-16" \
  -H "x-api-key: YOUR_API_KEY"

Note

Keep an eye on your bounce and complaint rates. High rates hurt your sender reputation and can affect delivery across all your mail.

Bounces & complaints

When a recipient's mail server permanently rejects a message (hard bounce) or a recipient marks it as spam (complaint), Zend automatically suppresses that address for your account. Future sends to a suppressed address are rejected before they cost you anything:

{
  "message": "Recipient is suppressed due to a previous bounce or complaint",
  "statusCode": 400
}

This protects your sender reputation automatically — you don't have to track bounced addresses yourself.

Suppressions

GET/email/suppressions

View and manage your suppression list from Email → Suppressions in the dashboard, or via the API.

curl https://api.tryzend.com/email/suppressions \
  -H "x-api-key: YOUR_API_KEY"

Remove an address to send to it again:

DELETE/email/suppressions/:id
curl -X DELETE https://api.tryzend.com/email/suppressions/6884da240f0e633b7b979bff \
  -H "x-api-key: YOUR_API_KEY"

Note

Removing an address lets you send to it again — but it will be re-suppressed if it bounces or complains once more.