Email Testing API
for developers.
Send emails to Plop, fetch via API, assert in tests. No mail server. No flaky waits.
<inbox>+<tag>@in.plop.email{
"subject": "Confirm your email",
"text": "Your code is 482913",
"from": "hello@acme.co"
}Three steps to reliable email tests
No mail server setup. No flaky waits. Just a simple API.
Send to Plop
Use qa+signup@in.plop.email as your test user's email address.
Fetch via API
GET /v1/messages/latest returns the email as JSON instantly.
Assert in tests
Extract OTP codes, verify links, and check content.
Built for test automation
Everything you need to test email flows in CI.
Mailboxes + tags
Route flows with mailbox+tag addresses like qa+login@in.plop.email.
REST API
List, filter, and fetch emails. Poll for the latest message.
Scoped API keys
Full access, email-only, or mailbox-scoped keys.
Official SDKs
TypeScript and Python SDKs with built-in polling. One line to wait for emails.
Works with your test framework
Fetch emails, extract codes, assert content.
// TypeScript SDK — one line to wait for an email
import { Plop } from '@plop-email/sdk'
const plop = new Plop({ apiKey: process.env.PLOP_API_KEY })
const msg = await plop.waitFor({
mailbox: 'qa',
tag: 'login',
timeout: 10_000,
})
const otp = msg.textContent?.match(/\b\d{6}\b/)?.[0]
await page.fill('[data-testid="otp-input"]', otp)Open source.
Open book.
Plop is fully open source under the AGPL-3.0 license. Inspect the code, self-host it, or contribute back. Your email testing infrastructure, your rules.
Full transparency
Audit every line. No black boxes, no hidden logic.
Community-driven
Contributions welcome. Shape the future of email testing.
Self-host friendly
Run on your own infrastructure. Full control, full ownership.
Pricing that scales with your inboxes.
Start lightweight, then add mailboxes as you grow.
Starter
For solo developers and side projects.
Billed yearly ($48 / year)
or $5 billed monthly
- 1 mailbox
- 5,000 emails/month
- 7-day retention
- Unlimited tags
- 1 API key
Team
For small teams and growing projects.
Billed yearly ($182 / year)
or $19 billed monthly
- 5 mailboxes
- 25,000 emails/month
- 30-day retention
- Webhooks
- 5 team members
Pro
For growing companies with advanced needs.
Billed yearly ($470 / year)
or $49 billed monthly
- 20 mailboxes
- 100,000 emails/month
- 90-day retention
- 15 team members
- Priority support
Enterprise
Coming soonCustom domains and enterprise security.
- Custom subdomains
- Unlimited mailboxes
- SSO/SAML
- Dedicated support
- Custom retention
14-day free trial on all plans. No credit card required.
All plans include unlimited tags and API access. Save 20% with annual billing.