API Endpoints: The Complete List

91 views 0 found helpful Oct 17, 2026

API Endpoints: The Complete List

Every endpoint of the AtrioMail API, one line each. Each path starts at the address of your control panel, system.atriomail.com. Send your API key in the X-API-KEY header on every request; how to create a key, and the limit of 30 requests per minute, are in "API Access and Integration".

Where a path holds {id}, put the number of the domain, mailbox, forwarder, catch-all address, customer account or migration job there. A list endpoint returns those numbers.

Your account

  • GET /api/v1/user - The account the API key belongs to.
  • GET /api/v1/status - Whether the API and the services behind it are working.
  • GET /api/v1/dashboard - How many domains, mailboxes and migration jobs you have.
  • GET /api/v1/search - Find domains, mailboxes, aliases and migration jobs by name. Send the words as q, at least 3 characters.

Domains

  • GET /api/v1/domains - List your domains, each with its state after the security check.
  • POST /api/v1/domains - Add a domain.
  • GET /api/v1/domains/{id} - One domain.
  • PUT /api/v1/domains/{id} or PATCH /api/v1/domains/{id} - Change a domain: its description, its owner, its caps on mailbox count and storage, and active to suspend or reactivate it.
  • DELETE /api/v1/domains/{id} - Delete a domain.
  • GET /api/v1/domains/{id}/ses-dns-records - The DNS records the domain needs for sending: Amazon SES verification and DKIM.
  • GET /api/v1/domains/{id}/ses-verification-status - Whether those sending records are verified.
  • GET /api/v1/domains/{id}/dns-propagation-status - Whether the domain's DNS records can be seen on the internet yet.
  • GET /api/v1/domains/{id}/mail-settings - The IMAP and SMTP settings to give the domain's users.
  • POST /api/v1/domains/{id}/dns-check - Check the domain's live DNS against the exact records it needs.

DNS checks

  • POST /api/v1/dns-check - Check the mail DNS of a domain by its name.
  • GET /api/v1/dns-check/quota - Your allowance of DNS checks and how much of it is used. This call does not count against it.

Mailboxes

  • GET /api/v1/mailboxes - List your mailboxes.
  • POST /api/v1/mailboxes - Create a mailbox.
  • GET /api/v1/mailboxes/{id} - One mailbox.
  • PUT /api/v1/mailboxes/{id} or PATCH /api/v1/mailboxes/{id} - Change a mailbox: its name, its password, its storage (quota, in MB), active to suspend or reactivate it, and revoke_sessions to also sign out every app that uses it.
  • DELETE /api/v1/mailboxes/{id} - Delete a mailbox.
  • POST /api/v1/mailboxes/{id}/revoke-access - Lock out a mailbox that someone else may be using: it is suspended, its app passwords are deleted and its open connections are closed. Send password to set a new password at the same time.
  • GET /api/v1/mailboxes/{id}/quota - The mailbox's storage and how much of it is used.
  • POST /api/v1/mailboxes/{id}/quota/increase - Give the mailbox more storage.
  • POST /api/v1/mailboxes/{id}/quota/decrease - Give the mailbox less storage.

Forwarders

  • GET /api/v1/forwarders - List your forwarders.
  • POST /api/v1/forwarders - Create a forwarder.
  • GET /api/v1/forwarders/{id} - One forwarder.
  • PUT /api/v1/forwarders/{id} or PATCH /api/v1/forwarders/{id} - Change a forwarder.
  • DELETE /api/v1/forwarders/{id} - Delete a forwarder.

Catch-all addresses

  • GET /api/v1/catch-all - List your catch-all addresses.
  • POST /api/v1/catch-all - Create a catch-all address for a domain.
  • GET /api/v1/catch-all/{id} - One catch-all address.
  • PUT /api/v1/catch-all/{id} or PATCH /api/v1/catch-all/{id} - Change a catch-all address.
  • DELETE /api/v1/catch-all/{id} - Delete a catch-all address.

Customer accounts

  • GET /api/v1/users - List the customer accounts you manage.
  • POST /api/v1/users - Create a customer account. Sending the same request again returns the existing account instead of an error.
  • GET /api/v1/users/{id} - One customer account.
  • PUT /api/v1/users/{id} or PATCH /api/v1/users/{id} - Change a customer account.
  • DELETE /api/v1/users/{id} - Delete a customer account.

Sign-in links

  • POST /api/v1/sso/token - A single-use link that signs a customer straight into their control panel. It works once, for 60 seconds.

IMAP migrations

  • GET /api/v1/migrations - List your migration jobs.
  • POST /api/v1/migrations - Create a migration job.
  • GET /api/v1/migrations/stats - How many migration jobs you have, how many are active and how many are running.
  • GET /api/v1/migrations/{id} - One migration job and its progress.
  • PUT /api/v1/migrations/{id} or PATCH /api/v1/migrations/{id} - Change a migration job.
  • DELETE /api/v1/migrations/{id} - Remove a migration job.
  • POST /api/v1/migrations/{id}/toggle - Pause a migration job, or resume a paused one.

Suspending and reactivating

There is no separate suspend endpoint. You switch a domain or a mailbox off and on again with active:

  • Suspend a domain: PATCH /api/v1/domains/{id} with "active": false. The domain cannot take mailboxes and its mail is not handled until it is switched on again.
  • Reactivate a domain: the same request with "active": true.
  • Suspend a mailbox: PATCH /api/v1/mailboxes/{id} with "active": false. The mailbox cannot sign in, send or receive until it is switched on again.
  • Reactivate a mailbox: the same request with "active": true.
  • Lock out a mailbox that someone else may be using, in one call: POST /api/v1/mailboxes/{id}/revoke-access. It suspends the mailbox unless you send "suspend": false, which only signs out its apps and, with password, changes its password.

PUT takes the same fields as PATCH. Switching a domain or a mailbox on is refused while the domain is still in its security check or review, was not approved, or has its sending suspended: a domain answers 422 with the reason under active, a mailbox answers 409 with the reason. Nothing is changed then, and the reason says what happens next.

Need Help?

Contact support through the live chat in the control panel.

api endpoints reference integration suspend reactivate mailbox domain

Was this article helpful?

Thank you for your feedback!

We appreciate you helping us improve our documentation.