# Automate with Flows

> A flow is a trigger and a list of steps: create a desk, add a row, send an email, save knowledge, run an AI step or call a web address. Each run is logged.

Source: https://plexiidesk.com/help/brain-flows
Section: Brain > Build and connect
Plans: All plans
Updated: 2026-10-15

A flow runs a set of steps for you. You choose when it runs, such as every morning, whenever a table gets a new row, or only when you click **Run now**, and what it does, in order: create a desk, add a table row, send an email, add a knowledge entry, ask AI to write something, or call another service on the web. Each run keeps a log of every step, so you can see exactly what worked.

## Before you start

- **Every plan** includes Flows.
- **Some steps need something set up first:**
  - **Send an email** sends from the mail account you have connected in PlexiDesk. See [Connect your email account](https://plexiidesk.com/help/mail-connect-account).
  - **Run an AI step** needs AI. When you are signed in it runs on PlexiDesk credits, or you can use your own Anthropic key. See [AI credits and where your AI runs](https://plexiidesk.com/help/ai-credits).
  - **When a webhook is called** needs the local API switched on. See [Connect your own scripts and AI tools to Plexii](https://plexiidesk.com/help/brain-api-mcp).
- **Flows run while PlexiDesk is open.** Scheduled flows that come due while PlexiDesk is closed run the next time it is open.

## Create a flow

1. Open the **Brain** area and choose **Flows**.
2. Click **New flow**. A flow called **New flow** opens.
3. Click the title and give it a name, such as "Monday planning desk".
4. Choose when it runs, under **When**. See [Triggers](#triggers).
5. Add steps with the buttons after **Add step:**. Each step appears as a card. Fill it in. See [Steps](#steps).
6. Click **Run now** to try it.

A new flow is **Enabled**. Untick **Enabled** to stop it running on its own; **Run now** still runs it.

Changes save as you go: a text box saves when you click away from it.

## Triggers

| Choice under When | When the flow runs |
| --- | --- |
| **I run it manually** | Only when you click **Run now**. |
| **Every day**, **Every week**, **Every month** | On that schedule. PlexiDesk checks for due flows shortly after it opens, then every five minutes. |
| **When a task is completed** | Whenever a desk is marked complete. |
| **When a table row is added** | Whenever a row is added to any table. |
| **When a webhook is called** | Whenever something sends a request to the flow's own web address. See [Run a flow from a webhook](#run-a-flow-from-a-webhook). |

A flow started by a desk being completed or a row being added does not set off other flows, so flows cannot trigger each other in a loop.

## Steps

| Step | What it does | What to fill in |
| --- | --- | --- |
| **Create a desk** | Creates a new desk. | **Desk title**. |
| **Add a table row** | Adds a new, empty row to a table. | **Choose a table…** |
| **Send an email** | Sends an email from your connected mail account. | Recipients, separated by commas, **Subject** and **Body**. |
| **Add a knowledge entry** | Adds an entry to Ask Brain. | **Entry title** and **Entry body**. |
| **Run an AI step** | Asks AI to write something, from your prompt. | The prompt. |
| **Call a webhook / API** | Sends a request to a web address, such as another service's webhook. | The address, the method (**POST**, **GET**, **PUT**, **PATCH** or **DELETE**), headers, one per line such as `Authorization: Bearer …`, and a body. |

Use the arrows on a step's card to move it up or down. Click the cross (**Remove step**) to delete it.

**Send an email** sends for real, so test a new flow with your own address first.

### Use an AI step's output in later steps

Type `{{ai}}` in a later step, for example in an email body or a knowledge entry. When the flow runs, `{{ai}}` is replaced by what the most recent AI step wrote. If no AI step has run yet, it is left empty.

For example: an AI step with the prompt "Write three bullet points to kick off the week", then **Send an email** with the body `{{ai}}`.

**Call a webhook / API** sends its body as JSON unless you set a different content type in the headers.

## Run it and read the log

Click **Run now**. It reads **Running…** while the flow runs. When it finishes, **Last run** lists each step with a tick or a cross and what happened, such as **Created desk "Monday planning".**, **Emailed 3 recipient(s).** or **Called hooks.example.com (HTTP 200).**

A step that could not run says why, for example **No mail account connected.**, **No table chosen.** or **A valid http(s) URL is required.** The next steps still run.

The log of the last run stays with the flow, so you can check it later.

## Run a flow from a webhook

With **When a webhook is called** chosen, the flow shows its address: `http://127.0.0.1:<api-port>/webhooks/` followed by the flow's own identifier. Send a POST request there to run the flow.

- The local API must be on. Turn it on in **Brain** > **APIs**. See [Connect your own scripts and AI tools to Plexii](https://plexiidesk.com/help/brain-api-mcp).
- The address works only from your own computer. A service on the internet needs a tunnel to reach it.
- The flow must be **Enabled**.

## Your flows

The Flows page lists every flow with how it runs, how many steps it has, when it last ran, and whether it is **On**, **Off** or its **Last run failed**. Click one to open it.

Click **Module overview** (the grid button) for a summary: how many flows you have, how many are on, failing or never run, and a breakdown by trigger.

## Tips

- **Start manual.** Build the flow on **I run it manually**, run it a few times, then switch it to a schedule.
- **Put the AI step first.** Steps run in order, so an AI step must come before the steps that use `{{ai}}`.
- **Keep one job per flow.** Two short flows are easier to fix than one long one.

## Common questions

**My scheduled flow didn't run.** Check that it is **Enabled** and that PlexiDesk was open. Due flows run within five minutes of PlexiDesk opening.

**The AI step failed.** If it says **No Anthropic key set for the AI step.**, sign in to use your credits, or add your own key. See [Add your own API keys](https://plexiidesk.com/help/api-keys).

**Can a flow change a row's values?** **Add a table row** adds an empty row. To fill in values, use a desk agent or the API. See [Desk agent widget](https://plexiidesk.com/help/widget-desk-agent).

**Is a flow the same as a desk agent?** No. A flow runs fixed steps across your workspace. A desk agent lives on one desk and uses AI to do a job with the widgets wired into it. See [Desk agent widget](https://plexiidesk.com/help/widget-desk-agent).

## Related tasks

- [Connect your own scripts and AI tools to Plexii](https://plexiidesk.com/help/brain-api-mcp)
- [Brain: your workspace knowledge](https://plexiidesk.com/help/brain-overview)
- [See what runs on its own on a desk](https://plexiidesk.com/help/canvas-automations)
- [Desk agent widget](https://plexiidesk.com/help/widget-desk-agent)
- [Connect your email account](https://plexiidesk.com/help/mail-connect-account)
