<!-- BusyBot node reference — https://busybot.net/tools/flow/ -->

> Node: Flow (`flow`) · Action · v1
> Category: Productivity · Credentials: Flow API (`flowApi`)
> Updated: 2026-08-16

# Flow

> Manage tasks in Flow (getflow.com) project management platform

## Overview

Flow is a project management and task tracking application (getflow.com). This tool provides CRUD operations for tasks: create, update, get, and get many. Uses the Flow REST API v2 with Bearer token authentication. The organization ID is supplied via credentials and injected into every request automatically.

**Category:** Productivity  
**Tool Name:** `flow`  
**Version:** 1

**Appearance:** Icon: `lucide-Workflow` | Color: `#49C7A3`

## Node Type

**Action** — processes input items and produces output

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | `Input` |
| Output | `Output`, `Error` |

## Credentials

This tool requires **Flow API** credentials.
See the [Credentials Guide](https://busybot.net/credentials/flow-api/) for setup instructions.

### Resources

| Resource | Value |
|----------|-------|
| Task | `task` |

### Operations

Each resource has its own Operation list. Pick the resource first, then the operation.

| Resource | Operation | Value | Description |
|----------|-----------|-------|-------------|
| Task | Create | `create` | Create a new task |
| Task | Update | `update` | Update a task |
| Task | Get | `get` | Get a task |
| Task | Get Many | `getAll` | Get many tasks |

### Parameters

#### Task: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Workspace ID | `string` | Yes | — | Create resources under the given workspace. Find this in your Flow workspace URL or settings. Supports expressions. |
| Name | `string` | Yes | — | The title of the task. Supports expressions. |
| Additional Fields | `collection` | No | `{}` | Optional properties to set on the new task. |
| — Owner ID | `string` | No | — | The ID of the account to whom this task will be assigned. |
| — List ID | `string` | No | — | Put the new task in a list ("project"). Omit this param to have the task be private. |
| — Starts On | `string` | No | — | The date on which the task should start (ISO 8601 format, e.g. 2024-01-15). |
| — Due On | `string` | No | — | The date on which the task should be due (ISO 8601 format, e.g. 2024-01-20). |
| — Mirror Parent Subscribers | `boolean` | No | `false` | Whether this task will be a subtask, and this is true, the parent task's subscribers will be mirrored to this one. |
| — Mirror Parent Tags | `boolean` | No | `false` | Whether this task will be a subtask, and this is true, the parent task's tags will be mirrored to this one. |
| — Note Content | `string` | No | — | Provide the content for the task's note. |
| — Note Mime Type | `options` | No | `text/plain` | Identify which markup language is used to format the given note. |
| | | | | Options: `text/plain`, `text/x-markdown`, `text/html` |
| — Parent ID | `string` | No | — | If provided, this task will become a subtask of the given task. |
| — Position List | `number` | No | `0` | Determines the sort order when showing tasks in, or grouped by, a list. |
| — Position Upcoming | `number` | No | `0` | Determines the sort order when showing tasks grouped by their due_date. |
| — Position | `number` | No | `0` | Determines the sort order of tasks. |
| — Section ID | `string` | No | — | Specify which section under which to create this task. |
| — Tags | `string` | No | — | A list of tag names to apply to the new task separated by a comma (,). |

#### Task: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Workspace ID | `string` | Yes | — | The workspace the task belongs to. Supports expressions. |
| Task ID | `string` | Yes | — | The ID of the task to update. Supports expressions. |
| Update Fields | `collection` | No | `{}` | Task fields to change. Only the fields you add are sent. |
| — Name | `string` | No | — | The title of the task. |
| — Completed | `boolean` | No | `false` | Whether to complete the task. |
| — Owner ID | `string` | No | — | The ID of the account to whom this task will be assigned. |
| — List ID | `string` | No | — | Put the task in a list ("project"). Omit this param to have the task be private. |
| — Starts On | `string` | No | — | The date on which the task should start (ISO 8601 format). |
| — Due On | `string` | No | — | The date on which the task should be due (ISO 8601 format). |
| — Mirror Parent Subscribers | `boolean` | No | `false` | Whether this task will be a subtask, and this is true, the parent task's subscribers will be mirrored to this one. |
| — Mirror Parent Tags | `boolean` | No | `false` | Whether this task will be a subtask, and this is true, the parent task's tags will be mirrored to this one. |
| — Note Content | `string` | No | — | Provide the content for the task's note. |
| — Note Mime Type | `options` | No | `text/plain` | Identify which markup language is used to format the given note. |
| | | | | Options: `text/plain`, `text/x-markdown`, `text/html` |
| — Parent ID | `string` | No | — | If provided, this task will become a subtask of the given task. |
| — Position List | `number` | No | `0` | Determines the sort order when showing tasks in, or grouped by, a list. |
| — Position Upcoming | `number` | No | `0` | Determines the sort order when showing tasks grouped by their due_date. |
| — Position | `number` | No | `0` | Determines the sort order of tasks. |
| — Section ID | `string` | No | — | Specify which section under which to create this task. |
| — Tags | `string` | No | — | A list of tag names to apply to the task separated by a comma (,). |

#### Task: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Task ID | `string` | Yes | — | The ID of the task to retrieve. Supports expressions. |
| Filters | `collection` | No | `{}` | Optional settings for the lookup request. |
| — Include | `multiOptions` | No | `[]` | Related data to include in the response. |
| | | | | Options: `schedule`, `files`, `file_associations`, `parent` |

#### Task: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |
| Filters | `collection` | No | `{}` | Filters and sorting applied to the task list. |
| — Include | `multiOptions` | No | `[]` | Related data to include in the response. |
| | | | | Options: `schedule`, `files`, `file_associations`, `parent` |
| — Order | `options` | No | `created_at` | Field to sort results by. |
| | | | | Options: `account_id`, `completed_at`, `created_at`, `due_on`, `list_id`, `name`, `owner_id`, `position`, `section_id`, `starts_on`, `updated_at` |
| — Workspace ID | `string` | No | — | Filter tasks by workspace. |
| — Created Before | `string` | No | — | Select resources created before a certain time (ISO 8601 datetime). |
| — Created After | `string` | No | — | Select resources created after a certain time (ISO 8601 datetime). |
| — Updated Before | `string` | No | — | Select resources updated before a certain time (ISO 8601 datetime). |
| — Updated After | `string` | No | — | Select resources updated after a certain time (ISO 8601 datetime). |
| — Deleted | `boolean` | No | `false` | Whether to select deleted resources. |
| — Cleared | `boolean` | No | `false` | Whether to select cleared resources. |

#### All Operations

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Max Concurrency | `number` | No | `10` | Maximum number of items to process concurrently. |

## Output Data

The Flow response is merged into the output item's JSON at the top level — the task's fields sit alongside the fields the input item already carried, so downstream nodes address them directly (`{{ $json.name }}`) rather than through a wrapper property. Everything else on the item passes through, and binary data is forwarded unchanged. A response field with the same name as an existing item field overwrites it.

How many items you get back depends on the operation:

| Operation | Output |
|-----------|--------|
| `create`, `update`, `get` | One output item per input item, carrying the returned task's fields. |
| `getAll` | **One output item per task in the response** — ask for 25 tasks and a single input item produces 25 output items. With Return All on, every page is fanned out the same way. |

When Get Many matches nothing, the node still emits one item for that input, carrying `_flowResult: null`, so an empty result is visible downstream instead of silently dropping the branch.

## Usage Examples

- Create a new task in a Flow workspace
- Update a task name or mark it as completed in Flow
- Get a specific task by ID from Flow
- List all tasks in a Flow workspace
- Create a subtask under a parent task in Flow

## Example Configuration

Create a task in a workspace, assigned and dated:

```json
{
  "type": "flow",
  "parameters": {
    "resource": "task",
    "operation": "create",
    "workspaceId": "12345",
    "name": "{{ $json.title }}",
    "additionalFields": {
      "ownerId": "67890",
      "listId": "4321",
      "startsOn": "2026-03-01",
      "dueOn": "2026-03-15",
      "noteContent": "Raised from {{ $json.source }}",
      "noteMimeType": "text/plain",
      "tags": "intake,priority"
    }
  }
}
```

Create a subtask under an existing task and inherit its subscribers and tags:

```json
{
  "type": "flow",
  "parameters": {
    "resource": "task",
    "operation": "create",
    "workspaceId": "12345",
    "name": "Sub: {{ $json.step }}",
    "additionalFields": {
      "parentId": "{{ $json.taskId }}",
      "mirrorParentSubscribers": true,
      "mirrorParentTags": true
    }
  }
}
```

Mark a task completed and leave a markdown note:

```json
{
  "type": "flow",
  "parameters": {
    "resource": "task",
    "operation": "update",
    "workspaceId": "12345",
    "taskId": "{{ $json.taskId }}",
    "updateFields": {
      "completed": true,
      "noteContent": "Closed automatically at {{ $datetime.iso }}",
      "noteMimeType": "text/x-markdown"
    }
  }
}
```

Fetch one task together with its schedule and parent:

```json
{
  "type": "flow",
  "parameters": {
    "resource": "task",
    "operation": "get",
    "taskId": "{{ $json.taskId }}",
    "filters": {
      "include": ["schedule", "parent"]
    }
  }
}
```

List the next 25 tasks in a workspace by due date, skipping deleted and cleared ones:

```json
{
  "type": "flow",
  "parameters": {
    "resource": "task",
    "operation": "getAll",
    "returnAll": false,
    "limit": 25,
    "filters": {
      "workspaceId": "12345",
      "order": "due_on",
      "createdAfter": "2026-01-01T00:00:00Z",
      "deleted": false,
      "cleared": false,
      "include": ["files"]
    }
  }
}
```

### Error Handling

| Mode | Behavior |
|------|----------|
| **stop** | Halts workflow on first error |
| **continue** | Skips failed items, passes successful ones through |
| **errorPort** | Routes failed items to Error output port |

## Tips

Create, update, get, or list tasks in Flow (getflow.com) project management platform.

### Important Notes

1. **Workspace ID**: Always required for create and update operations. Find this in your Flow workspace URL or settings.
2. **Task ID**: Required for update and get operations. This is returned when creating tasks or can be found in task URLs.
3. **Conditional Logic**: The `limit` parameter only appears when `returnAll` is set to `false`.
4. **Resource Limitation**: Currently only supports the "task" resource type.