> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.instabase.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.instabase.com/_mcp/server.

# Working with flows

> Use the flow editor to create and test flows.

Enterprise Single-tenant

Understanding the flow editor interface can help you efficiently create flows.

The default interface on the **Visual Editor** tab includes these elements:

* The *canvas*, where you create the diagram of your flow by adding steps. Connections between steps show how records move through the pipeline. Use the canvas controls to pan and zoom, select steps, and open each step's configuration.

* The *Input samples* panel, where you can add sample files to test run your flow.

* The *Modules* panel, where you import and manage modules. See [Using flow modules](/flow/planning-flows#using-flow-modules) for details.

* The *Events* panel, where you can add pre-flow or post-flow events for upstream and downstream integrations. See [Integrating flows](/flow/integrate-flows) for details.

* The *Add steps* panel lists all available flow steps, categorized under Map, Filter, or Reduce. See [Flow steps](/flow/step-config-reference) for usage and configuration details for each step.

In addition to the visual editor, use the following tabs to understand or modify your flow:

* **JSON viewer** -- Shows the flow definition as JSON so you can inspect or edit the underlying structure directly. Use it when you need precision editing, bulk changes, or to compare definitions across environments.

* [**Flow settings**](#flow-settings) -- Configure input, output, and runtime settings.

* **Summary** -- View recent flow runs and their logs.

## Creating flows

Use the canvas in the visual editor to build your flow.

> **Tip**
>
> See [Planning flows](/flow/planning-flows) for advice on how to think about and order steps.

1. In the header, click the initials icon and select **Switch to advanced view**.

2. In the left sidebar, click the **All apps** icon, then select **Flow**. The flow editor opens.

3. Click **Create New**, and define a name for your flow

4. Define where in the file system to store the flow and its associated files.

   1. In the **Where** field, click the folder icon.

   2. From the second dropdown, select a workspace.

   3. In the file explorer, select a connected drive, or use the Instabase Drive.

   4. Select an existing folder, or click **New folder**. If adding a folder, name it then click **Create folder**.

   5. Click **Open folder**.

5. Click **Create**.

6. Add steps to build your flow. Click **+ Add flow step** to get started, or drag and drop steps onto the canvas from the **Add steps** panel.

7. As you add steps, their configuration panels open. [Configure the step](/flow/step-config-reference) and, if required, link a module. To close out the configuration panel, click the **X** icon, or click on the canvas.

   > **Tip**
   >
   > You can rename steps to make flows easier to understand, such as naming filter steps according to what's being let through. In the step configuration panel, click the edit (pencil) icon next to the step name.

## Testing flows

You can test your flow against sample documents to assess how its performing.

> **Before you begin**
>
> Gather and upload files that are representative of the types of documents the flow is built to process. If using classification, ensure you have documents of each class.
>
> #### Uploading to the file explorer
>
> 1. In the header, click the initials icon and select **Switch to advanced view**.
>
> 2. In the left sidebar, click the **Explorer** icon. The file explorer opens.
>
> 3. In the workspace list, select the target workspace.
>
> 4. In the drive list, select the Data Drive or another connected drive.
>
>    > **Info**
>    >
>    > The Data Drive is part of your 1 TB of included storage and intended for use as a file input source.
>
> 5. Select a folder or click **New** > **New folder** to create one. Using dedicated, clearly labeled folders helps organize your testing documents.
>
> 6. Select or drag and drop files or folders into the upload dialog, then click **Start upload**.

1. In the **Input samples** panel, click the **+** icon.

2. In the file explorer, select the folder containing your sample files. Click **Open folder**.

3. On the **Flow settings** tab, use the **Input Folder** dropdown to select your input sample folder.

4. Configure other [flow settings](#flow-settings) as needed.

5. Click **Run flow**.

You can monitor the flow run progress and logs from the **Summary** tab.

## Flow settings

On the **Flow settings** tab, choose input and output locations, processing mode, and runtime options. These settings apply when you run the flow.

| Setting                              | Description                                                                                                              |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| **Input Folder**                     | Required. Select the folder that contains the files to process for this run.                                             |
| **Compare Against Ground Truth Set** | When enabled, compares the flow output to a ground truth dataset so you can check accuracy.                              |
| **Output Folder**                    | The folder where the flow writes results. Use the browse control to choose a path.                                       |
| **Do Not Overwrite Output**          | When enabled, avoids overwriting existing files in the output folder when a result file would have the same name.        |
| **Processing Mode**                  | Select how the flow runs (for example, **Agent Mode**).                                                                  |
| **Runtime Config**                   | Optional JSON object for advanced runtime parameters. The editor starts with an empty object (`{}`) that you can extend. |