Skip to main content
GET
Read a version of a workflow

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

workflow_key
string
required
version
integer
required

The version's number, as GET /workflows/{workflow_key}/versions lists it and a verification names it in version.

Required range: x >= 1

Response

The version as it was published: every step it can present, and how each is answered.

One version of a workflow as it was published: the journey every verification on it runs, step by step.

A version never changes once published, so this reads the same for as long as you read it. Its steps are reported exactly as GET /workflows/{workflow_key} reports the latest version's, so two versions read this way compare field for field, and the latest reads the same through either.

How the workflow is conducted, its environment, its credits and its runs belong to the workflow rather than to any one version, and are read off the workflow.

key
string
required

The workflow the version belongs to.

version
integer
required

The version's number.

Required range: x >= 1
published_at
string<date-time>
required

When this version was published.

expires_after_days
integer
required

How long a verification on the version reported here holds a user's data, counted from their last action. Once that window runs out the verification expires and everything the user provided is deleted. A verification is held for as long as the version it runs says.

groups
StepGroup · object[]
required

The named parts the version reported here presents its steps in, in the order a user meets them. A step that belongs to one names it in group, and the steps of a group are consecutive, so each group heads one unbroken run of steps. A version that presents its steps under no headings at all has none of these.

steps
WorkflowStepRecord · object[]
required

Every step the version reported here can present, in the order a user meets them. A step that carries a condition is only presented when that condition holds, so any one verification walks some of these rather than all of them.

output_transformations
Output Transformations · object
required

How the outputs of the version reported here reach you, by step type. Each entry names a field of what that step type publishes by the path it sits at, and states the name it arrives under in collected.outputs, the transform that converts its value, or both; [] in a path descends into every record of a list. A step type with no entry here reaches you as this reference describes it, as does every step type when this is empty.

A transform is a JSONata expression over the one value at its path, in the shape this reference documents it, and what it yields arrives in that value's place. It reads nothing else, so it never reaches another field or another step, and it always yields a value. Where a version's transformation cannot be applied to a verification's value, reading that verification answers workflow-misconfigured.

Only collected.outputs is transformed. The paths on the left are the names used everywhere else a field is named, this reference and collected.answer included, so read this to translate between the two.

The map belongs to the version, so a verification's outputs reach you as the version it runs states, and a change to it reaches the verifications created after it.

output_names
Output Names · object
required

The names alone from output_transformations, by step type: each published path mapped to the name it arrives under in collected.outputs, for every entry that states one. A path whose entry states only a transform keeps its own name and is not listed.

A name is not the whole of how a field reaches you where its entry also converts the value, so read output_transformations for that.