Email parsing SaaS
Inbound mail, structured data.
Each workspace gets its own inboxes for accounts and leads. ParseMail stores the mail, keeps the fields you select, and sends those fields to the platforms you connect.
Demo login: demo@parsemail.dev / parsemail-demo
Inbound email
From: Billing <billing@northwind.example> To: invoices@emailparser.cloud Subject: Invoice INV-1042 from Northwind Date: Tue, 15 Sep 2026 10:04:00 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Hello, Please find invoice INV-1042 attached. Invoice # INV-1042 Total: $1,284.50 Due date: 2026-10-01 Account: 8821-44 Pay online: https://northwind.example/pay/INV-1042 Thanks, Northwind Billing
Parsed JSON
{
"invoice_number": "INV-1042",
"total": "1,284.50",
"due_date": "2026-10-01",
"from": "billing@northwind.example"
}01
Create an inbox
Each workspace inbox gets a unique address for accounts, leads, or invoices. Point Mailgun, SendGrid, or Postmark at it.
02
Select the fields
Regex or between-markers pick the values you want kept. The full message stays in Postgres.
03
Ship structured data
Each connected platform receives a JSON POST of those selected fields, signed with HMAC.
Built for product teams
- MIME parsing for raw RFC822, JSON parts, SendGrid, and Mailgun payloads.
- Selected fields stored per workspace and posted to HubSpot, Salesforce, Slack, or any JSON URL.
- API keys for listing inboxes and fetching parsed emails.
- A playground to iterate on rules before you wire production mail.
curl -X POST $APP_URL/api/inbound/$TOKEN \
-H 'content-type: application/json' \
-d '{"raw": "...eml..."}'
curl $APP_URL/api/v1/emails \
-H 'authorization: Bearer pm_live_…'