Send email over SMTP
Point any app or tool that speaks SMTP at Zend and it sends over the same infrastructure as the Email API: your verified domains, SES-backed delivery, DKIM/SPF signing, tracking, suppression, and billing. SMTP is just a second front door onto the same send path.
Reach for it when you already have something that sends email over SMTP (a CMS like WordPress, a CRM, a helpdesk, a printer or appliance, or a legacy app) and you'd rather change SMTP settings than write code against the API.
Connection settings
| Setting | Value |
|---|---|
| Host | smtp.tryzend.com |
| Port | 587 (STARTTLS, recommended) or 465 (implicit TLS) |
| Encryption | STARTTLS on 587, implicit TLS on 465; TLS is required before login |
| Username | zendsmtp (the literal word) |
| Password | your Zend API key, with the email:send scope |
Note
zendsmtp, not your account email. Your API key goes in the password field.Authentication
SMTP uses your existing API key, the same one you'd use for POST /email/send. Create a key with the email:send scope in the dashboard, then connect with zendsmtp as the username and the key as the password. Your key is only accepted over TLS, so your client must use STARTTLS (port 587) or a TLS connection (port 465); it never crosses the wire in the clear.
Sending
Set the From header to an address on a domain you have verified (see Sending domains). A From on an unverified domain is rejected, exactly as on the API. Everything else is a normal SMTP message: subject, an HTML and/or plain-text body, and attachments all work.
swaks \
--server smtp.tryzend.com --port 587 -tls \
--auth-user zendsmtp --auth-password "$ZEND_API_KEY" \
--from "receipts@yourdomain.com" \
--to "customer@example.com" \
--header "Subject: Your receipt" \
--body "Thanks for your order!"
With Nodemailer it's a few lines:
import nodemailer from "nodemailer";
const transport = nodemailer.createTransport({
host: "smtp.tryzend.com",
port: 587,
auth: { user: "zendsmtp", pass: process.env.ZEND_API_KEY },
});
await transport.sendMail({
from: "receipts@yourdomain.com",
to: "customer@example.com",
subject: "Your receipt",
html: "<h1>Thanks for your order</h1>",
});
Multiple recipients
To, Cc, and Bcc all work. Each recipient is delivered and billed as its own message (the same as calling the API once per recipient), so every recipient appears separately in your Email history with its own delivery and bounce status.
The same send as the API
Every message you send over SMTP runs the exact path as POST /email/send:
- Deliverability: DKIM/SPF signing and reputation-monitored SES delivery.
- Tracking & suppression: deliveries, bounces, and complaints land in the same Email history, and the same per-domain suppression list protects your reputation.
- Billing: sends draw on your email plan's monthly volume, then on the same shared credits as SMS and WhatsApp.
Note