Make a list first.
Write down your domains and the addresses you send from, the emails your app sends (resets, receipts, notifications), your templates and any inbound routes or webhooks. Mark the critical ones: password resets and receipts get tested first.
Copy your templates into Mailumi Templates and replace the old placeholder syntax with {{variable}} placeholders.
Verify your domain in parallel.
Add your domain in Mailumi and publish its records. Mailumi’s DKIM records use their own hostnames and the return path uses send.yourbrand.com, so they sit next to your current provider’s records without conflicts.
Keep the old records until all traffic has moved. If you receive email through your current provider, move inbound separately by changing the MX record last.
Swap the API call.
Most providers use the same idea: a POST with from, to, subject and html. Point your code at POST /api/v1/emails, send your Mailumi API key as a Bearer token and save the returned ID in your logs.
Sending through SMTP, for example from WordPress, Django, Laravel or Nodemailer? Change the host to smtp.mailumi.com, the port to 465 or 587, the username to mailumi and the password to a Mailumi API key. Nothing else in your code changes.
Roll out gradually: send a test, then a share of traffic behind a feature flag, then everything. Check Email activity at each step, and keep the old provider’s key until you are confident.
Field mapping from popular providers
| Mailumi | Resend | SendGrid | Mailgun | Postmark |
|---|---|---|---|---|
| from | from | from.email | from | From |
| to | to | personalizations[].to | to | To |
| subject | subject | subject | subject | Subject |
| html / text | html / text | content[] | html / text | HtmlBody / TextBody |
| reply_to | reply_to | reply_to | h:Reply-To | ReplyTo |
| attachments | attachments | attachments | attachment | Attachments |
Migration guide: common questions
- Will my emails stop while I switch?
- No. Verify your domain in Mailumi while your current provider keeps sending. Both can run side by side until all traffic has moved.
- Do I need to remove my old DNS records?
- Not during the switch. Mailumi’s records use different hostnames. Remove the old provider’s records once nothing uses them anymore.
- Is the Mailumi API similar to Resend’s?
- Yes. Both take from, to, subject, html, text, reply_to and attachments in a JSON POST, so moving usually means changing the URL and the API key.
- Can I keep sending through SMTP?
- Yes. Mailumi runs an SMTP server at smtp.mailumi.com on ports 465 (TLS) and 587 (STARTTLS). Log in with the username mailumi and an API key as the password. Email sent this way is handled like an API request and appears in Email activity.
- Can I bring my old email history?
- Keep your old provider’s logs for as long as you need them. Mailumi records everything from your first email onwards.
Sources
- Resend API reference: send email
- Twilio SendGrid v3 Mail Send API
- Mailgun API reference: send messages
- Postmark: send email with the API
Sources checked . Third-party features and prices may change.