Skip to main content
This workflow reads an email body and pulls out who wrote it, what they want and how urgent it is. The API takes files only, so the email body goes up as a .txt file; the Python SDK does that for you when you pass text=.
The email
What comes back
sender_name99%
company_name99%
inquiry_type98%
urgency99%
topics
NodesParse → ExtractCredits60 per pageYou get

The graph

Run and read

Send the email body as a text file. Any .txt works; a saved .eml works too and keeps the headers.

What comes back

The run above, trimmed. It took 10 seconds.
Response
Every field also carries verification_status and value_override. Runs and results has the full envelope, section by section.

When it goes wrong

Your topics field looks like a single topic. A multi_select value arrives as one comma-separated string: "enterprise, pricing, security, integration". Split on ", " to get the list back. A good lead is rejected on a low confidence. The summary above scored 4%. A generated sentence is not quoted from the email, so it has no source phrase to score against, and it scores low even when it is right. Gate on the extracted fields, and never on the summary. Two inquiry types keep swapping. pricing and demo_request read alike to a model given only their names. The enum_options descriptions are what separate them, so write the description that names the close case: “Pricing or cost inquiry” against “Request for a product demo”. parse.blocks is empty and parse_confidence is null. A .txt upload has no layout to ground, so there are no blocks and no parse score. That is expected for text input. Gate a text pipeline on the extracted fields instead. A mailbox backs up. Create the workflow once and call upload and run per email. The submission limit is 60 requests per minute, so pace the queue rather than firing the whole inbox at once.

Next steps

Extract node

Field types, modes and smart lookup

Upload and run

Multipart fields, conflicts and idempotency

Classify node

Route each email type to its own Extract node

Field types

Every data type a field can take