---
title: "List workflow steps"
method: GET
path: "/api/v1/workflow_steps"
tags: ["Workflow Step"]
---

# List workflow steps

`GET /api/v1/workflow_steps`

Retrieve all workflow step objects.

## Query parameters

- `page_size` integer
- `cursor` string
- `id` integer[]
- `workflow` integer
- `mode` 'any' | 'all' | 'auto'
- `type` 'approval'
- `ordering` 'id' | '-id'

## Response `200`

OK

- object
  - `pagination` Pagination, required
    - `next` string, uri, nullable — URL for the next page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the next page — do not attempt to construct or modify the cursor value.
    - `previous` string, uri, nullable — URL for the previous page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the previous page — do not attempt to construct or modify the cursor value.
  - `results` WorkflowStep[], required
    - `id` integer, required — ID of the workflow step
    - `name` string, required — Name of the workflow step
    - `url` string, uri, required — URL of the workflow step
    - `organization` string, uri, required — Organization URL.
    - `workflow` string, uri, required — URL of the workflow
    - `condition` object, required — Condition that designates whether the workflow step will be entered
    - `type` 'approval', required — Type of the workflow step (currently the only supported value is `approval`)
    - `mode` 'any' | 'all' | 'auto', required — Supported values: - `any` - approval of one assignee is enough - `all` - all assignees must approve - `auto` - automatically approved if the condition matches
    - `ordering` integer, required — Designates the evaluation order of steps within a workflow (must be unique per a workflow)

## Other responses

- `400` — Invalid input data.
- `401` — The username/password is invalid or token is invalid (e.g. expired).
- `403` — Insufficient permission, missing authentication, invalid CSRF token and similar issue.
- `404` — The specified resource was not found.
- `409` — Conflict
- `429` — Request rate is too high, wait before sending more requests. See [Rate Limiting](/guides/overview#rate-limiting) for more details.
- `500` — Server failure while processing the request.
- `502` — Invalid response from the upstream server.
- `503` — We're temporarily offline for maintenance. Please try again later.
- `504` — Upstream server could not complete the request in time.

---

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