API reference

Mailboxes

A mailbox is a sending account of the workspace. The API lists mailboxes and never changes them.

Method Path Action
GET /api/v1/mailboxes List mailboxes

List mailboxes#

The list is not paginated. next_cursor is always null.

curl "https://app.anymail.watch/api/v1/mailboxes" \
  -H "Authorization: Bearer $ANYMAIL_TOKEN"

Response 200

{
  "data": [
    {
      "id": "b2c3d4e5-0000-4000-8000-000000000001",
      "email": "sales@example.com",
      "provider": "smtp_imap",
      "status": "active",
      "active": true,
      "daily_limit": 50,
      "sent_today": 12,
      "timezone": "Europe/Warsaw",
      "from_name": "Ada Lovelace",
      "last_poll_error": null,
      "last_polled_at": "2026-09-04T08:55:00.000+00:00",
      "paused_from": null,
      "paused_to": null,
      "domain_health": {
        "domain": "example.com",
        "checked_at": "2026-09-04T03:00:00.000+00:00",
        "spf": "ok",
        "dkim": "unknown",
        "dmarc": "missing"
      },
      "created_at": "2026-08-01T00:00:00.000+00:00"
    }
  ],
  "next_cursor": null
}
Field Values and notes
provider smtp_imap, m365 or gmail.
status error, paused, frozen or active. The precedence matches Settings, Accounts: an IMAP read error, then disabled, then frozen for the period paused_from to paused_to, then active.
sent_today Messages sent today in the time zone of the mailbox.
domain_health spf, dkim and dmarc are each ok, missing, conflicting or unknown. The values come from the latest hourly check of the domain monitor. unknown means the check did not run or the resolver did not answer. It does not mean that the record is missing. checked_at: null means the domain was never checked.

The response never contains SMTP, IMAP or OAuth credentials, signatures or BCC addresses.

Errors: 401, 429 and 500 only.