What is testmail.app?

Updated

testmail.app is an email testing API service for developers and QA teams. It gives you unlimited email addresses and mailboxes so you can automate end-to-end tests that involve email — signup confirmations, transactional messages, password resets — without ever sending test mail to real customers. You send test emails to a generated address, and testmail.app receives, parses, spam-tests, and indexes them so your test code can retrieve them through a JSON or GraphQL API.

It fits teams that need to assert on email content inside CI/CD pipelines, and it is not a production mail-sending service or a marketing email platform.

How it works

The mechanism is a namespace plus a tag:

  1. You sign up and receive a namespace.
  2. Any address of the form {namespace}.{tag}@inbox.testmail.app is a real, deliverable address. The {tag} can be anything — each tag creates a separate email address and mailbox, so you can generate unlimited addresses on the fly just by changing the tag.
  3. testmail.app receives the message, parses it, runs a spam check, and indexes it.
  4. Your test queries the API to fetch the email and assert on its contents.

Because the address is under inbox.testmail.app rather than a real customer domain, a misconfigured test cannot accidentally email a real user.

What you can do with the API

The service exposes both a simple JSON API and a GraphQL API, usable from any HTTP or GraphQL client in any language or environment, including CI/CD pipelines. Documented capabilities include:

  • Advanced search with wildcard matching
  • "Live" queries that wait for a new email to arrive
  • Sorting and pagination
  • Attachment retrieval
  • SpamAssassin reports, so you can assert on spam scores

A quickstart, API reference, and an interactive GraphQL Playground are provided for building and testing queries.

Team and security characteristics

  • Collaboration: invite team members by email; create separate namespaces and mailboxes per project; provision and retrieve API keys; share test emails; monitor usage; manage membership. Collaborators can be invited on all plans at no extra cost, and an enterprise plan supports managing multiple separate teams.
  • Security: HTTPS/TLS is forced on all traffic, data is encrypted in transit and at rest, and logins are passwordless.
  • Reliability: APIs are distributed across multiple data centers with around-the-clock monitoring, backed by a 99.99% uptime SLA, and a public status page shows real-time uptime checks.

Pricing and getting started

The site advertises a free forever plan with unlimited email addresses and mailboxes, no credit card required, and a limit of 100 emails/month. Paid plans and the SLA details are listed on the pricing page, and Stripe is used for payments. Signup is described as taking about 30 seconds and yields your namespace and API key.

When it is a good fit

Choose testmail.app if your tests need to receive and inspect real email programmatically, you want disposable addresses generated per test case, and you want that flow to run unattended in CI. If you only need to send email in production, or you need a full inbox UI for manual QA, this is not the tool for that job.

To evaluate it, start with the free plan, send one message to {your-namespace}.{any-tag}@inbox.testmail.app, and query it back through the GraphQL Playground — that single round trip tells you whether the API shape fits your test framework.