Migrate to SMTP Senpai: keep your code
SMTP Senpai accepts send requests in the same format as 14 transactional email APIs. Change the base URL and the API key; keep your paths, fields, SDK and error handling.
14 days free · up to 100 emails a day · card required · if you don’t cancel within 14 days, the plan you chose starts
- 14 request formats
- Sending servers and log in the EU
- 14-day free trial
Three steps, about five minutes
Get your key
In the SMTP Senpai area of your account, copy the API key that starts with msp_.
Verify your domain
Add the DNS records shown in the area: the sender must be on a verified domain signed with DKIM.
Change URL and key
Point your SDK or HTTP client to the base URL or dedicated host in the table, with your msp_ key. Where the original API has a test mode, try it first.
Base URL, host and key for each format
A. Base URL with path, for SDKs that accept a full URL. B. Dedicated host, for SDKs that only let you change the host name (Symfony Mailer DSNs, some Java, PHP and Ruby clients). After the base, the paths stay those of the original API.
| API format | A. Base URL | B. Dedicated host | Where the key goes | Guide |
|---|---|---|---|---|
| SendGrid | …/relay/compat/sendgrid | sendgrid-api.mailsenpai.com | Authorization: Bearer msp_… | Open SendGrid |
| Mailgun | …/relay/compat/mailgun | mailgun-api.mailsenpai.com | Basic auth, user api, password msp_… | Open Mailgun |
| Postmark | …/relay/compat/postmark | postmark-api.mailsenpai.com | X-Postmark-Server-Token: msp_… | Open Postmark |
| Resend | …/relay/compat/resend | resend-api.mailsenpai.com | Authorization: Bearer msp_… | Open Resend |
| Brevo | …/relay/compat/brevo/v3 | brevo-api.mailsenpai.com/v3 | api-key: msp_… | Open Brevo |
| Mailjet | …/relay/compat/mailjet | mailjet-api.mailsenpai.com | Basic auth: API key and secret key = msp_… | Open Mailjet |
| SparkPost | …/relay/compat/sparkpost | sparkpost-api.mailsenpai.com | Authorization: msp_… | Open SparkPost |
| Mandrill (Mailchimp Transactional) | …/relay/compat/mandrill/api/1.0 | mandrill-api.mailsenpai.com/api/1.0 | "key": "msp_…" in the JSON body | Open Mandrill |
| MailerSend | …/relay/compat/mailersend/v1 | mailersend-api.mailsenpai.com/v1 | Authorization: Bearer msp_… | Open MailerSend |
| Amazon SES | …/relay/compat/ses | ses-api.mailsenpai.com | Access Key ID and Secret Access Key = msp_… (any region) | Open Amazon SES |
| Elastic Email | …/relay/compat/elasticemail/v4 | elasticemail-api.mailsenpai.com/v4 | X-ElasticEmail-ApiKey: msp_… | Open Elastic Email |
| SMTP2GO | …/relay/compat/smtp2go/v3 | smtp2go-api.mailsenpai.com/v3 | X-Smtp2go-Api-Key: msp_… (or api_key in the body) | Open SMTP2GO |
| Postal | …/relay/compat/postal | postal-api.mailsenpai.com | X-Server-API-Key: msp_… | Open Postal |
| Plunk | …/relay/compat/plunk/v1 | plunk-api.mailsenpai.com/v1 | Authorization: Bearer msp_… | Open Plunk |
… = https://app.mailsenpai.com
The same rules for every format
Limits
Up to 50 recipients per message, 500 copies per request (over 50 they are queued and leave within about a minute), 10 attachments and 10 MB per message, 20 MB per request. Executable attachments are refused.
Templates and scheduling
Stored templates and scheduled sending are not supported: they are refused with the native error. Send the final content when you want it to leave.
Events and webhooks
Results come from the SMTP Senpai API: GET /relay/v1/eventi or a signed webhook. The id in each send response is the message_id of those events.
Suppression list
Addresses that bounced, complained or that you added are always held and recorded as dropped, whatever the request says.
Idempotency
Where the original API has it (Idempotency-Key, or headers.idempotencyKey for the Brevo format), a repeated request within 24 hours returns the first response without sending again.
Deliverability headers
List-Unsubscribe with One-Click, List-Id, Feedback-ID, Precedence and a few more are accepted and signed with DKIM. Headers that decide identity or routing are ignored and named in X-MailSenpai-Ignored.
Frequently asked questions
Do I need to change my code?
Only the base URL (or host) and the API key. Paths, fields, responses and error shapes stay those of the API you use today, so SDKs and error handling keep working.
Which SDKs have you tested?
For each format we ran the official Node.js SDK against the SMTP Senpai endpoints, and the Python SDKs for SendGrid, Resend and Amazon SES. Settings for other languages were read in the SDK source code and are marked as such on each page.
Are templates, scheduled sending and contact lists supported?
No. SMTP Senpai sends the content you give it, when you call it. Template, scheduling and list features of the original services are refused with their native error.
Where do I see bounces, opens and clicks?
In the SMTP Senpai log and through the SMTP Senpai API (GET /relay/v1/eventi) or a signed webhook, with the same key.
Can I also use SMTP?
Yes: relay.mailsenpai.com, port 2525 with STARTTLS, with the username and password in your SMTP Senpai area.
Try it with the code you already have
A 14-day trial: change the base URL and the key, send your real emails and check every result in the log. Then decide.
SendGrid is a trademark of Twilio Inc. or its affiliates. Mailgun and Mailjet are trademarks of Sinch group companies (Mailgun Technologies, Inc.; Mailjet SAS). Postmark is a trademark of the ActiveCampaign group (AC PM, LLC). Mailchimp and Mandrill are trademarks of The Rocket Science Group LLC, an Intuit company. Amazon SES, Amazon Web Services and AWS are trademarks of Amazon.com, Inc. or its affiliates. Brevo is a trademark of Sendinblue SAS. SparkPost is a trademark of the Bird group (formerly MessageBird). MailerSend is a trademark of MailerSend, Inc. Resend is a trademark of Plus Five Five, Inc. Elastic Email is a trademark of Elastic Email Inc. SMTP2GO is a trademark of Sand Dune Mail Ltd. Postal is open-source software (MIT licence, © Krystal Hosting Ltd and contributors). Plunk is an open-source project (useplunk) and a trademark of its owner. They are named only to describe the request formats SMTP Senpai accepts. MailSenpai is not affiliated with these companies or projects and this page is not approved by them. Information checked on 9 October 2026.