Runs examples for real against your account. Test keys only; kept in this tab, never stored on our side. Get a key
ZapSMTP / Docs / Emails

List emails

GET/v1/emails

List sent emails, newest first.

Requires a full-access key.

Use the last item's id as before= for the next page. metadata may be null when the email has none. last_status and last_event carry the same value.

Query parameters

limitinteger
1-100; out-of-range values fall back to 20. Default 20.
beforestring
Cursor: an email id (UUIDv7) or RFC 3339 time; returns emails accepted before it. An email id gives an exact page boundary. Limits: 422 invalid_parameter "before must be an email id or RFC 3339 time"
afterstring
Email id or RFC 3339 time; only emails created after it (still newest first). Limits: 422 invalid_parameter "after must be an email id or RFC 3339 time"
statusstring
Filter by latest status. status=scheduled lists pending scheduled sends instead (different item shape, ordered by scheduled time ascending, has_more always false, other filters/cursors ignored). One of queued, delivered, delivery_delayed, bounced, complained, failed, opened, clicked, replied, suppressed, scheduled.
qstring
Case-insensitive substring of a recipient or subject, or an exact email id.
daysinteger
Look-back window in days, 1-90 (other values ignored). Always capped by the plan's log retention. Default 30.
streamstring
One of transactional, broadcast.
modestring
Filter live or test-mode (sandbox) traffic; other values ignored. One of live, test.
metadata[<key>]string
Exact match on a metadata value, e.g. metadata[order_id]=A-1042. Repeatable for several keys.

Errors

restricted_api_keyHTTP 403
invalid_parameterHTTP 422
bad before/after
GET/v1/emails
curl 'https://zapsmtp.xyz/v1/emails?limit=10' \
  -H "Authorization: Bearer $ZAP_API_KEY"
Set ZAP_API_KEY in your environment.
Response 200 OK
{
  "object": "list",
  "has_more": true,
  "data": [
    {
      "object": "email",
      "id": "019a1f2e-7c3b-7d41-9a52-0c4b8e6f1a23",
      "from": "Acme <hello@acme.com>",
      "subject": "Your receipt",
      "to": [
        "jane@example.org"
      ],
      "last_status": "delivered",
      "last_event": "delivered",
      "created_at": "2026-10-21T15:04:10.902Z",
      "stream": "transactional",
      "test": false,
      "metadata": {
        "order_id": "A-1042"
      }
    }
  ]
}