Inbound email, parsed and threaded.
Receive replies at an address on your own domain. Parsed, threaded into a conversation, and delivered to your app as a signed event.
Replies land in a conversation, not a mailbox.
Samva threads a reply by its references, with subject and participants as fallback, and starts a new conversation when nothing matches. Related mail stays under one conversation instead of a mailbox you reconcile yourself.
-> outbound "Your order shipped" msg_01hv8kq2
<- reply "Which day exactly?" msg_01hx2p7d
-> outbound "Thursday, by noon." msg_01hx9r4kReplies arrive already parsed.
- Mail that reaches your endpoint is already parsed, so you never unwrap raw mail yourself
- You can tell a reply carried a file without opening the payload
- Automated bounces and out-of-office replies are flagged apart from a message someone typed
Inbound mail arrives already parsed, so your handler works with fields, not raw mail.
One conversation, every message in order.
- Replies arrive attached to a conversation, matched by references, subject, and participants
- Threading is part of the data model, not a convention you maintain yourself
- Fetch the full history behind any message with the conversation's id
One conversation keeps every message, sent and received, in a thread you can fetch by id.
Received as a signed event you can trust.
- A signed webhook fires when an inbound message matches a registered endpoint
- Every event carries Standard Webhooks headers you verify against the raw body before you act on it
- A non-2xx response gets retried by the delivery queue
Verify the signature against the raw body before you act on it. A non-2xx response gets retried by the delivery queue.
Every way a reply reaches your app.
Each one arrives as the same event shape.
Support replies
A customer's reply lands back in your app, threaded to the ticket that started it.
Reply-to-thread
A conversationId ties the reply to the exact message it answers.
Attachment-aware
A hasAttachments flag tells you a reply carried a file before you open it.
Bounce and auto-reply filtering
An isAutoReply flag keeps automated bounces out of a queue meant for people.
The rest of the email channel.
Common questions.
How does inbound email work?
Point your domain's mail records at Samva once. From there, replies are parsed, threaded into conversations, and delivered to your app as signed webhooks.
How does a reply get threaded?
Samva threads a reply by its references, falling back to subject and participants, and starts a new conversation when nothing matches. Threading is part of the data model, so related mail stays in one conversation instead of a mailbox you reconcile yourself.
What does an inbound webhook contain?
What you need to act on a reply: the sender and subject when present, the conversation it belongs to, and whether it carried attachments or looked automated. It is signed like every Samva event.
Where does inbound email arrive?
At an address on a domain you have verified with Samva. Once the domain's records are published and verified, mail sent to it routes to Samva for parsing and delivery to your endpoint.
Handle the first reply today.
Sign up and route inbound email into your app as structured events.