> For the complete documentation index, see [llms.txt](https://docs.ai.insly.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ai.insly.com/nora/agentic-workflows.md).

# Agentic workflows

Agentic workflows are a second way to run work in Nora, next to classic submission processing. A request comes in by email, chat or API. Nora picks the right **workflow** and runs its **agents** one after another, then replies on the channel the request came in on.

The first workflow built this way is [agentic extraction](/nora/agentic-workflows/agentic-extraction.md). It reads documents into a submission, checks it, asks the sender for anything missing, and exports to Insly Ledger. These are the same steps as classic processing, run as separate agents.

{% hint style="info" %}
Classic submission processing, described in [Process a submission via API](/nora/configuration-guide/process-a-submission-via-api.md) and the [API documentation](/nora/api-documentation.md), is unchanged and still supported. Agentic workflows use their own email addresses and endpoints, separate from classic processing.
{% endhint %}

### Key terms

<table><thead><tr><th width="180">Term</th><th>What it means</th></tr></thead><tbody><tr><td><strong>Agent</strong></td><td>An HTTP service that does one job, such as extracting data or exporting to Ledger. Nora calls it with a standard request and reads back a standard result. An agent can be hosted by Nora or by you (for example, an n8n workflow).</td></tr><tr><td><strong>Workflow</strong></td><td>An ordered list of agent steps, plus a plain-language description of the requests it handles.</td></tr><tr><td><strong>Run</strong></td><td>One execution of a workflow. Its status is <code>pending</code>, <code>gathering_params</code> (waiting for the sender to supply something), <code>running</code>, <code>completed</code> or <code>failed</code>. It also records which step it is on.</td></tr><tr><td><strong>Parameters</strong></td><td>The inputs a run needs, such as the template to use or the documents to read. Nora asks the sender for anything missing. Steps can also pass values on to later steps, such as the <code>submissionId</code>.</td></tr><tr><td><strong>Conversation</strong></td><td>The messages and files a run belongs to. In the API it is called a thread (<code>threadId</code>). Agents read documents from it.</td></tr></tbody></table>

### How a request becomes a run

1. **Arrives.** The message and its files are stored on a conversation.
2. **Routing.** Nora decides what the message is. It may be a reply to a question Nora asked, a request for a named workflow, or a new request that Nora matches to the best workflow by its description. Small talk such as "thanks!" gets a short reply and starts nothing.
3. **Gathering.** If the request is missing a parameter, Nora asks for it and waits for the answer. This does not happen on the API, where everything is stated up front.
4. **Steps.** Agents run strictly in order, and each step gets the previous step's output. A step that fails stops the run. An optional step is the exception: if it reports a failure, the run carries on without it.
5. **Answer.** The last step's message is sent back on the same channel: an email reply, a chat message, or the result of an API poll.

### Ways to start a workflow

* [**Start a workflow by email**](/nora/agentic-workflows/start-a-workflow-by-email.md): send to your organisation's workflow address (`yourcompany+studio@…`).
* [**Run agentic extraction via API**](/nora/agentic-workflows/run-agentic-extraction-via-api.md): upload files, start a run and poll it for the result.
* **Chat:** a conversation in the Nora web app.

### Getting results out

Agentic workflows have no webhook events you can subscribe to. To get a run's result, poll it, as described in [Run agentic extraction via API](/nora/agentic-workflows/run-agentic-extraction-via-api.md#no-webhooks-polling-is-the-way-to-get-results).

### Building your own agents

A workflow step can be an agent you host. If you are building one, see [Build an agent](/nora/agentic-workflows/build-an-agent.md). That section is written for agent developers. API clients don't need it.

{% hint style="info" %}
Workflows and agents are set up for your organisation by Insly. To enable agentic workflows or register an agent, [reach out to us](/readme.md).
{% endhint %}
