Agent workflows are built using modular blocks, each performing a specific function — from document ingestion to routing results or involving human review.
Below is a detailed overview of each block type and its use cases.
| Block | Purpose | Example Use Case |
|---|
| Upload | Run the workflow when files arrive. | Users manually upload PDFs or images for and process it as case or files. |
| Schedule | Run the workflow repeatedly at times you se | Run a workflow everyday at 9:00 AM. |
| Case Event | Run the workflow when a case moves to a stage you choose. | Send the case data to external system when case stage is changed. |
| Manual | A person chooses to run it. | Workflow |
| Block | Purpose | Example Use Case |
|---|
| Data Extraction | Extract structured data from a document using a trained model. | Parse invoice totals, vendor names, and dates from scanned PDFs. |
| Block | Purpose | Example Use Case |
|---|
| Merge JSON | Merge multiple JSON outputs into one structured payload. | Combine outputs from multiple model runs into a single data object. |
| Python Code (Pre-processing) | Run a small code snippet or AI-generated logic on input data before extraction. | Clean up raw text fields, normalize formats, or prepare data for extraction. |
| Block | Purpose | Example Use Case |
|---|
| Document Type Classifier | Automatically detect the type of document (e.g., invoice, receipt, ID). | Route each document to the correct extraction model based on type. |
| Block | Purpose | Example Use Case |
|---|
| Python Code (Post-processing) | Apply transformations or calculations to extracted data. | Compute tax values, reformat dates, or combine extracted fields. |
| Categorize with AI | Automatically group or label data into predefined categories. | Categorize transactions by expense type or client account. |
| Block | Purpose | Example Use Case |
|---|
| Human in the Loop | Pause the flow for manual review or decision-making. | Ask a human to verify a low-confidence extraction result before continuing. |
| Block | Purpose | Example Use Case |
|---|
| Router | Add conditional logic (IF/ELSE) based on extracted data values. | If total amount > $10,000 → send for review, else → auto-approve. |