A free, Resend-compatible email API for your app
Your product writes to your users — invoice, alert, password reset. The Mailcheer API replaces your sending service, with the same fields as the one you are leaving.
Read mailcheer.com/app/install and connect Mailcheer for me.What the agent can do
- Send your transactional email: welcome, confirmation, invoice, alert.
- Then know whether it was delivered, bounced, or reported as spam.
- Add and unsubscribe contacts from your code, double opt-in included.
- Create a campaign and send it, if the key carries that right.
- Never send twice, thanks to the idempotency header.
What it cannot do
- Send anything with a key you did not grant sending rights to.
- Send from an address whose domain is not verified in your workspace.
- Send a campaign to someone who unsubscribed, or write to an address that hard-bounced.
- Remove an address from the suppression list — no tool allows it.
- See any workspace other than the one its key belongs to.
Connection details
| Surface | REST API, called from your code — no library to install |
|---|---|
| Connection | API key in a Bearer header, one per calling service |
| Scope | One Mailcheer workspace per key, with the rights you tick |
| Revocation | One click under Settings → API, effective on the next call |
Three things to know before you connect your code: you verify the sender's domain in your Mailcheer workspace, an address that hard-bounced, or that reported you as spam, is refused for single sends too, and those sends count against your plan's monthly quota.
Connected in 3 steps
Create a key in your Mailcheer workspace: Settings → API → New key, with “emails:send”.
Put it in your service's environment variables, like any other secret.
Change the base URL of your sending calls. The fields and the response do not move.
What you can ask
Six examples to copy, from the first draft to domain health.
Campaigns
Send the welcome email on every confirmed sign-up.
Trigger the announcement campaign when I publish a new release.
Subscribers
Subscribe new customers to the Product list, with double opt-in.
Cleanly unsubscribe deleted accounts, everywhere.
Domain & deliverability
Use my dedicated sending subdomain for transactional email.
Surface bounces in my monitoring tool.
Useful access, clear limits
One key, one workspace
Every key belongs to a single Mailcheer workspace. Your other brands or clients stay invisible to the agent, with nothing to configure.
You tick what the key may do
Seven rights, chosen at creation: send emails, read subscribers, change them, read campaigns, send them, read webhooks, manage them. A key without sending rights can never send, whatever the agent is told.
Revoke in one click
One click under Settings → API cuts the key. The next call is refused, and your other keys keep working.
Frequently asked questions
No conversation here: it is your code talking to Mailcheer. The other pages connect an agent you steer; this one connects your product.
No. An ordinary HTTP call is enough, in any language. The OpenAPI file lets you generate a client if you want one.
Yes, like campaigns: same sending account, same bill. /api/v1/me tells you how many emails you have left this month.
Yes: an unsubscribe only stops bulk sends, the ones that carry unsubscribe_url. An address that hard-bounced, or that reported you as spam, is refused for every send, with the reason. One workspace is enough for transactional email and your newsletter.
One kind of key, and it really sends: you can't send by mistake with a key you took for a test one. To try things out, use the Amazon SES simulator addresses, such as success@simulator.amazonses.com.
Your product already knows how to write. Give it a sending address.
Read mailcheer.com/app/install and connect Mailcheer for me.