Create a test key
Test keys run the full pipeline and never deliver to real recipients.
Eight delivery and failure scenarios. Exercise your email pipeline and webhook handlers without sending to real recipients.
Test keys run the full pipeline and never deliver to real recipients.
Test delivery, bounce, mailbox full, blocked, delayed, complaint, suppression, or a specific SMTP bounce code.
Inspect the event shape and confirm your application updates the right records.
const response = await fetch(
process.env.ZAPSMTP_API_URL, {
method: 'POST',
headers: {
'Authorization': 'Bearer zap_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
from: 'hello@yourdomain.com',
to: ['delivered@simulator.zapsmtp.com'],
subject: 'You’re all set.',
html: '<p>Your next big thing starts here.</p>'
})
});Delivered, bounced, mailbox full, blocked, delayed, complained, suppressed, and bounce with a specific SMTP code.
Inspect Permanent and Transient bounce types, with a subtype for more precise handling.
Keys starting with zap_test_ run the full pipeline without delivering email to real people.
The interactive example on this website is a local simulation. It does not call the sending API or display live product events.
API and SMTP are included in every plan. Free includes 3,000 emails per month, one domain, and three days of logs. Pro includes ten domains and 30 days of logs; Scale includes unlimited domains and 90 days of logs.
Compare plansVerify your domain before production sending. Keep API keys and SMTP passwords on your backend. Delivery depends on content, reputation, authentication, and the receiving provider; an accepted request does not guarantee inbox placement.
Your next email starts with a few lines of code.