home/migrations/from Resend
// migrate from

leave Resend. keep the work.

mailexodus reads Resend over its API and normalizes subscribers, segments, custom fields, suppressions into one portable schema — so you move with a report, not a 40-item checklist.

agentUse mailexodus skill: Resend → Sequenzy playbook
// try it

see what moves out of Resend.

A live route check, computed from Resend's real API surface. Pick any destination to compare import support — nothing is written.

analyzing Resend
source modeAutomated adapter
source exports7
Mailchimp imports8
destination gapsautomations
data leaves machineno · dry-run
$npx mailexodus@latest migrate --from resend --to mailchimp --dry-run
agentUse mailexodus skill: ResendMailchimp playbook
// why teams leave

why teams leave Resend.

  • Resend migrations need an explicit boundary around what the API exposes.
  • Teams want a dry-run report before rebuilding subscribers, segments, custom fields, suppressions.
  • Some automation coverage is reconstructed from available metadata
// transfer boundary

what mailexodus pulls from Resend.

can migrate
  • +
    subscribers
  • +
    segments
  • +
    custom fields
  • +
    suppressions
  • +
    campaigns
  • +
    templates
  • +
    automations
needs review
  • ?
    Some automation coverage is reconstructed from available metadata
cannot migrate
  • x
    lists
  • x
    tags
  • x
    sender reputation and domain warmup
  • x
    historical analytics, revenue attribution, and aggregate reporting
  • x
    contacts already mid-flight inside active automations
  • x
    A/B test results and provider-specific experiment history
  • x
    provider-native design blocks, product widgets, coupons, and private assets that are not exposed by API
source adapter

Automated adapter

Contacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory

Some automation coverage is reconstructed from available metadata

// the playbook

how an agent migrates Resend → Sequenzy.

This is exactly what mailexodus hands your agent: authenticate, then for each object type — read it from Resend, map it to the portable schema, write it to the destination. mailexodus never writes; your agent does, with this report in hand.

01 · authenticate

In Resend, open API Keys, then create or copy a key with read access to contacts, segments, contact properties, broadcasts, templates, and automations

01subscribersmigrates
readGET /contacts (Read subscribers from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePOST add_subscriber (Write or stage subscribers in Sequenzy.) PATCH update_subscriber (Write or stage subscribers in Sequenzy.)
02segmentsmigrates
readGET /segments (Read segments from Resend.) GET /segments/{segment_id}/contacts (Read segments from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePOST create_segment (Write or stage segments in Sequenzy.)
03custom fieldsmigrates
readGET /contact-properties (Read custom fields from Resend.) GET /contacts (Read custom fields from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePATCH update_subscriber.customAttributes (Write or stage custom fields in Sequenzy.)
04suppressionsmigrates
readGET /contacts (Read suppressions from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePATCH update_subscriber.status (Write or stage suppressions in Sequenzy.)
05campaignsmigrates
readGET /broadcasts (Read campaigns from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePOST create_campaign (Write or stage campaigns in Sequenzy.)
06templatesmigrates
readGET /templates (Read templates from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePOST create_template (Write or stage templates in Sequenzy.)
07automationsmigrates
readGET /automations (Read automations from Resend.)
mapContacts map to subscribers. Segments map to segments. Contact properties map to custom attributes. The contact unsubscribed flag maps to suppression state. Broadcasts map to campaigns. Templates and automations map to content and workflow inventory mailexodus renders normalized provider data into destination subscribers, lists, segments, campaigns, sequences, and review notes.
writePOST create_sequence (Write or stage automations in Sequenzy.) POST insert_sequence_step (Write or stage automations in Sequenzy.)
stays behind
  • lists
  • tags
  • sender reputation and domain warmup
  • historical analytics, revenue attribution, and aggregate reporting
  • contacts already mid-flight inside active automations
  • A/B test results and provider-specific experiment history
guardrails
  • Sender reputation is earned at the destination — set up SPF/DKIM/DMARC and a warmup ramp; it does not transfer.
  • Keep the source platform active until authentication, warmup, and in-flight automations have finished.
  • Honor suppressions before the first send.
  • After writing, verify counts per object type against the source before switching live sends.
// run it

guide your agent, or follow it yourself.

Pull the full playbook from the skill prompt, CLI, or MCP server, then work the steps. Start by confirming credentials: In Resend, open API Keys, then create or copy a key with read access to contacts, segments, contact properties, broadcasts, templates, and automations

inspect

provider coverage

npx mailexodus@latest info resend

guide

agent playbook

npx mailexodus@latest guide --from resend --to sequenzy

agentUse mailexodus skill: Resend → Sequenzy playbook