ETL / Parser Agent

Any input.
One exact schema out.

Inbound emails, free-form text, and messy PDFs rarely arrive in the shape your systems need. ETL / Parser Agent reads them and produces exactly the JSON or Pydantic schema your pipeline expects — validated before it ever reaches a table.

Structured Extraction Schema Validation
Structured Extraction

From free text
to a validated record

The agent reads the raw input — an email body, a scanned PDF, a copy-pasted block of text — and extracts every field your schema requires, flagging what it could not confidently fill in rather than guessing.

  • Works against any target schema — JSON Schema or Pydantic models you already define
  • Extracts from email bodies, PDFs, scanned documents, and free-form text alike
  • Missing or ambiguous fields are flagged for review, never silently guessed
  • Output is validated against the schema before it's handed to the next step
See It in TotalApp
totalapp.app / pa
Inbound Email → Schema
1 Raw email: "PO #4471, 120 units @ $18.50, ship by Fri"
2 Extracted: {po_number, quantity, unit_price, ship_by} — all fields matched
Validated against your PurchaseOrder schema before insert.
Live in TotalApp
Schema Validation

Bad data never
reaches your tables

Every extraction is checked against the schema's types, required fields, and constraints before it's accepted. A record that doesn't validate is routed for human review instead of silently corrupting downstream data.

  • Type, required-field, and constraint checks run before any write
  • Failed validations are routed to a review queue, not discarded or force-fit
  • Works the same way whether the source is an email, PDF, or webhook payload
  • Pairs naturally with Reconciliation Agent for two-sided data matching
See It in TotalApp
totalapp.app / va
Validation Queue
3 records validated and inserted automatically
! 1 record missing required field "ship_by" — sent to review
Nothing malformed is ever written silently.
Live in TotalApp
Why It Matters

Reliable structure from unreliable input

The messiest part of any pipeline — turning real-world input into clean data — handled consistently.

Any Input Format

Emails, PDFs, scanned documents, and free-form text — all parsed against the same target schema.

Pre-Write Validation

Every record is validated before it reaches your database — malformed data never slips through.

Flags, Never Guesses

Ambiguous or missing fields are surfaced for review instead of being filled with a best guess.

Drop Into Any Workflow

Deploys as a Workflow Editor node — wire it after any inbound trigger: email, webhook, or upload.