Migration from Resend

If you are moving an existing Resend integration, the SuperSend TX send flow maps closely:

  • Bearer API keys
  • POST /emails with a familiar JSON body
  • Webhooks / activity for delivery outcomes

The main migration steps are:

  1. swap the base URL
  2. swap your API key to stx_...
  3. verify a sending domain in SuperSend TX
  4. update any provider-specific optional fields

Quick mapping

Resend SuperSend TX
https://api.resend.com https://api.supersendtx.com
re_... API key stx_... API key
POST /emails POST /emails
from must be verified from must be verified
dashboard activity dashboard activity + deliverability summary

Minimal curl diff

curl -X POST https://api.supersendtx.com/emails \
  -H "Authorization: Bearer $SUPERSENDTX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "you@yourdomain.com",
    "to": "user@example.com",
    "subject": "Hello",
    "html": "<p>It works.</p>"
  }'

Accepted payload aliases

SuperSend TX accepts a few migration-friendly aliases on the HTTP send API:

  • htmlBody or html_body -> html
  • textBody, text_body, or plain_body -> text
  • replyTo -> reply_to
  • scheduledAt -> scheduled_at

Attachment aliases are also accepted:

  • filename -> name
  • contentType -> content_type
  • content -> data
  • contentId -> content_id

These aliases are meant to make low-friction migrations easier; new code should still prefer the canonical field names in docs/examples.


Domain verification differences

Unlike provider-managed sandbox products, SuperSend TX expects you to verify your own sending domain for production traffic.

Before DNS is ready, you can still self-test with the shared sandbox sender:

{
  "from": "noreply@mail.supersendtx.com",
  "to": "you@example.com",
  "subject": "Sandbox check",
  "html": "<p>Sandbox works.</p>"
}

Sandbox restriction:

  • the sandbox from domain is only allowed when all recipients match the account email on the API key owner

Once your own domain is verified, switch from back to your branded domain.


DNS apply

SuperSend TX can write DNS for you in two ways:

  • Cloudflare: save a token once under Settings -> Integrations
  • GoDaddy: paste one-time API credentials on the domain detail page, or pass them through the SDK/CLI locally

See docs/api/domains.md.


SMTP

If your old integration still depends on SMTP, see docs/api/smtp.md.

Today, SuperSend TX does not mint account-scoped SMTP credentials; the recommended path is the HTTP send API.