v3

latestOpenAPI 3.1.02026-07-311,4541,5202.3 MB
workflows

List Workflow Versions

List versions for a workflow family, or create a new draft.

GET /api/workflows/{workflow_id}/versions/ List every version row (draft + committed history).

POST /api/workflows/{workflow_id}/versions/ Create a new editable draft. Pure CRUD — the client sends the new row's content (name, tasks, description, etc.) and the backend inserts it with is_read_only=False. Nothing else in the family is touched. Committing is a separate action at POST /api/workflows/{workflow_id}/commits/.

get/api/workflows/{workflow_id}/versions/

Path parameters

workflow_idstring required

Query parameters

pageinteger

A page number within the paginated result set.

page_sizeinteger

Number of results to return per page.

Headers

Authorizationstring required

Use your Respan API key for Respan API authentication. Enter only the Respan API key value; clients send Authorization: Bearer <RESPAN_API_KEY>. For /api/responses, provider credentials such as Perplexity, OpenAI, or Azure OpenAI go in Settings -> Providers or respan_params.credential_override in the request body, not in this authentication field.

Response

countinteger required
nextstring uri nullable
previousstring uri nullable
total_countinteger
current_filtersFilterParamDictPydantic

Pydantic model for FilterParamDict. A dictionary that maps metric names to their filter parameters.

Each key is a metric name (str), and each value can be:

  • A single MetricFilterParamPydantic (one condition)
  • A List[MetricFilterParamPydantic] (multiple conditions for same metric)
  • A FilterBundlePydantic (nested filter bundle with connector)

Note: Uses extra="allow" for dynamic metric name fields. The pydantic_extra annotation tells Pydantic what types to expect for extra fields, and generates typed additionalProperties in JSON Schema.

filters_dataPaginatedWorkflowListListFiltersData