---
title: "List workflows"
method: GET
path: "/v1/workspaces/{workspaceId}/workflows"
tags: ["Workflows"]
---

# List workflows

`GET /v1/workspaces/{workspaceId}/workflows`

Returns a list of workflows.

## Path parameters

- `workspaceId` string, required

## Query parameters

- `limit` integer
- `offset` integer

## Response `200`

Paginated list of items

- object
  - `items` Workflow[], required
    - `id` string, required
    - `inputs` WorkflowInput[], required
      - union
        - WorkflowStringInput
          - `default` string
          - `key` string, required
          - `type` 'string', required
        - WorkflowNumberInput
          - `default` number
          - `key` string, required
          - `type` 'number', required
        - WorkflowBooleanInput
          - `default` boolean
          - `key` string, required
          - `type` 'boolean', required
        - union
          - WorkflowManualArrayInput
            - `default` object[]
              - …
            - `key` string, required
            - `type` 'array', required
          - WorkflowSelectorArrayInput
            - `key` string, required
            - `selector` object, required
              - …
            - `type` 'array', required
        - WorkflowObjectInput
          - `default` object
          - `key` string, required
          - `type` 'object', required
    - `jobs` WorkflowJobTemplate[], required
      - `config` object, required — Configuration for the job agent
      - `id` string, required
      - `if` string — CEL expression to determine if the job should run
      - `matrix` WorkflowJobMatrix
      - `name` string, required
      - `ref` string, required — Reference to the job agent
    - `name` string, required
  - `limit` integer, required — Maximum number of items returned
  - `offset` integer, required — Number of items skipped
  - `total` integer, required — Total number of items available

## Other responses

- `400` — Invalid request

## Changes

- **2026-02-19** `e61389fc98ac` — 4 breaking, 1 info
  - added `#/components/schemas/JsonSelector, #/components/schemas/CelSelector` to the `items/items/inputs/items/oneOf[#/components/schemas/WorkflowArrayInput]/oneOf[#/components/schemas/WorkflowSelectorArrayInput]/selector/default` response property `oneOf` list for the response status `200`
  - the `items/items/inputs/items/oneOf[#/components/schemas/WorkflowArrayInput]/oneOf[#/components/schemas/WorkflowSelectorArrayInput]/selector/default` response's property type/format changed from `string`/`` to ``/`` for status `200`
  - removed the required property `items/items/jobAgents` from the response with the `200` status
  - removed the required property `items/items/slug` from the response with the `200` status
  - …1 more

[Change history](https://skmtc.dev/ctrlplanedev/apis/ctrlplane-api/changes/v1/workspaces/:workspaceId/workflows/get.md)

---

[API](https://skmtc.dev/ctrlplanedev/apis/ctrlplane-api.md) · [All operations](https://skmtc.dev/ctrlplanedev/apis/ctrlplane-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ctrlplanedev/ctrlplane-api/revisions/e61389fc98ac/schema)
