Email for your app and your AI agent
Flyanote's API sends transactional email, like receipts, password resets, and notifications, one recipient per message. Developers and AI agents use the same API, with a free sandbox that never sends real mail.
Start with a free test send: the quick start has the commands. Live mail is pay as you go, priced per email, with no monthly fee.
Can an AI agent sign up and send through Flyanote with no person?
Not yet. Today a person opens the account and makes the API key. With a test key, an agent can then work with the API on its own: send test messages, which are free and never delivered, and read what happened to them. Live mail also needs a live key and credit, which a person adds today, and a verified domain. It opens to customers with the private beta.
Each step, and who takes it today
In the sandbox, free
- Open an account
Who: a person.
In a browser, with an invite: accounts are by invite while Flyanote is in development. Email hello@flyanote.com and tell us what you’d send. - Make a test key
Who: a person (an owner or admin).
In the app, under API keys. A test key (fan_test_…) is free and never delivers. It’s shown once. - Send a test message
Who: the agent, with the test key.POST /v1/messagesfromtest@sandbox.flyanote.comto a team member’s verified address. Free, and never delivered. - See what happened
Who: the agent.GET /v1/messages/{id}. A test message ends astest.
Live mail
- Make a live key
Who: a person (an owner or admin).
In the app, the same way. A live key (fan_live_…) sends real email and uses credit. - Add a sending domain
Who: the agent, with the live key and access to the domain’s DNS.POST /v1/domainsreturns the DNS records to add, andPOST /v1/domains/{id}/checkchecks them. Without DNS access, a person adds the records. - Add credit
Who: a person.
While Flyanote is in development, we add credit on request. - Send live mail
Who: the agent, with the live key.
The samePOST /v1/messages, from an address on the verified domain. Live mail opens to customers with the private beta.
The quick start has the commands for the test send and the domain.
What changes before sign-up opens
Sign-up opens early 2027. Before then, an agent will be able to start an account through the API and get its own test key. A person still claims the account before it sends live mail. An MCP server is planned too. This page changes as each reaches production.
What it costs
Test sends are free. Live mail is pay as you go: prepaid credit, priced per email, with no monthly fee. We'll publish the price per 1,000 emails before sign-up opens.
What the API does for an agent
- Every send takes an
Idempotency-Key. Send a retry with the same key and body within 24 hours, and it never sends twice. - Every error is an RFC 9457 problem with a stable
code, what went wrong, and the steps that fix it, in order. GET /v1/api-keys/currentsays what a key is and what it may do, before it tries anything.- A test key runs every check a live key does but one: a test send is never refused for an address on Flyanote's own abuse list. So a test send that passes doesn't prove the live one will.
- Rate limits come in
RateLimitheaders, withRetry-Afteronce you're past one.
Where to start
- The quick start: send a free test message that's never delivered, then add and verify your sending domain.
- The OpenAPI document: every operation, in OpenAPI 3.1. It's a copy, refreshed each time this site updates; the API's own is always current.
- The API's base URL is
https://app.flyanote.com/api. Send the key in this header:Authorization: Bearer <key> - API errors: every code, and the steps that fix it.
- For AI agents: llms.txt lists every page.
- For AI agents: llms-full.txt has every page in one file.
- Add
.mdto the address of any page on this site for its Markdown. - All the docs.