
Your addresses and domains
Generate addresses on demand or use your own domain and local parts to test the email addresses your application supports.
Use a custom domainGive your automated tests real inboxes and phone numbers. Receive verification codes, follow magic links and check password resets in Playwright, Cypress or your own test suite.

Trusted by teams at



Create disposable email addresses in code and send to them from your application. Each test can receive its own real messages, without shared Gmail accounts, manual cleanup or a mail server to maintain.
Keep an inbox for repeated checks or set an expiry for temporary test data. Use the dashboard to inspect a failure and the API to make it reproducible.
Explore test inboxes

Generate addresses on demand or use your own domain and local parts to test the email addresses your application supports.
Use a custom domain
Wait within a timeout and match the sender or subject. Keep each worker's messages separate when tests run in parallel.

Assert the subject, recipients, HTML and text. Inspect headers and attachments to catch broken receipts, reports and notifications.
Inspect attachmentsA signup test should reach the signed-in screen. Receive the actual confirmation email, extract its link or code, and continue in the browser. Test password resets, invitations and passwordless login the same way.
Combine email and SMS in one suite to cover multi-factor authentication and recovery paths before a release.
Explore authentication testing

Read the delivered message, extract a one-time code or URL, and complete the verification step in your test.

Add a dedicated phone number to test SMS codes, second-factor challenges and phone-based account recovery.
Explore SMS testing
Run the same checks after each change. Retain message IDs with failed tests so your team can investigate what arrived.
Keep your existing Playwright, Cypress or Selenium suite. MailSlurp supplies the inboxes, numbers and message APIs; your test framework controls the browser and assertions.
Use official SDKs for JavaScript, TypeScript, Python, Java, C#, PHP and more, or call the REST API directly.
Find your SDKStart with a single signup or password reset, then bring the same pattern into CI.

Get an inbox ID and email address from the API. Use a separate inbox for each test or worker.

Submit the address in your application. Wait for its email and extract the link, code or content you need.

Finish the browser flow and check the outcome. Add the test to your existing suite and run it in CI.
Create a MailSlurp inbox for the Cypress test, submit its address through your signup or login flow, then wait for the matching message through the MailSlurp API. Extract the OTP with a pattern, enter it in the browser, and keep the received email with the test result when a failure needs investigation. Read the Cypress email testing guide.
Provision a fresh MailSlurp inbox in the Playwright test or worker fixture and use that address during signup. The test can wait for the real delivered email, open its verification link, and finish the browser journey without shared credentials, inbox cleanup, or messages left by another run. Read the Playwright email testing guide.
Call the MailSlurp inbox API during test setup and store the new inbox ID and email address with that run. Create one inbox per worker or scenario, apply an expiry when appropriate, and wait by inbox ID so parallel builds never read one another's messages. Read the inbox creation guide.
Create a free account, receive your first test email and bring the result into your test suite.
