Skip to content
Email API

Send email in minutes. Get the replies back.

One typed call to send. Delivery events and replies come back as signed webhooks.

Start sending free

3,000 emails a month free. No card.

Email Samva, get a reply

Get a demo address, email it, and watch Samva reply in the same thread.

  1. Your email arrivesWe reply to mail that passes DMARC.
  2. We reply in the same threadOne call to the send API.
  3. We confirm deliveryAccepted by your mail server.
  4. Your reply comes backHit reply and say anything.

Preparing security verification.

Sending is the easy half.

Most email setups are a one-way pipe. Your app sends, the API returns a 200, and that is the last you hear. If the email bounces or gets suppressed, you find out when a user says their login link never came. When a customer hits reply, the answer lands in a noreply box or someone's Gmail, not in your app.

  • Silent failures

    Every call comes back 200, and nothing tells you the email never arrived.

  • Dead-end replies

    Customers answer your email. The reply never reaches the record it belongs to.

  • Plumbing you build

    Bounce handling, suppression, and a script to match replies to users. It works until it doesn't.

0018SAMVA · SENDada@acme.coRe:message.sentmessage.deliveredmessage.receivedSAMVA APImessages.send() · POST /v1/messages1YOUR CUSTOMERreceives it, replies2INBOUNDreply threaded into conv_5nz8qd3hv6r0wxkt3SIGNED WEBHOOKmessage.received to your app4DELIVERYmessage.delivered or message.bounced5
  1. SAMVA APImessages.send() · POST /v1/messages
  2. YOUR CUSTOMERreceives it, replies
  3. INBOUNDreply threaded into conv_5nz8qd3hv6r0wxkt
  4. SIGNED WEBHOOKmessage.received to your app
  5. DELIVERYmessage.delivered or message.bounced

sent 18 · delivered 18 · replies threaded 3

Fig 1.Samva sends the email and reports each delivery event. Your customer's reply is threaded into the conversation of the email it answers, and a signed webhook brings it back to your app.

Live in minutes, in three steps.

  1. Verify your domain.

    Add it, and Samva generates the DKIM and SPF records and checks your DMARC policy. If Cloudflare or Vercel hosts your DNS, connect it and they are added for you.

  2. Send.

    One typed call from the SDK, REST, or the CLI. Or hand the setup to your coding agent through hosted MCP.

  3. Hear back.

    Delivery events and replies arrive at your webhook, signed and retried. Replies thread to the email they answer.

import { createClient } from "samva";

const samva = createClient({ apiKey: process.env.SAMVA_API_KEY });

const { contact } = await samva.contacts.findOrCreate({
  lookup: { type: "email", value: "ada@example.com" },
});
await samva.messages.send({
  to: [contact],
  channel: "email",
  email: {
    subject: "Your invoice is ready",
    html: "<p>Invoice #1042 is ready.</p>",
    text: "Invoice #1042 is ready.",
  },
});

Everything the one-way pipe leaves out.

One thread, from send to reply.

The email you send, its delivery events, and the reply your customer sends back land on one conversation. Send the next email with that conversation id and it joins the thread. Your app reads it the way your support team would.

Exampleconv_5nz8qd3hv6r0wxkt
  1. 09:14message.sent“Your invoice is ready”
  2. 09:14message.deliveredada@example.com
  3. 11:02message.received“Can you add our VAT number to this?”
  4. 11:20message.sent“Re: Your invoice is ready”
The reply's message.received event carries the sender's address and the conversation id, so it finds its thread without a script.

Numbers we publish, and the code that enforces them.

Free tier

Every month, no card

3,000emails

Past your allowance

Any paid plan, one rate

$0.50/ 1,000

Webhook delivery

Automatic attempts, then the log

8attempts

Signed events

What reaches your endpoint for one email

  1. 09:41:02message.sentmsg_8f2c1qd3hv6r0wxk
  2. 09:41:04message.deliveredmsg_8f2c1qd3hv6r0wxk
  3. 10:17:55message.receivedconv_5nz8qd3hv6r0wxkt

Send latency

p50, production, API to accepted

140ms

Prices, limits, and retries are read from the code that enforces them.

A bill you can predict.

You are billed on emails sent. Past your plan, each extra email costs exactly $0.50 per 1,000, up to a spend limit you set ($50 by default). Raise it, lower it, or pause it in billing settings.

Free
$0/month
  • 3,000 emails/month
  • 1 sending domain
  • 1,000 contacts
Starter
$5/month
  • 15,000 emails/month
  • Templates, inbound, and webhooks
  • 5 sending domains
Growth
$19/month
  • 50,000 emails/month
  • Templates, inbound, and webhooks
  • 5 team members
Scale
$99/month
  • 300,000 emails/month
  • Templates, inbound, and webhooks
  • Priority support

Sending, templates, inbound, and webhooks come with every plan. Each plan includes an active-contact allowance. Pay in your own currency at checkout.

See full pricing

Check it before you sign up.

SPF, DKIM, and DMARC on your own domain, and your own sending reputation. Guides: Email authentication explained, Why emails go to spam.

Common questions.

What is Samva?

An email API for your app. You send transactional and product email with one typed call, and delivery events and customer replies come back to your app as signed webhooks, and replies thread to the email they answer. A dashboard shows every send.

How do replies get back to my app?

Turn on receiving for your domain. Replies are parsed, attached to the same conversation as the email they answer, and posted to your webhook as message.received. You can answer in the same thread.

Is there a free plan?

Yes. 3,000 emails a month, no card. Paid plans start at $5 a month for 15,000 emails.

Do you bill per contact?

You are billed on emails sent. Each plan also includes an active-contact allowance, listed on the pricing page.

What happens if I go over my plan?

Paid plans bill extra emails at exactly $0.50 per 1,000, up to a monthly spend limit ($50 by default) you can raise, lower, or pause. The free plan stops at 3,000.

Can my coding agent set it up?

Yes. Point an MCP client at mcp.samva.dev, or run samva login in the CLI. Your agent can send, read events, and edit templates; you publish what you reviewed.

Can I send from my own domain?

Yes. Add it, publish the records Samva generates (or connect Cloudflare or Vercel and they are added for you), and mail goes out from your address, signed with DKIM.

What about deliverability?

SPF, DKIM, and DMARC on your domain, bounces and complaints suppressed for you, and your own sending reputation. Every send has events you can check.

Send your first email in minutes.

Free for 3,000 emails a month. When a customer replies, you will see it land.