---
title: "Update a flow"
method: PATCH
path: "/v1/flows/{flowId}"
tags: ["flows"]
---

# Update a flow

`PATCH /v1/flows/{flowId}`

## Request

- Base URL: `https://api.flowral.app`
- URL: `https://api.flowral.app/v1/flows/{flowId}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (client credentials, token URL `https://api.flowral.app/v1/oauth/token`, scopes: `flows:write`)

Changes the flow itself. Tasks are edited through the task endpoints.

## Path parameters

- `flowId` string, required

## Request body

- object
  - `name` string
  - `description` string
  - `dueDate` string: ISO 8601, or null to clear it.

## Response `200`

SUCCESS

- FlowSummary: A flow without its tasks — what list endpoints return.
  - `id` string, required
  - `name` string, required
  - `description` string, nullable
  - `archived` boolean, required
  - `public` boolean: Whether this flow is published — readable by anyone with its link, with no account. Assignees, comments and files are never included in the public view.
  - `publicUrl` string, nullable: The published link, or null when the flow is private.
  - `dueDate` string, date-time: The date the flow is meant to land, if one is set.
  - `taskCount` integer
  - `doneCount` integer
  - `readyCount` integer: Tasks that can be started right now.
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `401`: UNAUTHORIZED
- `403`: FORBIDDEN · SUBSCRIPTION_PAST_DUE
- `404`: NOT_FOUND
- `429`: RATE_LIMITED

---

[API](https://skmtc.dev/flowral/apis/flowral-api.md) · [All operations](https://skmtc.dev/flowral/apis/flowral-api/llms.txt) · [OpenAPI document](https://skmtc.dev/flowral/apis/flowral-api/revisions/6cd2337b682c?raw)
