Frequently asked questions
Real, delivered email you can assert on — built for software teams and the AI agents that build with them. Below: how fixture.email works, how agents and keys fit in, and how billing is metered. Still stuck? Email support@fixture.email.
The basics
What is fixture.email?
fixture.email is end-to-end email testing for software teams and the AI agents that build with them. You mint disposable mailboxes, send and receive real email, and assert on the exact subject, body, links, and headers your users actually get — in your end-to-end tests, in the CI you already run.
Is this real email, or mocks?
Real email, actually delivered — not stubs. Your app sends to a mailbox address, the message is received and parsed, and you assert against what arrived: subject, body, decoded links, and lowercased headers. Every send carries SPF, DKIM, and DMARC and a Message-ID whose host matches the sender, so what you test mirrors production.
Will my tests be flaky?
No shared state to fight. Every mailbox is uniquely addressable and isolated, so the same test passes the same way on every run — no cross-talk, no retry-until-green. Status and message reads are deterministic facts you can poll or drive from a signed callback, and simulated outcome sink addresses let you exercise bounces and complaints on demand.
Does it work in my CI?
Yes. It is plain HTTP your runner already speaks — mint a mailbox, send to it, then read the messages back — so it drops into GitHub Actions, GitLab CI, or whatever you run today with no special agent or runner.
Built for agents
How do agents fit in?
Point your AI coding agent at the fixture.email MCP and it does the wiring: it reads the docs, mints mailboxes, and drafts the email assertions straight into your suite. There is no SDK to learn and no dashboard to click through — a developer pastes a starter prompt once and the agent drives the whole receive → send → assert loop over the MCP.
MCP or HTTP API?
Both, on one X-API-Key. The full MCP server and the HTTP API expose the
same capabilities, so your agent can call the tools natively while your CI hits plain HTTP
— no second credential, no divergent surface.
What is your approach to AI in testing?
A deterministic API is the anchor; AI rides on top as an advisory layer. The API gives reproducible ground truth (arrived, headers, links, auth results, signed callbacks), and an AI layer helps author assertions from intent and judge the fuzzy half of email no selector ever captured. The rule that keeps it trustworthy: an AI judgment never overrides a deterministic verdict, and zero deterministic checks is a failure, never a silent pass.
Keys & access control
How fine-grained is API-key access control?
Every key is org-scoped and hashed, and each key carries a precise grant:
a tier (Org-Admin, Mailbox-Admin, or Mailbox) × a named set of mailboxes × the
message classes it can touch (Inbox, Sent, or Tag) × the actions it can take (List,
Read, Delete) — with the right to send folded into the same grant. A confined key only
ever sees what its grant allows: a mailbox or message outside the grant returns
404 (it can't even learn the thing exists), and an in-grant action it lacks
returns 403.
How are confined keys created and delivered?
Programmatically — not dashboard-only. You author keys over the API or via the
provision_keys MCP tool (an agent can mint a scoped key from a natural-language
request), and the raw secret is revealed once in the portal through an inert,
org-bound claim link. The secret never lands in an agent transcript, a tool result, or our
logs — the human reveals it in the portal and copies it into their secret store.
Can I give mailboxes stable names?
Yes. Mailboxes carry unique-per-org labels as stable, human-friendly handles, so a grant can name a set of mailboxes that stays meaningful as addresses rotate.
Plans & billing
What does it cost, and what is metered?
One plan with everything to test email included. Only delivery to real recipients outside your test domain is metered — internal test-domain sends, message reads, and mailbox / key / callback management never draw on your send allowance. Scale the external-send allowance with 1–99 units at checkout, adjustable anytime in the billing portal. See the pricing section for the current figures.
Is there a free trial?
Yes — a 15-day free trial. A card is required up front, but you are not charged during the trial and can cancel anytime before it ends. The trial includes a starter external-send allowance so you can prove the full loop end to end. See the Refund Policy for the cancel-anytime details.
Will my test mail land in the Gmail inbox?
The product contract is delivery + observability, not inbox placement. Every message is properly authenticated (SPF / DKIM / DMARC, multipart/alternative, matching Message-ID host), but whether a third-party provider files a given message under Inbox vs Spam depends on sender reputation and is best-effort — out of scope for a testing service.
Choosing fixture.email
How is this different from other email-testing tools?
Deterministic email-testing harnesses (Mailosaur among them) are a solid way to capture and assert on mail. fixture.email is built as the combination: the same deterministic ground truth, plus an AI layer pinned on top, an agent-native MCP that wires the integration for you, and the strongest programmatic per-key RBAC in the category — mint precisely-scoped keys over the API, not from a dashboard. We compete by extending what a deterministic tool does, not by taking anything away.
How do I get started?
Start the 15-day trial, then paste the starter prompt into your coding agent — it connects to the MCP, mints a mailbox, and proves a first send → assert. The docs walk through the API and the MCP if you'd rather wire it by hand.
More questions? Email support@fixture.email, or read the docs.