Retrieve a workflow
GET /v1/workflows/
version= for a specific one.
Returns the definition and the declared inputs, which is what you need to know what to send when you run it.Authorizations
API key in format: Bearer inf_***
Path Parameters
Workflow UUID.
"b0e9f2a4-2b1a-4c7d-9a3e-1f5c8d2e4b60"
Query Parameters
Response
The workflow and the requested version's definition.
Workflow UUID.
"b0e9f2a4-2b1a-4c7d-9a3e-1f5c8d2e4b60"
Owning workspace UUID — always the workspace the API key belongs to.
"7d1c0a55-9f2b-4a13-8c6e-30b4e9a1c7f2"
Author-supplied name. Max 120 characters.
"Weekly report"
Author-supplied description. Max 2000 characters. Null when never set.
"Summarise the week and render a PDF"
Highest version number that exists for this workflow. PUT increments it only when the request carried a definition; a name/description-only update leaves it unchanged.
3
Column default. No code path in this repo ever writes it, so it is true on every row; do not read it as an enable/disable switch.
true
ISO-8601 creation timestamp.
"2026-05-04T09:15:22.113Z"
ISO-8601 timestamp of the last PUT (name, description or definition).
"2026-05-06T11:02:47.900Z"
Soft-delete timestamp. Always null on these responses: both reads filter on deletedAt: null, so a deleted workflow is a 404 rather than a row with a value here.
null
User the workflow was created by, when the creating API key could be attributed to a workspace member. Null for a key whose creator was deleted or has left the workspace — such a key creates workspace-scoped workflows instead.
"4e5a1b8c-77d3-4c21-a0fe-9b6d2c3a5e11"
Who may see this workflow, before per-user grants. private = its creator (plus workspace owners/admins); workspace = every member; users = the members it was explicitly shared with. New workflows land on private unless the API key had no attributable creator.
private, workspace, users "private"
What the sharing grant permits. Consulted only for the workspace and users scopes. read allows running the workflow — it means "you cannot change it", not "you cannot use it".
read, write "read"
The stored workflow definition for version, exactly as it was written. Unmodelled here: its shape is the Zod schema in schemas/pipeline-definition.schema.ts (steps[], output, retry, failure_mode, inputs[], ui), which this document does not publish. It is returned as stored — the schema .default() values are NOT filled in on this read.
The version this definition came from: the version query parameter when one was given, otherwise latestVersion.
3
The declared run inputs read out of definition.inputs. [] for a legacy definition that predates the input contract, and also [] — never an error — when a hand-edited row carries a non-array inputs.