ZapSMTP / Sandbox & simulator

Test the edge cases.
Before your users find them.

Eight delivery and failure scenarios. Exercise your email pipeline and webhook handlers without sending to real recipients.

POST/v1/emailsNode.js
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.xyz'],
    subject: 'You’re all set.',
    html: '<p>Your next big thing starts here.</p>'
  })
});
Set ZAPSMTP_API_URL to your account’s send endpoint.
Try a delivery scenario.Local simulation. No real email is sent.

Start with
a test key.

Keys that begin with zap_test_, like Halden’s CI tests key, run the full pipeline and never reach a real inbox.

API keys
Halden’s API keys in ZapSMTP: storefront, order service and newsletter keys limited to a domain or a stream, an admin key with full access, and a CI test key.Halden’s API keys in ZapSMTP: storefront, order service and newsletter keys limited to a domain or a stream, an admin key with full access, and a CI test key.

Check your
webhook handlers.

Every simulated outcome sends the same signed events your production handlers receive.

Webhooks
Recent webhook deliveries to Halden’s endpoint: delivered, opened, clicked, bounced and complained events with their response codes and times, and a 503 that was retried.Recent webhook deliveries to Halden’s endpoint: delivered, opened, clicked, bounced and complained events with their response codes and times, and a 503 that was retried.

See what
a bounce does.

Hard bounces and complaints add the address to your suppressions, as they would in production.

Halden’s suppressions in ZapSMTP: hard bounces, an unsubscribe and a complaint, each added automatically with the email that caused it.Halden’s suppressions in ZapSMTP: hard bounces, an unsubscribe and a complaint, each added automatically with the email that caused it.

Also included

Eight scenarios, one workflow

Delivered, bounced, mailbox full, blocked, delayed, complained, suppressed, and bounce with a specific SMTP code.

Bounce details your handler understands

Inspect Permanent and Transient bounce types, with a subtype for more precise handling.

Plans and limits

Send your first email.

Your next email starts with a few lines of code.

Start for free 3,000 emails/month free · No credit card required