You send a raven. It comes back.
Sending is the easy half. What makes email usable by software is reading the reply — threaded to what it answers, with the quoted history stripped out — and being able to constrain what an autonomous caller is allowed to do with it. Every other email API stops at the outbound leg.
Read the docs
Replies come back
Inbound mail is parsed and threaded against the Message-ID we stamped on the message it answers — an exact join, never subject matching, so two customers replying to “Re: Invoice” never end up in one conversation.
GET /v1/threads?awaiting_reply=true answers the only question that matters when deciding what to do next.
Quoted history removed
The raw body of a third reply is mostly the first two quoted back. We hand you the sentence the person actually typed, and keep the untrimmed version for when the trim gets it wrong.
Limits on the credential
A daily send cap, a recipient allowlist, and an optional hold for human approval — all on the API key, checked on every send. A workspace quota only trips after an agent has already mailed thousands of people.
Native to tool use
39 MCP tools over the same REST API. /openapi.json and /llms.txt are unauthenticated, so an agent can work out what it is holding before it has a key.
It refuses bad campaigns
Bounce and complaint rates are checked before a campaign starts, and the send is refused short of the thresholds that get an account reviewed. The check sits in the send path, not on a dashboard.
Unsubscribe actually stops mail
Opting out suppresses the address and cancels everything already queued for it. Doing only the first is how a working unsubscribe still delivers day three of a sequence.