Create a Workflow
Use this endpoint to create a new workflow definition. New workflows are created in draft status. allowedCallers lists who may run the workflow; only a person writes it (an application gets 403 FLK-0365). Only a person writes a protected provider configuration, or a workflow that uses a protected or deleted one: an application gets 403 FLK-0365. Create and update accept only protected provider configurations on it (422 FLK-0367), and activation needs a non-empty allowedCallers list (422 FLK-0366). Every edge that leaves a node runs; of a conditional, every edge on the one output it chooses. A node that two parallel branches of one run reach answers 422 FLK-0187. Branches from different outputs of a conditional may rejoin. A wait node pauses the execution for data.durationSeconds, for example {"id": "wait-1", "type": "wait", "data": {"durationSeconds": 120}}. While paused, the execution status is waiting. When it resumes, later nodes read the output {deadline, firedAt} under the node ID, for example wait-1.firedAt. Rules checked at save, each answering 422: durationSeconds is an integer from 1 to 43200 (FLK-0183); no wait below a fan-out (FLK-0184); waits along one path add up to at most 43200 seconds (FLK-0185); a workflow with a wait has no loop (FLK-0186).
Autorizaciones
JWT bearer token issued by the identity provider. Send it in the Authorization header as Bearer <token>.
Cuerpo
Request body containing the workflow definition.
Unique name for the workflow.
1 - 100"Payment Notification Flow"
Optional human-readable description of the workflow's purpose.
500"Receives a webhook trigger and sets the payment output."
Connections between nodes that define the execution flow. Each edge links a source node to a target node. Branching is routed by the edge's sourceHandle, which must match the outcome handle its conditional source node produces.
200Custom key-value pairs for tagging or categorizing the workflow.
The steps that make up this workflow. Each node is a unit of work — a trigger, an executor call, a conditional branch, or an action.
100Who may run the workflow: applications by client ID and people by user ID. An empty list lets any caller that the route authorizes run it. Only a person writes this list. A caller outside the list gets 403 FLK-0519 when requesting a new execution, and no execution is created. A schedule or Streaming Hub trigger carries no caller, so it never runs a workflow that has a list.
Respuesta
Indicates that the resource was successfully created and the operation was completed as expected.
Timestamp when the workflow was created.
"2026-03-17T14:30:00Z"
Initial status of the workflow (always draft on creation).
"draft"
Version of the workflow definition.
"1.0.0"
Unique identifier of the created workflow.
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

