Your email becomes an API
Stop maintaining brittle extraction pipelines. MailFrame turns raw email into typed, schema-validated JSON — returned synchronously via a single API call. One API call. One schema. Zero regex. (Inbox forwarding, webhooks, and PDF & image input are on the roadmap.)
Ingesting documents today is a maintenance nightmare
Every team building document ingestion ends up maintaining the same fragile infrastructure.
Regex Spaghetti
Hand-crafted regex patterns that break the moment Stripe changes their email template. You maintain parsers, not products.
Brittle GPT Wrappers
A Python script that calls GPT with a prompt. No schema validation, no typed output, no monitoring. Breaks silently in production.
Zapier Chains
Multi-step Zaps held together with duct tape. No error handling, no observability, no schema enforcement. Good for prototypes, dangerous in production.
Silent Bad Data
A field changes shape and malformed values flow straight into your database. Nobody notices until a customer does.
One request in, typed JSON out
Send raw email and a JSON Schema to POST /v1/parse — the same HTTP response carries typed, schema-validated JSON.
Direct API
Send raw email (MIME) plus JSON Schema via POST /v1/parse and get typed JSON back synchronously.
import { MailFrame } from "...";
const mf = new MailFrame({ apiKey: "..." });
const result = await mf.parse({
raw_mime: "From: receipt@stripe.com\n...",
schema_id: "stripe-receipt",
});
console.log(result.data);{
"id": "parse_abc123",
"status": "completed",
"data": {
"receipt_id": "pi_abc123",
"amount_cents": 2999,
"currency": "usd",
"paid_at": "2026-05-21T17:30:00Z",
"customer_email": "user@example.com",
"card_last4": "4242",
"card_brand": "visa"
}
}Roadmap On the roadmap, not yet available: inbox forwarding to a provisioned address, async and batch parsing, and signed webhook delivery.
Paste an email.Get JSON.
Try it yourself — runs in your browser, no signup. Paste any receipt, invoice, or order email below.
Press "Extract JSON" to see results
This preview runs entirely in your browser. It uses simple pattern-matching and never sends your text anywhere — so it only reports fields it can actually find. The production MailFrame API does more: LLM extraction against your own JSON Schema, returning typed, schema-validated JSON synchronously in the POST /v1/parse response.
Built for production, not prototypes
| Feature | MailFrame | DIY + GPT | Zapier | OCR Tools |
|---|---|---|---|---|
| Schema enforcement | Yes | No | No | No |
| Integration | One API call | Prompt + glue code | Multi-step Zap | Upload + post-process |
| Input formats | Email (PDF/image planned) | API only | Email only | Scanned documents |
| Pricing model | Per parse op | Per LLM token | Per task | Per page |
MailFrame is built for developers who need schema-validated JSON, with validation errors reported in the response instead of silently passed downstream.
On the roadmap, not yet available: inbox forwarding, signed webhooks, async and batch parsing, and confidence scoring.
What /v1/parsereturns
Illustrative emails and the synchronous JSON response each one returns — including how a schema mismatch is reported.
From: receipts@stripe.com Subject: Receipt from Stripe - pi_abc123 Date: Thu, 21 May 2026 10:30:00 -0700 To: user@example.com Thanks for your payment of $29.99 to Acme SaaS Inc. Receipt ID: pi_abc123xzy Amount: $29.99 Card: Visa ending in 4242
Request lifecycle
Engineering & updates
Money Amounts and Currencies in Email Extraction
Model prices from emails without rounding errors or guessed currencies: integer minor units, explicit currency codes, signed refunds, and source text for review.
Treat Parsed Email Data as Untrusted Input
A schema-valid POST /v1/parse result is still text an outside sender wrote. Constrain the schema and handle extracted fields safely downstream.
Ambiguous Dates and Time Zones in Email Extraction
Extract dates from emails without inventing a time zone: keep the source text, separate dates from instants, and route doubtful results to review.
Apply for Early
Developer Access
We're onboarding developers in batches to ensure quality. Submit your application and we'll follow up within a week.
No spam. No sharing your data. Rolling out weekly.