ZitadelDocs

List flow definitions

Retrieves a list of all flow definitions, newest by creation time first. This endpoint can be used to view existing flow definitions and their configurations. Filter by `name` to list the revisions of one flow.

GET
/flow_definitions

Retrieves a list of all flow definitions, newest by creation time first. This endpoint can be used to view existing flow definitions and their configurations. Filter by name to list the revisions of one flow.

Authorization

headerAuthorizationBearer <token>

Scope: flow_definition.read

Query Parameters

limit?integer

Maximum number of items to return.

Range1 <= value <= 100
Default20
page_token?string

Token for fetching the next page of results. Obtain this value from next_page_token in the previous response. Omit to start from the beginning. Its format is opaque and may change between releases.

project_id*string

The project id to filter by.

Match^[a-zA-Z0-9_-]+$
purpose?string

Filter flow definitions by purpose (e.g., registration, login).

Value in"login""register""recovery""profiling""reauth""link_account"
name?string

The flow name to filter by. Every revision of a flow shares its name, so the result is that flow's revisions, newest by creation time first.

Match^[a-z][a-z0-9-]*$
revisions?string

Which revisions to return. Every revision of a flow shares its name, so publishing a definition under an existing name generates a new row.

all (the default) returns every revision — the full history an export, an audit or a GitOps diff needs. latest returns the newest revision of each name, which is one row per flow.

A page_token is bound to the mode it was issued in and is rejected by the other.

Default"all"
Value in"all""latest"
expand?array<>

Related entities to embed on each returned flow definition.

Response Body

A list of flow definitions.

application/json
  1. response

List of flow definitions, newest by creation time first.

flow_definitions*array<>
next_page_token?|

The token to retrieve the next page of results. Absent if there are no more results.

curl -X GET 'https://example.com/flow_definitions?project_id=string'
{  "flow_definitions": [    {      "id": "string",      "project_id": "string",      "flow_definition": {        "$schema": "string",        "name": "standard-login",        "status": "active",        "user_schema": "string",        "purposes": {          "property1": "string",          "property2": "string"        },        "audience": {          "team_ids": [            "string"          ],          "app_ids": [            "string"          ]        },        "steps": [          {            "name": "string",            "fields": [],            "actions": [],            "gates": {},            "sso_providers": [],            "on_success": "create_user",            "complete": "redirect",            "transitions": {              "property1": {                "target": "string",                "action": "switch",                "purpose": "login"              },              "property2": {                "target": "string",                "action": "switch",                "purpose": "login"              }            }          }        ]      },      "user_schema": {        "id": "string",        "schema": {          "$schema": "https://json-schema.org/draft/2020-12/schema",          "objectType": "string",          "kind": "user-schema",          "metaSchema": "http://example.com",          "x-auth-methods": {            "password": {              "enabled": true            },            "passkey": {              "enabled": true            },            "magic_link": {              "enabled": true            },            "sso": {              "providers": [                "google"              ],              "enabled": true            },            "otp": {              "enabled": true            }          },          "x-identifier": "string",          "x-display": [            "string"          ],          "properties": {            "property1": {              "x-unique": "unspecified",              "x-claim": "string",              "x-audit": false,              "properties": {                "property1": {},                "property2": {}              }            },            "property2": {              "x-unique": "unspecified",              "x-claim": "string",              "x-audit": false,              "properties": {                "property1": {},                "property2": {}              }            }          }        },        "metadata": {          "created_at": "2019-08-24T14:15:22Z"        }      },      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z"    }  ],  "next_page_token": "string"}