Password resets, receipts, and codes.
Email for product teams. One call from your app, CLI, or hosted MCP. You send from domains you own, and each delivery outcome comes back as a signed event.
A few lines from you.
An email made for them.
See how a recipient and template data become a receipt, password reset or welcome email.
const message = await samva.email.send({
"to": "maya@example.com",
"templateSlug": "order-receipt",
"templateData": {
"name": "Maya",
"orderId": "A-1042",
"total": "$48.00"
}
});Your receipt for order A-1042
Hi Maya,
Good things, on the way.
Thanks for your order. We’ve received your payment and we’re getting everything ready.
Questions about your order? Just reply to this email.
Send once, even when you retry.
- A typed SDK generated from the spec, REST when you want it
- Same key and payload for 24 hours, so a retry does not mean a duplicate
- Pass a recipient and a template, get a message id back
A retried send with the same key and payload resolves to the original message for 24 hours.
Send from a domain you own.
- SPF, DKIM, and DMARC set up on domains you own
- Every bounce and complaint feeds suppression for you
- Delivery telemetry you can check on each send
Bounces and complaints feed suppression on their own, so one dead address stops getting mail.
Know what happened to each send.
- Delivery, bounce, and complaint arrive as signed webhooks
- Verify each event against the raw body with the SDK
- The queue retries with backoff and delivers at least once
Signed on every delivery, retried with backoff.
Every email your product sends.
One send call underneath all of it.
Password resets
Reset links and one-time codes that arrive before the user gives up.
Order receipts
Confirmations from a template you pinned and can roll back.
Account notifications
Security and billing alerts sent from a domain you authenticate.
Onboarding steps
Welcome and verification mail sent from your own domain.
Reply-driven support
Replies land back in your app, threaded to the customer.
More from the email API.
Common questions.
What is a transactional email API?
An HTTP API you call to send one email triggered by a user action, like a password reset, order confirmation, or one-time code. You pass a recipient and a body or template, and Samva sends the email and reports back on delivery.
How do I avoid sending an email twice?
Pass a stable Idempotency-Key with the send. For 24 hours, a retry with the same key and payload returns the original message. Reusing the key with different content in that window returns a conflict.
How do I track whether a message was delivered?
Subscribe to delivery webhooks. Samva emits signed events for acceptance, delivery, bounce, and complaint, each verifiable against the raw body, so your app reacts to the outcome of every send.
What do I need before sending from my own domain?
Publish the DKIM and MAIL FROM records Samva generates for your domain. DMARC is an optional policy you keep or set separately; once the domain verifies, Samva signs outgoing mail with DKIM.
Can I change an email without touching send code?
Yes. Templates are versioned and rendered on our side. Edit and publish a new version in the dashboard, and the pinned version is the one that sends, so the email and your send code stay apart.
Send the first transactional email today.
Sign up and send your first email in minutes.