
One inbox per test
Create separate email addresses for test users and parallel runs. Match each message to the inbox your test created.
Test email and SMS, inspect the received content and review real-client previews. MailSlurp keeps your customer-flow checks together.

Trusted by teams at



Trigger a signup, password reset or order confirmation in your app. Receive the actual email in MailSlurp and inspect its subject, sender, body, headers and attachments. A successful API response is only the start of the journey.
Explore end-to-end email testing

Create separate email addresses for test users and parallel runs. Match each message to the inbox your test created.

Use wait APIs and message filters to retrieve the expected email within a defined timeout.

Extract the verification code or reset link, return to your app and check the next screen.
A customer can sign up by email and verify a phone number in the same session. Give your test an inbox and a phone number, receive both messages and check the code before continuing.
Use MailSlurp with Playwright, Cypress, Selenium or your existing test runner. Keep the received message available when a failed run needs investigation.
Explore SMS testing
An automated assertion can confirm the link exists. Device previews show how the delivered email looks, and Email Audit checks for broken links, missing images and content issues before a release.
See real-client previews
Create an inbox for the test user, then enter its address in your application's signup or password-reset form. Use a separate inbox for each parallel run.
Wait for the expected email. Check the recipient, subject and content, then extract the code or URL your customer needs. The email testing guide covers the workflow.
Submit the code or open the link in your test session. Assert the application outcome, retain useful failure evidence and add the check to your normal test suite. Start with our Playwright email testing guide.
Start with one signup test. Install mailslurp-client and store your MailSlurp API key in your CI secret store. Call createInbox(), enter the returned emailAddress in your application's signup form, then call waitForLatestEmail(inbox.id, 30000, true). Assert the received subject and body before following the verification link in your application.
Give each parallel test its own inbox and call deleteInbox(inbox.id) in a finally block so failures still clean up. Keep your existing assertions for the signed-in page or completed password reset: receiving an email is only part of the test. Follow the Playwright email testing guide to run the same flow locally and in CI, then migrate SMS and attachment checks one at a time.
Start with inbox creation, message waiting, content retrieval and cleanup. Replace those steps in one representative test, keeping the application assertions intact. Check the recipient, extract the expected code or URL and confirm the final state. Repeat with an attachment and an SMS flow if your suite uses them before migrating the remaining scenarios. Review the MailSlurp testing workflow.
Yes. Use MailSlurp APIs or SDKs to create inboxes, wait for messages and retrieve codes or links from Playwright, Cypress, Selenium or another test runner. Complete the action in your application and assert the final state.
Yes. Add phone numbers and SMS checks for verification flows, and use device previews to inspect the delivered email on supported clients. Current plans show the allowances for each capability.
Create a test inbox and complete your first email journey.
