llms.txt
# Mailyte
> One platform for business email on your own domain, transactional email from
> your app over SMTP or a REST API, and email marketing campaigns. One account
> and one invoice, priced in naira (dollars too). Open source under AGPL-3.0.
> The API has 313 documented endpoints across 39 sections.
## Products
- [Mail](https://mailyte.com/product/email-hosting): business mailboxes (you@yourcompany.com) with webmail, IMAP and SMTP. Free for up to 5 mailboxes.
- [Send](https://mailyte.com/product/sending): transactional email from your app over SMTP or the API. A free daily allowance; monthly plans for more.
- [Marketing](https://mailyte.com/product/marketing): campaigns, automated journeys and contact lists, sent apart from your team's mail.
- [Deliverability](https://mailyte.com/product/deliverability): SPF, DKIM and DMARC checked against live DNS.
- [Migration](https://mailyte.com/product/migration): copy mailboxes in from Google Workspace, Microsoft 365, Zoho Mail, cPanel or any IMAP server.
- [Pricing](https://mailyte.com/pricing): every plan, in naira or dollars.
- [Compare](https://mailyte.com/compare): how Mailyte compares with other email platforms.
- [Mailyte vs Mailgun](https://mailyte.com/compare/mailgun): For teams that send app email and also want their mailboxes and campaigns in the same account.
- [Mailyte vs SendGrid](https://mailyte.com/compare/sendgrid): For teams that want their mailboxes on the same invoice as their app email and campaigns.
- [Mailyte vs Mailchimp](https://mailyte.com/compare/mailchimp): For teams that want campaigns, app email and mailboxes in one account.
- [Mailyte vs Postmark](https://mailyte.com/compare/postmark): For teams that need mailboxes and campaigns alongside transactional email.
- [Mailyte vs MailerLite](https://mailyte.com/compare/mailerlite): For teams that want app email and mailboxes in the same account as their campaigns.
- [Mailyte vs Brevo](https://mailyte.com/compare/brevo): For teams that want mailboxes in the same account as their campaigns and app email.
- [Mailyte vs Zoho](https://mailyte.com/compare/zoho): For teams deciding between Zoho’s separate email products and one account.
- [Mailyte vs Google Workspace](https://mailyte.com/compare/google-workspace): For teams on Google Workspace who also need app email and campaigns.
- [Mailyte vs SendBaba](https://mailyte.com/compare/sendbaba): For teams choosing between two platforms that both bill in naira.
## Getting started
- [Quickstart](https://mailyte.com/developer/quickstart): API key to delivered message in five minutes.
- [Authentication](https://mailyte.com/developer/authentication): API keys, scopes, and mailbox tokens.
- [API overview](https://mailyte.com/developer/api): base URL, response envelope, status codes, rate limits.
- [Errors](https://mailyte.com/developer/errors): every status code and what to do about it.
- [Webhook events](https://mailyte.com/developer/webhooks): the event catalogue and payloads.
## Key facts
- Base URL: https://app.mailyte.com
- Mailbox API (`/api/v1/mailbox/*`, `/api/v1/mailbox-auth/*`) base URL: https://courier.mailyte.com — the mail server; the base URL above answers it with 404. It takes a mailbox token, not an API key.
- Sends are safe to retry with an `Idempotency-Key` header, on the Send API and the Mailbox API alike. Its one format is `<app>-<ULID>` (e.g. `crm-01JBT8XQ2M9WYC3K4F6R7S8T9V`); any other shape is a 422.
- Auth: `Authorization: Bearer mk_live_...` — an organization API key.
- No `X-Organization-ID` header is needed with an API key; the key names its organization.
- Every response is wrapped: `{ "message": ..., "data": ..., "success": ..., "code": ... }`.
- Sending is asynchronous. A 200 means accepted, not delivered.
- Batch sends return 200 even with per-recipient failures; check `failed` and `results`.
- Sending limits count recipients, not messages.
- The Mailbox API (webmail operations) uses a separate mailbox token, not an API key.
## Guides
- [Sending at volume](https://mailyte.com/developer/guides/sending-at-volume): Batches, rate limits, and what to do when you are throttled.
- [Templates and variables](https://mailyte.com/developer/guides/templates-and-variables): Store a template once, render it per recipient, and preview before you send.
- [Handling delivery events](https://mailyte.com/developer/guides/handling-delivery-events): Polling the event log versus receiving webhooks, and what each event means.
- [Receiving webhooks](https://mailyte.com/developer/guides/receiving-webhooks): Verify signatures, survive retries, and stay idempotent.
- [Suppressions and compliance](https://mailyte.com/developer/guides/suppressions): Why we refuse a send, and why you should not always override it.
- [Managing domains and DNS](https://mailyte.com/developer/guides/domains-and-dns): SPF, DKIM, DMARC and MX — what verification actually checks.
- [Provisioning mailboxes](https://mailyte.com/developer/guides/provisioning-mailboxes): Mailboxes, aliases, forwarding and quotas over the API.
- [SMTP or the API](https://mailyte.com/developer/guides/smtp-vs-api): A real decision, not a preference. What each one gives you.
- [Testing in the Sandbox](https://mailyte.com/developer/guides/sandbox): SMTP and test keys that deliver nothing, simulated bounces, and sandbox webhooks.
- [Connecting ChatGPT, Claude and other AI apps](https://mailyte.com/developer/guides/ai-connectors): The Mailyte MCP server: connect an AI app, what it may do, using your own agent, and how sign-in works.
- [Giving a key to an AI tool or an agent](https://mailyte.com/developer/guides/keys-for-ai-tools-and-agents): One key per tool, a cap sized to the job, an allowlist for a fixed address, revoke when done.
- [Running a campaign](https://mailyte.com/developer/guides/running-a-campaign): Contacts to segment to send, with the checks that stop a bad one.
- [Check an address at signup](https://mailyte.com/developer/guides/check-an-address-at-signup): Catch typos and addresses that do not exist before you save a new user.
- [Addresses we do not send to](https://mailyte.com/developer/guides/addresses-we-do-not-send-to): Why an address is refused before sending, not_sent_reason, and cleaning your list.
- [Checking contacts added through the API](https://mailyte.com/developer/guides/checking-contacts-added-through-the-api): email_status, the checks headers, the webhooks, and what a full inbox means.
- [Sending contact events](https://mailyte.com/developer/guides/sending-contact-events): Tell automations what happened in your app: batching, retries and backfill.
- [Building on the Mailbox API](https://mailyte.com/developer/guides/building-on-the-mailbox-api): Mailbox tokens, folders, messages and scheduled send.
- [Migrating from another provider](https://mailyte.com/developer/guides/migrating-from-another-provider): Endpoint mapping from Mailgun, SendGrid and Postmark.
## API reference
- [Sending](https://mailyte.com/developer/api/sending): Submit messages for delivery, individually or in batches. (7 endpoints)
- [Templates](https://mailyte.com/developer/api/templates): Stored templates with variables, rendered at send time. (7 endpoints)
- [Events](https://mailyte.com/developer/api/events): What happened to a message after you submitted it. (6 endpoints)
- [Suppressions](https://mailyte.com/developer/api/suppressions): Addresses Mailyte will refuse to send to, and why. (4 endpoints)
- [Webhooks](https://mailyte.com/developer/api/webhooks): Receive delivery events at your own endpoint as they happen. (5 endpoints)
- [SMTP credentials](https://mailyte.com/developer/api/smtp-credentials): Logins for applications that relay over SMTP rather than HTTP. (10 endpoints)
- [Reports](https://mailyte.com/developer/api/reports): Deliverability, engagement and volume reporting. (9 endpoints)
- [Sandbox inboxes](https://mailyte.com/developer/api/sandbox-inboxes): Operations for sandbox inboxes. (13 endpoints)
- [Sandbox messages](https://mailyte.com/developer/api/sandbox-messages): Operations for sandbox messages. (8 endpoints)
- [Sandbox webhooks](https://mailyte.com/developer/api/sandbox-webhooks): Operations for sandbox webhooks. (6 endpoints)
- [Mailboxes](https://mailyte.com/developer/api/mailboxes): Provision mailboxes, aliases and forwarding for a domain. (12 endpoints)
- [Mailbox aliases & routing](https://mailyte.com/developer/api/mailbox-aliases-routing): Operations for mailbox aliases & routing. (8 endpoints)
- [Mailbox API](https://mailyte.com/developer/api/mailbox-api): Everything the webmail does, for one mailbox. Takes a mailbox token, not an organization API key. (6 endpoints)
- [Mailbox auth & security](https://mailyte.com/developer/api/mailbox-auth-security): Operations for mailbox auth & security. (9 endpoints)
- [Mailbox messages](https://mailyte.com/developer/api/mailbox-messages): Operations for mailbox messages. (21 endpoints)
- [Mailbox folders](https://mailyte.com/developer/api/mailbox-folders): Operations for mailbox folders. (4 endpoints)
- [Mailbox contacts](https://mailyte.com/developer/api/mailbox-contacts): Operations for mailbox contacts. (7 endpoints)
- [Mailbox calendars](https://mailyte.com/developer/api/mailbox-calendars): Operations for mailbox calendars. (13 endpoints)
- [Mailbox AI](https://mailyte.com/developer/api/mailbox-ai): Operations for mailbox ai. (11 endpoints)
- [Mailbox settings](https://mailyte.com/developer/api/mailbox-settings): Operations for mailbox settings. (12 endpoints)
- [Transport rules](https://mailyte.com/developer/api/transport-rules): Organization-wide rules applied to mail in transit. (7 endpoints)
- [Campaigns](https://mailyte.com/developer/api/campaigns): Bulk sends to a list or segment, scheduled and reported on. (17 endpoints)
- [Automations](https://mailyte.com/developer/api/automations): Journeys that run per contact: triggered by a list, a tag or an event your system records, with waits and emails in between. (16 endpoints)
- [Automation runs](https://mailyte.com/developer/api/automation-runs): Operations for automation runs. (2 endpoints)
- [Automation analytics](https://mailyte.com/developer/api/automation-analytics): Operations for automation analytics. (2 endpoints)
- [Automation AI & experiments](https://mailyte.com/developer/api/automation-ai-experiments): Operations for automation ai & experiments. (5 endpoints)
- [Contact events](https://mailyte.com/developer/api/contact-events): Operations for contact events. (2 endpoints)
- [Contacts](https://mailyte.com/developer/api/contacts): Contacts, lists, custom fields and segments. (14 endpoints)
- [Contact lists](https://mailyte.com/developer/api/contact-lists): Operations for contact lists. (8 endpoints)
- [Contact fields](https://mailyte.com/developer/api/contact-fields): Operations for contact fields. (4 endpoints)
- [Contact tags & interests](https://mailyte.com/developer/api/contact-tags-interests): Operations for contact tags & interests. (5 endpoints)
- [Segments](https://mailyte.com/developer/api/segments): Operations for segments. (5 endpoints)
- [Verification](https://mailyte.com/developer/api/verification): Check whether addresses exist before you send, without sending anything. (8 endpoints)
- [Domains](https://mailyte.com/developer/api/domains): Add a sending domain, publish its DNS, and verify it. (12 endpoints)
- [Domain verification](https://mailyte.com/developer/api/domain-verification): Operations for domain verification. (7 endpoints)
- [Domain operations](https://mailyte.com/developer/api/domain-operations): Operations for domain operations. (3 endpoints)
- [Domain analytics](https://mailyte.com/developer/api/domain-analytics): Operations for domain analytics. (4 endpoints)
- [Senders](https://mailyte.com/developer/api/senders): Verified identities a message may be sent as. (8 endpoints)
- [Account](https://mailyte.com/developer/api/account): Organization usage, limits, API keys and dedicated IPs. (6 endpoints)
## Optional
- [Full documentation as plain text](https://mailyte.com/llms-full.txt)
- [OpenAPI 3.1 document](https://mailyte.com/developer/mailyte-openapi.json)
- [Help centre](https://mailyte.com/docs): using Mailyte from the dashboard, for non-developers.