Skip to content
Start here

Versions

List deployed Workflow versions
client.workflows.versions.list(stringworkflowName, VersionListParams { account_id, page, per_page } params, RequestOptionsoptions?): V4PagePaginationArray<VersionListResponse { id, class_name, created_on, 7 more } >
GET/accounts/{account_id}/workflows/{workflow_name}/versions
Get Workflow version details
client.workflows.versions.get(stringversionID, VersionGetParams { account_id, workflow_name } params, RequestOptionsoptions?): VersionGetResponse { id, class_name, created_on, 7 more }
GET/accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}
Get Workflow version graph
client.workflows.versions.graph(stringversionID, VersionGraphParams { account_id, workflow_name } params, RequestOptionsoptions?): VersionGraphResponse { id, class_name, created_on, 3 more }
GET/accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph
ModelsExpand Collapse
VersionListResponse { id, class_name, created_on, 7 more }
id: string
formatuuid
class_name: string
created_on: string
formatdate-time
has_dag: boolean
language: "javascript" | "python"

The programming language of the workflow implementation.

One of the following:
"javascript"
"python"
modified_on: string
formatdate-time
workflow_id: string
formatuuid
concurrency?: Concurrency { limit }
limit?: number

Maximum number of instances of this workflow that can run concurrently. Additional instances are queued and started as running instances complete. Must not exceed the account concurrency limit.

maximum9007199254740991
minimum1
default_retention?: DefaultRetention { error_retention, success_retention }
error_retention?: number

Default error retention in milliseconds.

maximum9007199254740991
minimum-9007199254740991
success_retention?: number

Default success retention in milliseconds.

maximum9007199254740991
minimum-9007199254740991
limits?: Limits { steps }
steps?: number
maximum9007199254740991
minimum1
VersionGetResponse { id, class_name, created_on, 7 more }
id: string
formatuuid
class_name: string
created_on: string
formatdate-time
has_dag: boolean
language: "javascript" | "python"

The programming language of the workflow implementation.

One of the following:
"javascript"
"python"
modified_on: string
formatdate-time
workflow_id: string
formatuuid
concurrency?: Concurrency { limit }
limit?: number

Maximum number of instances of this workflow that can run concurrently. Additional instances are queued and started as running instances complete. Must not exceed the account concurrency limit.

maximum9007199254740991
minimum1
default_retention?: DefaultRetention { error_retention, success_retention }
error_retention?: number

Default error retention in milliseconds.

maximum9007199254740991
minimum-9007199254740991
success_retention?: number

Default success retention in milliseconds.

maximum9007199254740991
minimum-9007199254740991
limits?: Limits { steps }
steps?: number
maximum9007199254740991
minimum1
VersionGraphResponse { id, class_name, created_on, 3 more }
id: string
formatuuid
class_name: string
created_on: string
formatdate-time
graph: Graph | null

Versioned workflow graph payload.

version: number
workflow: Workflow { class_name, functions, nodes, payload }

A parsed workflow entrypoint with its step graph.

class_name: string
functions: Record<string, Functions>
name: string
nodes: Array<unknown>

Child nodes (recursive).

type: "function_def"
nodes: Array<UnionMember0 { duration, name, type, 2 more } | UnionMember1 { config, name, nodes, 3 more } | UnionMember2 { name, options, type, 3 more } | 11 more>
One of the following:
UnionMember0 { duration, name, type, 2 more }
duration: number | string

Duration as milliseconds (number) or human-readable string.

One of the following:
number
string
name: string
type: "step_sleep"
resolves?: number
starts?: number
UnionMember1 { config, name, nodes, 3 more }
config: Config { retries, timeout }

Configuration for a step (retries and timeout).

retries: Retries { backoff, delay, limit }

Retry policy for a step.

backoff: "constant" | "linear" | "exponential"

Backoff strategy for step retries.

One of the following:
"constant"
"linear"
"exponential"
delay: number | string

Duration as milliseconds (number) or human-readable string.

One of the following:
number
string
limit: number
timeout: number | string

Duration as milliseconds (number) or human-readable string.

One of the following:
number
string
name: string
nodes: Array<unknown>

Child nodes (recursive).

type: "step_do"
resolves?: number
starts?: number
UnionMember2 { name, options, type, 3 more }
name: string
options: Options | null

Options for a waitForEvent step.

event_type: string
timeout: number | string

Duration as milliseconds (number) or human-readable string.

One of the following:
number
string
type: "step_wait_for_event"
payload?: Type { type } | UnionMember1 { fields, type }

Shape descriptor for JSON payloads.

One of the following:
Type { type }
type: "unknown"
UnionMember1 { fields, type }
fields: Record<string, unknown>

Nested JsonShape fields (recursive structure).

type: "object"
resolves?: number
starts?: number
UnionMember3 { name, timestamp, type, 2 more }
name: string
timestamp: string
type: "step_sleep_until"
resolves?: number
starts?: number
UnionMember4 { nodes, type }
nodes: Array<unknown>

Child nodes (recursive).

type: "loop"
UnionMember5 { kind, nodes, type }
kind: "all" | "any" | "all_settled" | "race"

Parallel execution strategy.

One of the following:
"all"
"any"
"all_settled"
"race"
nodes: Array<unknown>

Child nodes (recursive).

type: "parallel"
UnionMember6 { catch_block, finally_block, try_block, type }
catch_block: CatchBlock | null
nodes: Array<unknown>

Child nodes (recursive).

type: "block"
finally_block: FinallyBlock | null
nodes: Array<unknown>

Child nodes (recursive).

type: "block"
try_block: TryBlock | null
nodes: Array<unknown>

Child nodes (recursive).

type: "block"
type: "try"
UnionMember7 { nodes, type }
nodes: Array<unknown>

Child nodes (recursive).

type: "block"
UnionMember8 { branches, type }
branches: Array<Branch>
condition: string | null
nodes: Array<unknown>

Child nodes (recursive).

type: "if"
UnionMember9 { branches, discriminant, type }
branches: Array<Branch>
condition: string | null
nodes: Array<unknown>

Child nodes (recursive).

discriminant: string
type: "switch"
UnionMember10 { class_name, functions, nodes, 2 more }
class_name: string
functions: Record<string, Functions>
name: string
nodes: Array<unknown>

Child nodes (recursive).

type: "function_def"
nodes: Array<unknown>

Child nodes (recursive).

type: "start"
payload?: Type { type } | UnionMember1 { fields, type }

Shape descriptor for JSON payloads.

One of the following:
Type { type }
type: "unknown"
UnionMember1 { fields, type }
fields: Record<string, unknown>

Nested JsonShape fields (recursive structure).

type: "object"
UnionMember11 { name, type, resolves, starts }
name: string
type: "function_call"
resolves?: number
starts?: number
UnionMember12 { name, nodes, type }
name: string
nodes: Array<unknown>

Child nodes (recursive).

type: "function_def"
UnionMember13 { kind, type }
kind: "break" | "return"

Break or return from a loop.

One of the following:
"break"
"return"
type: "break"
payload?: Type { type } | UnionMember1 { fields, type }

Shape descriptor for JSON payloads.

One of the following:
Type { type }
type: "unknown"
UnionMember1 { fields, type }
fields: Record<string, unknown>

Nested JsonShape fields (recursive structure).

type: "object"
modified_on: string
formatdate-time
workflow_id: string
formatuuid