Documentation
Email that arrives.
Transmit is a transactional email and SMS API. One plan, credits that do not expire, and a sender list we are picky about — which is the whole reason the inbox is not picky about you.
Your first requestcurl -X POST https://api.transmit.dev/v1/emails \
-H "Authorization: Bearer tr_v2_…" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"from":"hello@yourdomain.com","to":"you@example.com","subject":"It arrived.","text":"Nobody noticed. That is the job."}'How it is shaped
You send one message per request and get a receipt back. The receipt says the message was accepted, not that it was delivered — delivery is a later fact, and it arrives on your webhook. Nothing about the API pretends otherwise.
- One plan. $9 a month, $0.50 per thousand emails, credits that never expire. There is no free tier, which is what keeps the neighbourhood quiet.
- Transactional first. Email supports broadcasts through campaigns; SMS is transactional only, rendered from a template you have had approved.
- Scoped keys. A key carries the scopes you give it, and a call without the scope it needs is refused rather than partly served.
- Billed calls are idempotent. Sends take an
Idempotency-Key, so a retry after a timeout cannot charge you twice.
Where to start
The quickstart gets a domain verified and a message sent. If you are moving from somewhere else, migrating is shorter than you expect: we answer Resend and SendGrid request shapes at their own paths, so an existing integration usually needs a base URL and a key.