# Summarize

> Summarize node for a grounded answer across a document up to 1,000 pages, returning citations back to the source, with its configuration fields and output variables.

The Summarize node reads a document and returns a grounded answer to a task you describe, with citations back to the source. Use it when a step in your process needs a synthesized answer across a long document — not a fixed set of typed fields.

## How it works

The node sends the document and the synthesis task to the underlying synthesis model, which reads across the content and returns the result with citations to the passages it relied on. The node handles up to 1,000 pages in a single call.

Unlike the [Summarize agent tool](summarize.md), the Summarize node runs deterministically as a step in the flow. The flow always executes it at the point where you place it, without an agent deciding when to invoke it.

![Summarize node on the canvas with its properties panel open, showing the Attachment, Prompt, Citations, and Error handling sections.](https://dev-assets.cms.uipath.com/assets/images/maestro/flow-document-processing-summarize-properties-4eea2d68.webp)

## Configuration

Configure the Summarize node in the properties panel after adding it to the canvas.

| Field | Required | Default | Description |
|---|---|---|---|
| **Summarize Task** | Yes | None | What to research across the document, what to synthesize, and how to present the result. Describe it in plain language. |
| **Source (file)** | Yes | None | Document to synthesize. Bind it to a file produced earlier in the flow, such as an attachment from a trigger or a prior node output. |
| **File extension** | No | `pdf` | Format of the source file. Supported values are `pdf` and `txt`. |
| **Citation mode** | No | **Enabled** | Whether the result includes inline citations back to the source. This field appears only when **File extension** is set to `pdf`. |

## Output

The Summarize node returns its result at `$vars.<nodeName>.output`.

| Variable | Description |
|---|---|
| `output` | Synthesized result as a string, with citations when Citation mode is enabled. |
| `error` | Error details when the node fails. Contains `code`, `message`, `detail`, `category`, and `status`. Available when the node's error handle is connected. |

## Reading the result

The result is a plain string at `$vars.<nodeName>.output`:

```javascript
$vars.summarize1.output
// "The contract requires a 30-day notice period for termination (§ 12.1)..."
```

The string may include inline citation markers referencing the source document pages, depending on the Citation mode setting.

## Error handling

The Summarize node supports an error handle. If synthesis fails and the error handle is connected, execution routes to the error path with the error object at `$vars.<nodeName>.error`. Refer to [Error handling](flow-error-handling.md) for more information.

## Notes

- The Summarize node and the [Summarize agent tool](summarize.md) use the same underlying synthesis capability. Choose the node when the step is deterministic; choose the agent tool when an Autonomous Agent should decide when to invoke it.
- For pulling structured, typed fields from a document, use the [Extract](node-extract.md) node instead.
