The Extract Entities agent performs schema-driven entity extraction from documents and text. You define an extraction schema -- a list of columns with names, types, and descriptions -- and the agent uses an LLM to fill each column from the input, returning structured values with source citations.
Use Cases
- You need to pull structured data from unstructured documents (invoices, contracts, resumes, forms).
- A downstream agent or integration requires specific fields extracted from a document.
- You want to populate a database, CRM, or ticketing system with data extracted from incoming documents.
- You need to combine a document with additional context (e.g., extracted entities from an upstream agent) before extraction.
| Input | Type | Required | Description |
|---|
documents | List of Documents | No | The documents to extract from. Provide either documents or text_input. |
text_input | Text With Sources | No | Plain text to extract from. Provide either documents or text_input. |
named_inputs | Any (multiple) | No | Additional context from other agents. Shown in the builder as Additional Context. Supports Text with Sources, Text, Search Results, JSON, Extraction output, Documents, and Enum. |
Outputs
| Output | Type | Description |
|---|
extraction_columns | List of Extraction Columns | The populated extraction columns -- each column from your schema returned with its extracted value and source citation. |
Configurations
| Parameter | Description | Default |
|---|
| Extraction Columns | The schema defining what to extract. Each column has a name, description, and type. See Configuring Extraction Columns below. | Required |
| Instructions | Additional extraction guidance for the LLM (e.g., "Dates should be in ISO format" or "Treat all prices as USD"). | None |
Configuring Extraction Columns
Each extraction column supports:
- Name -- a unique field name used as the output key.
- Description -- tells the LLM how to find this value. Be specific: "The total amount due on the invoice, including tax" is clearer than "Amount".
- Type -- the data type expected for the extracted value. Supported types:
- Text -- a string value.
- Number -- an integer or decimal.
- Boolean -- true or false.
- Group -- a nested object with its own sub-columns. Useful for extracting structured sub-records (e.g., a list of line items on an invoice).
- Enum mode -- optional toggle that restricts the extracted value to a fixed set of possible values you define.
Advanced Configurations
| Parameter | Description |
|---|
| Fusion Model Config | Selects the LLM and reasoning settings used for extraction. |
| Data Protection Config | Privacy controls that filter or mask sensitive content before sending to the LLM. |
| Send entire documents as search result | When enabled, sends the full document to the LLM rather than snippets matched to each column. Useful for short documents or when full context matters; increases token usage. |
| Disable Sources | When enabled, clears source citations from the output. The extraction still uses the source documents, but no citation links are returned. |
How to Use This Agent
Extract key fields from an invoice and create a record:
document_trigger -> extract_entities -> intelligent_actions("Create record in accounting system") -> workflow_output
- JSON Extractor -- for extracting values from already-structured JSON, not from unstructured text.
- Custom Agent -- for ad-hoc extraction when you do not need a formal schema.
- Tag Extractor -- for extracting tags/labels rather than structured entities.