AWS Textract is a powerful AI service from Amazon Web Services designed to automatically extract printed text, handwriting, tables, forms, key-value pairs, and other structured data from scanned documents and images. Textract leverages advanced optical character recognition (OCR) and document analysis to transform documents into actionable data, enabling automation, analytics, compliance, and more.
With AWS Textract, you can:
- Extract text from images and documents: Recognize printed text and handwriting in formats such as PDF, JPEG, PNG, or TIFF
- Detect and extract tables: Automatically find tables and output their structured content
- Parse forms and key-value pairs: Pull structured data from forms, including fields and their corresponding values
- Identify signatures and layout features: Detect signatures, geometric layout, and relationships between document elements
- Customize extraction with queries: Extract specific fields and answers using query-based extraction (e.g., "What is the invoice number?")
In Sim, the AWS Textract integration empowers your agents to intelligently process documents as part of their workflows. This unlocks automation scenarios such as data entry from invoices, onboarding documents, contracts, receipts, and more. Your agents can extract relevant data, analyze structured forms, and generate summaries or reports directly from document uploads or URLs. By connecting Sim with AWS Textract, you can reduce manual effort, improve data accuracy, and streamline your business processes with robust document understanding.
Usage Instructions
Integrate AWS Textract into your workflow to extract text, tables, forms, and key-value pairs from documents. Single-page mode supports JPEG, PNG, and single-page PDF. Multi-page mode supports multi-page PDF and TIFF.
Actions
textract_parser
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
file | file | No | Document to be processed (JPEG, PNG, or single-page PDF). |
Output
| Parameter | Type | Description |
|---|---|---|
blocks | array | Array of Block objects containing detected text, tables, forms, and other elements |
↳ BlockType | string | Type of block (PAGE, LINE, WORD, TABLE, CELL, KEY_VALUE_SET, etc.) |
↳ Id | string | Unique identifier for the block |
↳ Text | string | The text content (for LINE and WORD blocks) |
↳ TextType | string | Type of text (PRINTED or HANDWRITING) |
↳ Confidence | number | Confidence score (0-100) |
↳ Page | number | Page number |
↳ Geometry | object | Location and bounding box information |
↳ BoundingBox | object | BoundingBox output from the tool |
↳ Height | number | Height as ratio of document height |
↳ Left | number | Left position as ratio of document width |
↳ Top | number | Top position as ratio of document height |
↳ Width | number | Width as ratio of document width |
↳ Polygon | array | Polygon coordinates |
↳ X | number | X coordinate |
↳ Y | number | Y coordinate |
↳ Relationships | array | Relationships to other blocks |
↳ Type | string | Relationship type (CHILD, VALUE, ANSWER, etc.) |
↳ Ids | array | IDs of related blocks |
↳ EntityTypes | array | Entity types for KEY_VALUE_SET (KEY or VALUE) |
↳ SelectionStatus | string | For checkboxes: SELECTED or NOT_SELECTED |
↳ RowIndex | number | Row index for table cells |
↳ ColumnIndex | number | Column index for table cells |
↳ RowSpan | number | Row span for merged cells |
↳ ColumnSpan | number | Column span for merged cells |
↳ Query | object | Query information for QUERY blocks |
↳ Text | string | Query text |
↳ Alias | string | Query alias |
↳ Pages | array | Pages to search |
documentMetadata | object | Metadata about the analyzed document |
↳ pages | number | Number of pages in the document |
modelVersion | string | Version of the Textract model used for processing |
textract_analyze_expense
Extract structured invoice and receipt fields using AWS Textract AnalyzeExpense
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
accessKeyId | string | Yes | AWS Access Key ID |
secretAccessKey | string | Yes | AWS Secret Access Key |
region | string | Yes | AWS region for Textract service (e.g., us-east-1) |
processingMode | string | No | Document type: single-page or multi-page. Defaults to single-page. |
file | file | No | Invoice or receipt to be processed (JPEG, PNG, or single-page PDF). |
filePath | string | No | URL to an invoice or receipt to be processed, if not uploaded directly. |
s3Uri | string | No | S3 URI for multi-page processing (s3://bucket/key). |
Output
| Parameter | Type | Description |
|---|---|---|
expenseDocuments | array | Detected expense documents with summary fields and line items |
↳ expenseIndex | number | Index of the expense document |
↳ summaryFields | array | Header fields such as vendor name, invoice date, and totals |
↳ lineItemGroups | array | Groups of line items (e.g., purchased items and their prices) |
↳ lineItemGroupIndex | number | Index of the line item group |
↳ lineItems | array | Individual line items within the group |
↳ lineItemExpenseFields | array | Fields for a single line item (description, quantity, price) |
documentMetadata | object | Metadata about the analyzed document |
↳ pages | number | Number of pages in the document |
modelVersion | string | Version of the AnalyzeExpense model used (multi-page/async only) |
textract_analyze_id
Extract identity document fields using AWS Textract AnalyzeID
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
accessKeyId | string | Yes | AWS Access Key ID |
secretAccessKey | string | Yes | AWS Secret Access Key |
region | string | Yes | AWS region for Textract service (e.g., us-east-1) |
file | file | No | Front of the identity document (JPEG, PNG, or PDF). |
filePath | string | No | URL to the front of the identity document, if not uploaded directly. |
fileBack | file | No | Back of the identity document, if applicable (JPEG, PNG, or PDF). |
filePathBack | string | No | URL to the back of the identity document, if not uploaded directly. |
Output
| Parameter | Type | Description |
|---|---|---|
identityDocuments | array | Detected identity documents with normalized fields |
↳ documentIndex | number | Index of the document page set |
↳ identityDocumentFields | array | Normalized fields such as FIRST_NAME, LAST_NAME, DATE_OF_BIRTH, DOCUMENT_NUMBER, EXPIRATION_DATE |
↳ type | object | Normalized field label |
↳ text | string | Field label text |
↳ confidence | number | Confidence score (0-100) |
↳ valueDetection | object | Detected value for the field, with a normalized value for dates |
↳ text | string | Field value text |
↳ confidence | number | Confidence score (0-100) |
documentMetadata | object | Metadata about the analyzed document |
↳ pages | number | Number of pages analyzed |
modelVersion | string | Version of the AnalyzeID model used for processing |