SMTP relay

For everything that can't speak REST — WordPress, ERPs, cron jobs, monitoring tools. Point them at the relay and mail flows through the same pipeline as the API.

Settings

FieldTypeDescription
Hostsmtpsmtp.sendibl.com
Portsmtp23990 — the relay runs behind a TCP proxy on a non-standard port; every mainstream tool lets you set a custom port.
UsernameauthAnything — sendibl by convention. It's ignored.
PasswordauthAn API key (sb_...).
Example (Python)
import smtplib
from email.mime.text import MIMEText

msg = MIMEText("Hello from a legacy tool")
msg["Subject"] = "Via SMTP"
msg["From"] = "Acme <hello@acme.com>"
msg["To"] = "ada@example.com"

with smtplib.SMTP("smtp.sendibl.com", 23990) as s:
    s.starttls()
    s.login("sendibl", "sb_your_api_key")
    s.send_message(msg)

What happens to the message

Relayed mail goes through the exact same pipeline as POST /emails: your from-domain must be verified, quota and overage rules apply, suppressed addresses are skipped, opens/clicks are tracked, webhooks fire, and every message appears in the Emails log tagged source: smtp. HTML and plain-text parts and attachments are all preserved. Simulator addresses work too — great for verifying a tool's SMTP config.

Rejections use standard SMTP codes:

535  bad API key
550  from-domain not verified
554  no body / invalid recipients
452  monthly quota or overage ceiling reached

Security

The relay requires STARTTLS before authentication — plaintext credentials are refused with 538. Enable TLS/STARTTLS in your tool's SMTP settings (most do this automatically). The certificate is issued for smtp.sendibl.com and validates against standard trust stores. Treat the API key you use for SMTP as scoped to that tool and revoke it under API Keys if the tool is decommissioned.