Documentation
Permanent email inboxes you can create from code. Read the one-time code your app just sent, run every CI job against its own real address, or hand an AI agent an inbox of its own.
Languages
Official clients for Python, JavaScript, TypeScript and Java, plus copy-paste REST helpers for the rest.
See all 9 languagesTest frameworks & CI
Where the inbox belongs in your runner's lifecycle: fixtures, hooks, config and teardown.
See all 13 frameworksStart here
Open an inbox and read your first one-time code in about a minute. Free, no card.
pip install mailflat
otp = mf.create().wait_for_otp()Read the quickstart AI agents & assistants
Hand an agent an inbox of its own. MCP, LangChain and the AI SDKs all get the same tools: open an address, wait for the code, clean up.
Common test cases
The assertions people actually write. One page per question, every example in six languages.
Using MailFlat
How inboxes, retention, plans and your own domain fit together.
API & authentication
Keys, endpoints and webhooks: the full reference for both the session API and the agent API.
Guides
Longer reads: the dashboard tour, deliverability, and what to check when mail does not arrive.