Your staging environment, under control
Test what happens after the click.
Capture email, SMS, WhatsApp, push and calls. Inspect HTTP requests. Simulate sign-ins and outages. Give your team one place to test the flows your customers rely on.
Free to start · Shared team workspaces · Built for automated tests
Your sign-in code is 482913
security@app.example
Your sign-in code
482913
This code expires in 10 minutes.
HTML · Text · Headers · Attachments
// turn a captured event into a test
✓ subject contains "sign-in code"
Illustrative data. Your real captures appear in your workspace.
Standard SMTP
MESSAGING
SMS · SMPP · WhatsApp · Push · Voice
IDENTITY
OIDC · SAML · Social logins
REQUESTS
Any HTTP client
How it works
Connect. Capture. Assert.
- 1
Connect a sandbox
Create an email or SMS inbox, request bin or mock identity provider. Point the integration in your test environment at its endpoint.
SMTP_HOST=smtp.testlie.com
- 2
Trigger the real flow
Run your app’s signup, checkout or notification flow. Inspect the captured event and see exactly what your application sent.
Email · SMS · HTTP · Identity
- 3
Automate it in CI
Use an API key to wait for a message in your end-to-end tests, then assert on the subject, recipients, links and body.
GET /messages/wait?to=…
Features
Every channel your app talks on. One testing workflow.
Test the side effects of a signup, a purchase or a password reset with captures your team can inspect and your tests can assert on.
Email sandbox
Capture email over standard SMTP. Inspect HTML, headers and attachments, extract verification codes, and preview dark mode or mobile layouts.
SMS sandbox
Test texts through a Twilio-compatible API or SMPP 3.4. Inspect message bodies, track delivery states and receipts, and simulate failures without sending a real SMS.
WhatsApp sandbox
Point the WhatsApp Cloud API at Testlie. Validate templates, enforce the 24-hour window, and receive signed status and reply webhooks from simulated users.
Push notifications
Send through APNs- and FCM-compatible endpoints with real token auth. See iOS and Android previews and simulate unregistered or bad device tokens.
Voice and OTP calls
Place calls through a Twilio Voice-compatible API. Testlie runs your TwiML, simulates the callee and reads back the code your app would have spoken.
Messages to your app
Simulate a phone texting your number or an email arriving at your inbound endpoint, delivered the way Twilio, SMPP, SendGrid, Mailgun or Postmark would.
HTTP request capture
Give each integration its own request bin. Inspect headers and bodies, check signatures, return custom responses and replay a captured request.
Identity testing
Run mock OIDC and SAML providers, or mock Sign in with Google, GitHub, Apple and Microsoft. Exercise failed sign-ins, MFA and SCIM provisioning in CI.
Spam and quality checks
Score every email with SpamAssassin and built-in rules, with a fix for each issue and the Gmail and Yahoo sender checklist. Find broken links and accessibility issues too.
Failure scenarios
Turn on an email provider outage, slow SMTP, an identity provider outage, carrier failures or a dead webhook receiver with one click or one API call.
Assertions that wait for the event
Use the REST API to wait for a matching capture, extract a code or link, and fail the test when the expected event never arrives.
A workspace for the whole team
Organize inboxes into projects, give teammates the right role, and connect captured events to webhooks, Slack or Microsoft Teams.
Nothing to install or run
A hosted service in the EU: point local development, staging and CI at the same sandboxes, with the same settings, and let Testlie handle the servers.
For developers
Send with any SMTP client. Assert with one HTTP call.
Your app keeps its normal mail code. Your tests ask the API for the message they expect, and fail fast when it does not come.
import nodemailer from "nodemailer";
// Credentials come from the inbox's SMTP settings page.
const transport = nodemailer.createTransport({
host: "smtp.testlie.com",
port: 587,
auth: { user: process.env.SMTP_USER, pass: process.env.SMTP_PASS },
});
await transport.sendMail({
from: "app@example.com",
to: "new-user@example.com",
subject: "Welcome aboard",
html: "<h1>Hi!</h1><a href='https://app.example.com/verify'>Verify</a>",
});# Block until the welcome email arrives (up to 30 s), then assert on it.
curl -sf -H "Authorization: Bearer $API_KEY" \
"https://testlie.com/api/inboxes/$INBOX_ID/messages/wait?to=new-user@example.com&subject=Welcome&timeout=30" \
| jq -r '.message.subject'
# Fetch the full message (HTML, text, headers, attachments).
curl -s -H "Authorization: Bearer $API_KEY" \
"https://testlie.com/api/messages/$MESSAGE_ID"Pricing
Free to start, priced per team
Start with a free email and SMS sandbox, request bin, and mock identity provider. Upgrade for shared workspaces, more captures and advanced checks. See the full plan comparison for included features.
Free
$0 / month
1 inbox · 500 messages / month
Team
$29 / month
20 inboxes · 25,000 messages / month
Business
$99 / month
100 inboxes · 100,000 messages / month
Enterprise
Custom
1,000 inboxes · 1,000,000 messages / month
A few useful answers
Built for testing. Clear about the boundaries.
Will captured messages reach real people?
No. Email, texts, WhatsApp messages, push notifications and calls sent to Testlie are captured, never delivered. Email forwarding is a separate, explicit feature that requires confirmed recipient addresses.
Can I use it in automated tests?
Yes. Use a team API key to wait for a matching capture, read its content, and extract a verification code or link. Create disposable inboxes for isolated test runs and remove them when the run finishes.
Does it replace my production email or SMS provider?
Use Testlie for development, staging and CI. Keep your production delivery provider; configure your test environment to use the sandbox instead.
What can I test with a mock identity provider?
OIDC and SAML sign-ins, groups, custom claims, MFA steps, failure modes and SCIM provisioning. Mock identities are test identities; they are separate from your team’s own account and SSO configuration.
Is each team's data kept separate?
Yes. Each workspace scopes inboxes, captures, API keys and identity providers to its own team. Owners and admins manage configuration; members can inspect captures. Every customer gets its own workspace.
Where is my data, and how long is it kept?
Testlie is a hosted service running in the EU (AWS, Ireland). Captures are deleted automatically after your plan's retention period: 3 days on Free, 30 on Team, 90 on Business, custom on Enterprise. The privacy policy and DPA have the details.
Make your next release a little less surprising.
Start with a free sandbox. Connect your app, capture its first message, and turn the result into an automated test.