Troubleshooting

Common errors and how to fix them.

SMTP errors

Code Meaning Fix
535 5.7.8 Authentication failed Wrong handle or API key. Sign into /account and regenerate the key.
451 4.7.1 Warming tier rate limit Back off and retry. See Warming tiers for caps and durations.
451 4.4.2 Queue full or transient submission error Server-side. Retry with exponential backoff.
550 5.1.0 From address not allowed The MAIL FROM domain isn't enrolled under your DID. Check the From: address matches an enrolled domain.
550 5.7.1 Recipient suppressed The recipient unsubscribed via List-Unsubscribe. Remove them from your list. See Bounces and suppression.
521 (connect) Member suspended Your account is suspended (manual or auto-suspension on bounce rate). Sign into /account to see the reason.

HTTP API errors

The HTTP API returns the same conditions as SMTP, with JSON error codes. The full table is on the Send API page.

Quick reference for the most common ones:

Enrollment problems

"DKIM not yet verified" after I added the records

DNS propagation can take a few minutes to an hour. Verify with dig:

dig +short TXT <selector>r._domainkey.yourdomain.com

If dig shows the record but the labeler hasn't picked it up yet, wait a minute and refresh /account. The labeler retries every few minutes.

If dig shows nothing, double-check the record name. Some DNS providers strip the trailing dot or expect just the subdomain (e.g. <selector>r._domainkey rather than the full hostname).

"Domain ownership verification failed"

The relay verifies ownership via a TXT record. If verification fails:

"I sent mail but it didn't arrive"

  1. Check status at /account. The message will be marked sent, deferred, or bounced. See Reliability for what each means.
  2. If the status is sent, the recipient's mail server accepted the message. Check the recipient's spam folder. If it landed in spam, see DKIM/SPF/DMARC alignment below.
  3. If the status is deferred, the recipient's MX returned a 4xx. The relay will retry. See retry schedule.
  4. If the status is bounced, you'll receive a DSN at your bounce address (your sending domain's postmaster@ or your forward-to mailbox). The DSN explains why.

Mail landing in spam

Causes, in order of likelihood:

  1. You're in the warming tier. New domains take 14 days to build reputation; until then, some providers will be cautious.
  2. DKIM not aligned. Check dig +short TXT <selector>r._domainkey.yourdomain.com and confirm the record is published.
  3. Missing SPF. Check dig +short TXT yourdomain.com for a v=spf1 record.
  4. Content patterns. Heavy promotional language, lots of links, or no plain-text alternative pushes spam scores up. Send a plain text version alongside HTML.

"Replies aren't reaching me"

Reply forwarding is opt-in per domain. Confirm:

Back to docs