---
title: "List workflows"
method: GET
path: "/api/v1/workflows"
tags: ["API Reference"]
---

# List workflows

`GET /api/v1/workflows`

## Request

- Base URL: `https://revnu.com`
- URL: `https://revnu.com/api/v1/workflows`
- Auth: HTTP bearer

The account's recurring workflows with their schedule, next run and step list.

Requires the `results:read` scope.

**Response.** `{ "workflows": [{ workflowId, name, description, status, scheduleText, scheduleEcho, scheduleError, deliverTo, nextRunAt, version, steps: [{ id, title, details, gate? }], url }, …] }`.

`status` is `live` or `paused`. `scheduleEcho` is how Revnu understood `scheduleText`, and `scheduleError` is set when it couldn't. `url` opens the workflow in the dashboard, where it can also be edited in chat. Reading needs only `results:read`; changing, running or deleting one needs `workflows:write`.

## Response `200`

{ "workflows": [{ workflowId, name, description, status, scheduleText, scheduleEcho, scheduleError, deliverTo, nextRunAt, version, steps: [{ id, title, details, gate? }], url }, …] }. status is live or paused. scheduleEcho is how Revnu understood scheduleText, and scheduleError is set when it couldn

- object
  - `workflows` object[], required
    - `workflowId` string, required
    - `url` string, required
    - `version` number, required
    - `name` string, required
    - `description` string, required
    - `status` 'live' | 'paused' | 'proposed', required
    - `scheduleText` string, required
    - `scheduleEcho` string, nullable, required
    - `scheduleError` string, nullable, required
    - `deliverTo` string, nullable, required
    - `requestedBy` string, nullable, required
    - `nextRunAt` number, nullable, required
    - `steps` object[], required
      - `gate` object
        - `label` string
        - `on` boolean, required
      - `id` string, required
      - `title` string, required
      - `details` string[], required

## Other responses

- `401`: Missing, malformed, unknown or revoked token.
- `402`: `setup_pending`: the account hasn't started its trial. Finish setup with `GET /setup`.
- `403`: The token lacks the scope in `requiredScope`.
- `429`: Rate limited.
- `503`: Temporarily unavailable; retry the same call.

---

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