Amazon SES + MailKite
Amazon SES is a bulk email sending service from AWS. MailKite offers the same SMTP interface with better developer experience, inbound email parsing, and unlimited free domains.
What you need
- A verified domain with SPF + DKIM published
- Your API key (
mk_live_…) - AWS account with SES access (optional — MailKite replaces or complements it)
Send email
Swap your SMTP host from SES to MailKite — same interface, simpler setup.
smtp-config
# MailKite as an Amazon SES alternative
# Same SMTP interface, simpler setup
SMTP Host: smtp.mailkite.dev
SMTP Port: 587
SMTP Username: mailkite
SMTP Password: mk_live_...
From: hello@yourdomain.com
# Amazon SES SMTP was:
# SMTP Host: email-smtp.us-east-1.amazonaws.com
# Port: 587 (STARTTLS) or 465 (TLS)
# Just swap the host and credentials Receive inbound email (optional)
SES inbound requires SNS + Lambda + parsing. MailKite is a single webhook URL.
inbound-comparison
# Amazon SES inbound is limited (SNS + Lambda)
# MailKite inbound is a single webhook URL
# MailKite: POST https://your-endpoint.com/webhook
# Payload: { from, to, subject, text, html, attachments }
# SES: SNS → Lambda → parse → process
# Much simpler with MailKite Test it
Swap your SMTP host and send.
terminal
# Quick test
echo "Test" | swaks --to test@example.com --from hello@yourdomain.com \
--server smtp.mailkite.dev --port 587 \
--auth USER=mailkite --auth-password mk_live_... Troubleshooting
- SES requires domain verification and sandbox exit for production access.
- MailKite domains are ready to send after SPF + DKIM verification — no sandbox, no request forms.
- SES IAM credentials are per-region. MailKite uses one API key globally.
See the SMTP relay docs for the full connection reference, or all integrations for other platforms.