Quickstart & Concepts
One account, three surfaces: web inbox, developer API, and AI agents. All share the same encrypted, auto-purging infrastructure.
Four steps to your first inbox
- Open an inboxClick + and type a name, e.g. shop. You get shop@a7f2c.mailflat.net, a real and permanent address.
- Use it anywhereSign up to a site with it. The mail lands here and any verification code is pulled out and shown as a chip you can copy in one click.
- Read, reply, sendFrom the web inbox, or let code do it with an API key. Outgoing mail leaves from your address, DKIM-signed.
- Forget about itMessages purge themselves on your plan's timer. The address stays, ready to reuse, until you delete it yourself.
Permanent address, temporary messages
This is the one thing that surprises people coming from throwaway-mail sites: the address does not expire. Only the mail inside it does.
The vocabulary
InboxA real address you own
name@namespace.mailflat.net, or an address on your own domain. Permanent until you delete it; every inbox can both receive and send.
RetentionHow long messages survive
A per-inbox window, capped by your plan: two hours on Free, up to a month on paid plans. When a message is older than the window it is deleted, permanently.
Tagshop+promo@… → filter by #promo
Anything after a + lands in the same inbox but stays filterable, a per-service label that tells you exactly who shared your address.
OTPVerification codes, extracted for you
Codes are detected as mail is stored, so they are available both as a chip in the UI and as otp_code on the API. Encryption turns this off by design.
PoolsFor everyone · For agents · Testing
Inboxes for humans can be end-to-end encrypted. Inboxes for agents are always plain text so the API can read them. Testing is the agent pool with a ci tag for throwaway run inboxes.
Or start from code
Create an account key in Agents → API keys, then pick your language. All three do the same thing: open an inbox and wait for a code.
curl -X POST https://mailflat.net/api/v1/inboxes \
-H "X-API-Key: mf_live_…" \
-d '{"prefix":"agent-7f3","retention_hours":2}'
# → { "address": "agent-7f3@a7f2c.mailflat.net" }
Full reference in Agent API & MCP; every SDK wraps the same endpoints.