Why use test addresses?
Test emails sent to@testing.lettermint.co addresses are:
- Excluded from billing: They don’t count toward your monthly email quota
- Excluded from statistics: They won’t skew your bounce or complaint rates
- Processed instantly: Events are generated within seconds
Test addresses
Send to any of these addresses to trigger specific delivery events:| Address | Simulated Event | Webhook Event |
|---|---|---|
ok@testing.lettermint.co | Successful delivery | message.delivered |
softbounce@testing.lettermint.co | Soft bounce (mailbox full) | message.soft_bounced |
hardbounce@testing.lettermint.co | Hard bounce (user unknown) | message.hard_bounced |
spamcomplaint@testing.lettermint.co | Delivery + spam complaint | message.delivered → message.spam_complaint |
dsn@testing.lettermint.co | Out-of-band DSN bounce | message.hard_bounced |
The local part (before
@) determines behavior. You can use any local part ending in @testing.lettermint.co. For example, user+tag@testing.lettermint.co also works.Sending test emails
Testing with webhooks
Test addresses are most useful when combined with webhooks. Set up a webhook to receive events, then send test emails to verify your handler processes each event type correctly.Example: Verify bounce handling
- Create a webhook subscribed to
message.hard_bouncedevents - Send to
hardbounce@testing.lettermint.co - Confirm your webhook receives the event and your application handles it (e.g., marks the address as undeliverable)
Example webhook payload
When sending tosoftbounce@testing.lettermint.co, you’ll receive:
Common testing workflows
Integration testing
Use test addresses in your CI/CD pipeline to verify email sending works without sending real emails:Manual testing
When developing locally, use a tunnel like ngrok to expose your webhook endpoint, then send test emails to verify the full flow.Troubleshooting
No webhook received
- Check webhook is enabled: Disabled webhooks don’t send events
- Verify event subscription: Ensure the webhook subscribes to the relevant event type (e.g.,
message.soft_bounced) - Allow processing time: Test events typically arrive within 5-10 seconds
- Check webhook logs: View recent deliveries in Dashboard → Route → Webhooks → [Your Webhook]
API returns an error
- Verify API token: Ensure your token is valid and has send permissions
- Check “from” address: The sender domain must be verified in your project
Test address not recognized
- Use exact domain: The domain must be exactly
testing.lettermint.co(case-insensitive) - Check for typos: Common mistakes:
test.lettermint.co(wrong),testing.lettermint.com(wrong TLD)