Migrate from Mandrill to Notify
Leave Mailchimp Transactional (Mandrill) for Notify’s flat HTTPS send API.
Mandrill (Mailchimp Transactional) is transactional mail tied to the Mailchimp ecosystem. Notify is standalone and minimal: one send call, webhooks, and logs — no marketing parent surface. Pro is $10/month for 10,000 emails.
What changes
| Mandrill | Notify | |
|---|---|---|
| Recommended client | @mailchimp/mailchimp_transactional (messages.send) | One fetch — no SDK required |
| Auth | API key in JSON body (key) | x-api-key header |
| Endpoint | POST https://mandrillapp.com/api/1.0/messages/send.json | POST https://notify.cx/api/email/send |
| Body | Nested message.html / message.text | Flat message |
| Product surface | Mailchimp Transactional add-on | Minimal dashboard |
Before / after
Mandrill (official @mailchimp/mailchimp_transactional SDK)
import mailchimp from '@mailchimp/mailchimp_transactional';
const client = mailchimp(process.env.MANDRILL_API_KEY!);
await client.messages.send({
message: {
from_email: 'noreply@acme.com',
to: [{ email: 'user@example.com', type: 'to' }],
subject: 'Welcome',
html: '<h1>Welcome</h1>'
}
});
Notify (one fetch — no SDK required)
await fetch('https://notify.cx/api/email/send', {
method: 'POST',
headers: {
'x-api-key': process.env.NOTIFY_API_KEY!,
'Content-Type': 'application/json'
},
body: JSON.stringify({
from: 'noreply@acme.com',
to: 'user@example.com',
subject: 'Welcome',
message: '<h1>Welcome</h1>'
})
});
Migration checklist
- Sign up and copy an API key from Credentials
- Verify your domain
- Replace Mandrill key usage with
NOTIFY_API_KEY+x-api-key - Flatten nested
message.html/message.textinto Notifymessage - Point webhooks at Notify (docs) — Pro or Scale
- Confirm sends in logs