Reply Intel Join the beta

Turn inbound email replies into AI-ready JSON.

One API call tells your agent whether a reply is a yes, a no, a price question, an out-of-office or a bounce. You get the names, numbers and dates it mentions, the next action, and a flag when a person should look first.

Paste an email reply

This demo runs only the rules layer, in your browser (53.8% on our blind test). Nothing you paste leaves this page. The API adds a language model and reaches 85% on the same test.

JSON result

Press "Parse email" to see the result.

Where home-built reply handling breaks

Wiring an inbox to an LLM takes an afternoon. Keeping it right takes much longer. These failures come up again and again in public developer forums.

Auto-replies treated as real replies

Out-of-office messages and bounces get tagged as interest, or start reply loops between two bots. Ada's write-up describes loops running thousands of turns.

Quoted history pollutes the answer

The model reads your own pitch in the quoted thread and classifies that instead of the new reply. Make users ask how to keep only the latest message.

Fragile prompts and broken JSON

Everything lands in "other", sarcasm reads as praise, and one malformed response breaks the workflow. See this n8n thread.

How it works

Cheap, predictable checks run first. A model is only asked when the rules can't decide, and its answer is checked before you see it.

  1. Receive

    Forward a provider webhook (AgentMail, Resend, Amazon SES) or POST the email to /v1/parse.

  2. Clean

    Strip quoted history, signatures, legal footers and HTML. Keep the new reply.

  3. Catch automated mail

    Bounces and out-of-office replies are caught from headers and wording, at no model cost.

  4. Classify and extract

    Rules first, then a small model for unclear replies. Numbers and names must appear in the email, or they come back as null.

  5. Deliver

    A signed webhook to your workflow, with deduplication by Message-ID and retries.

The 15 intents every reply is sorted into

What we've measured so far

Most tools quote a single accuracy number with no test set behind it. Here is ours, including where it falls short. Measured on 7 November 2026 on 80 synthetic replies written by a separate author who never saw our rules (no customer data).

ConfigurationCorrect intentWrongly marked as interestedNotes
Rules + Llama 3.3 70B (what the API runs)85.0% (68/80)1 of 80Model cost about $0.42 per 1,000 emails at list price. Bounces 5/5. Misses: Spanish auto-replies, two phishing emails read as support.
Rules + GPT-OSS 20B78.8%4 of 80Cheaper, less accurate.
Rules + Qwen3 30B70.0%1 of 80Fast (about 0.6 s), often answers "unknown".
Rules + Granite 4.0 Micro67.5%2 of 80Cheapest, over-flags for review.
Rules only, no model53.8%3 of 80Used by the demo on this page. Good for bounces and auto-replies, not for human replies.

80 replies is a small sample: treat each figure as roughly plus or minus 8 points. Every output in every run matched the published JSON schema.

Built for teams wiring email into agents

AI SDR builders

Your agent sends from AgentMail, Gmail or Outlook. Reply Intel tells it who said yes, who asked for a discount, who is away until the 17th, and whose address bounced.

Automation agencies

One schema across every client instead of a prompt per client. Map our 15 intents to each client's CRM stages.

Support inbox triage

Separate complaints, refund threats and how-to questions from thank-you notes and auto-replies, with a review flag on the risky ones.

Integrations

Connects withHowStatus
Any app over HTTPPOST the email to /v1/parseBuilt and tested
n8nImportable workflow: Gmail trigger → Reply Intel → route by intentWorkflow file ready
AgentMailInbound webhook adapterTested with real messages
Cloudflare Email RoutingSend replies straight to your own Reply Intel addressBuilt, not yet deployed
Resend, Amazon SESSigned inbound webhooksAdapter written, not yet tested live
Make, ZapierHTTP module now, native app laterPlanned

API in one minute

Authenticate with a bearer key. Send the email. Get back a versioned event. Keys are issued during the private beta.

curl https://api.reply-intel.example/v1/parse \
  -H "Authorization: Bearer ri_live_…" \
  -H "Idempotency-Key: 7f1c2b" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "Jordan Lee <jordan@example-robotics.example>",
    "subject": "Re: Reply triage pilot",
    "message_id": "<abc123@mail.example>",
    "text": "Can you do 20% off for 300 seats?"
  }'
EndpointDoes
POST /v1/parseClassify one email and return the event. Supports Idempotency-Key and ?include_text=true.
POST /v1/webhooks/inbound/{id}Receive provider webhooks. Verifies the signature and rejects replays.
GET /v1/events, GET /v1/events/{id}List or fetch your events, newest first, with cursor pagination.
GET /v1/usageEmails parsed this month and quota left.
POST /v1/api-keys, DELETE /v1/api-keys/{id}Create or revoke keys for your own account.
GET /v1/schema, GET /healthThe JSON Schema for events, and a health check.

Errors always look like {"error":{"code":"rate_limited","message":"…","request_id":"req_…"}}. Your webhook receives X-Reply-Intel-Signature: t=…,v1=…, an HMAC-SHA256 of the timestamp and body.

Pricing

These are the prices we plan to test. Nothing is for sale yet: beta users get free access while we measure accuracy and cost.

Free

$0 / month

For trying the API.

  • 200 emails a month
  • All 15 intents and entities
  • Webhooks
  • No uptime commitment

Starter

$19 / month

For one agent or workflow in production.

  • 3,000 emails a month
  • LLM layer for unclear replies
  • Usage dashboard
  • Email support

Pro

$29 / month

For agencies and higher volume.

  • 10,000 emails a month
  • Custom labels mapped to your CRM
  • Stronger model for hard cases
  • Priority processing

Questions

Why not just call GPT from Make or n8n?

You can, and for a handful of replies a day it may be enough. Reply Intel adds the parts that take weeks to get right: stripping quoted threads, catching bounces and auto-replies without a model call, a fixed versioned schema, numbers and names checked against the email, deduplication, signed webhooks with retries, prompt-injection screening, and a published benchmark.

Do you store my emails?

The email body is processed and then discarded. We keep the JSON result for 30 days so you can fetch it again, then delete it. Reply text is returned only if you ask for it and is never stored.

Which AI model reads my emails?

Bounces and auto-replies are handled by rules with no model. Other replies go to Llama 3.3 70B on Cloudflare Workers AI, which Cloudflare lists as zero data retention. Every provider that processes email will be listed as a sub-processor before the beta opens.

Is the "certainty" field a probability?

No. It is a high, medium or low signal from the rules and model checks. It has not been calibrated as a probability, so don't treat it as one.

Which languages work?

English today. Out-of-office detection in Spanish, French and German is next, because auto-replies in those languages are common in outbound to Europe.

Who runs this?

An independent developer, in private beta. There is no SLA yet. If that matters for your use case, tell us when you apply.

Join the private beta

We're looking for a small group of developers who already handle email replies in an agent or workflow. You get free access and a direct line to the builder. In return, we'd like 20 minutes of feedback.

We only use your email to contact you about the beta. You can ask us to delete it at any time.