Send an email
Permission required: emails:send.
Answers 202: Amazon has accepted the message, it is not delivered yet. Delivery is confirmed a few seconds later with GET /api/v1/emails/{id}.
Use the Idempotency-Key header: replaying a successful call returns the same response without a second send, for 24 hours. A refusal is not kept: once its cause is lifted, the same call with the same key goes out.
An address that unsubscribed from the workspace receives an individual email; with unsubscribe_url, the send is a newsletter or prospecting and is refused to it (422 suppressed_recipient). A bounce, a complaint or a manual suppression refuses both.
With a test key (mch_test_…), the same checks and the same response — but nothing goes out and the quota is not touched; events are simulated. See Test mode.
Request
- Base URL: https://mailcheer.com
- URL: https://mailcheer.com/api/v1/emails
- Auth: one of:
- HTTP bearer
- API key in header X-Api-Key
Headers
A unique value per send. Replaying a successful call (2xx) returns the same response, without a second send, for 24 hours after the first call. A refusal (402, 422, 423, 429…) is not kept: once its cause is lifted, send the same call with the same key and it goes out. The same key with a different body returns 409 idempotency_key_reused; an identical call still in progress, 409 idempotency_key_in_use with Retry-After.
Request body
Example request
{
"from": "Your brand <hello@yourdomain.com>",
"to": "customer@example.com",
"subject": "Your September invoice",
"html": "<p>Here it is, attached to this message.</p>",
"text": "Here it is, attached to this message.",
"cc": "accounting@example.com",
"bcc": "archive@example.com",
"replyTo": "support@yourdomain.com",
"reply_to": "support@yourdomain.com",
"headers": {
"X-Entity-Ref-ID": "order-4192"
},
"tags": {
"type": "order"
},
"unsubscribe_url": "https://yourdomain.com/unsubscribe/abc123",
"attachments": [
{
"filename": "quote-2026-09.pdf",
"content": "JVBERi0xLjQKJcfsj6IK…",
"content_type": "application/pdf"
}
]
}Response
Accepted by our sending provider.
Changes
No recorded changes to this operation across all 1 revision of this API.