# List flow versions `GET` `/api/v1/crm-connections/{crm_connection_id}/flows/{flow_id}/versions` Return all versions of a flow definition, ordered by version number descending. Each version includes its status (Active, Draft, Obsolete, or InvalidDraft) and version number. Pass next_records_url from one response into the next request to paginate through large result sets. ## Path parameters | Name | Type | Required | Description | |------|------|----------|-------------| | crm_connection_id | string | yes | UUID of the CRM connection | | flow_id | string | yes | DurableId of the flow definition | ## Query parameters | Name | Type | Required | Description | |------|------|----------|-------------| | next_records_url | string | no | Cursor returned by a previous response to fetch the next page. | ## Response `200 OK` — `application/json` | Field | Type | Description | |-------|------|-------------| | versions | array[object] | List of flow versions, ordered by version number descending | | versions.id | string | Salesforce Tooling API record ID. Not usable as a version identifier — use durable_id instead. | | versions.durable_id | string | Stable version identifier (DurableId). Use this as the version_id in get_flow_version, update_flow_version, activate_flow_version, and deactivate_flow_version. | | versions.flow_definition_view_id | string | DurableId of the parent flow definition | | versions.label | string | Display label of the flow version | | versions.description | string | Description of the flow version | | versions.status | string | Version status: Active, Draft, Obsolete, InvalidDraft, or UnderReview | | versions.version_number | integer | Version number | | versions.process_type | string | Type of flow (e.g. Flow, AutoLaunchedFlow, Workflow, InvocableProcess) | | versions.api_version | number | API version the flow was saved with | | versions.api_version_runtime | number | API version used for running the flow. Determines which versioned run-time behavior improvements are adopted. | | versions.run_in_mode | string | Run mode for the flow: DefaultMode, SystemModeWithSharing, or SystemModeWithoutSharing | | versions.is_template | boolean | Whether the flow is a template | | versions.is_swing_flow | boolean | Whether the flow was built with Desktop Flow Designer | | next_records_url | string | Pass this value as next_records_url on the next request to fetch the following page. Null when all records have been returned. | ## Errors | Status | Description | |--------|-------------| | 400 | Bad Request | | 403 | Forbidden | | 404 | Not Found | | 422 | Unprocessable Entity | | 502 | Bad Gateway |