Skip to main content
The Workflow Canvas is a visual drag-and-drop editor for designing workflows in Flowker. It is an interactive surface where you can add, connect, and configure nodes to define the execution flow of your automated processes.

Accessing the Canvas


The canvas opens when you create or open a workflow. Navigate to Flowker → Workflows, then create a new workflow or click the name of an existing one. A workflow that is not in Draft opens read-only until you click Edit. See Editing a workflow.

Canvas basics


The canvas has the following interactions:
  • Pan: click and drag on the canvas background to move around.
  • Zoom: use the scroll wheel or pinch gesture to zoom in and out.
  • Select: click a node to select it.
  • Configure: double-click a node to open its configuration panel on the right side.
  • Connect: drag from a node’s output handle to another node’s input handle to create a connection.
  • Delete: select a node or connection and press Delete or Backspace. You can also click the trash icon on a node or the × on a connection.

Node types


Flowker workflows have four node types.

Trigger Node

The Trigger Node defines the event that starts the workflow. An active workflow must have at least one trigger node. A draft workflow may be empty or omit a trigger while you design it. Node-level save validation still applies. When you double-click a trigger node, the Configure Trigger panel opens with the following fields: After selecting a trigger type, additional configuration fields may appear based on the trigger’s schema. For the webhook trigger, those fields are the path, the method, the input contract, the response mode, the response view and the accepted headers. See Configuring a webhook trigger for what each contract accepts. For the schedule trigger, they are the cron expression, the timezone, the enabled flag and the input data each run starts with. See Running a workflow on a schedule. Flowker has two trigger types:

Executor Call Node

Executor Call Nodes perform specific operations by calling executors registered in the Flowker catalog. Each executor is a pre-built integration with Lerian products or external services. When you double-click an executor call node, the Configure Executor Call panel opens. Its first two fields form a cascade: the provider configuration you pick first decides which executors the second field offers. After selecting an executor, additional configuration fields appear based on the executor’s schema (e.g., data mapping parameters). Available executors include:
Executors come from the Flowker catalog. The table is illustrative. Inspect the running catalog for the executors available to your deployment.
The node’s configuration is validated both locally and remotely (via the Flowker backend) against the catalog executor’s JSON Schema before saving. If the configuration is invalid, an error message will appear in the panel.

Conditional Node

Conditional Nodes branch the workflow based on conditions evaluated at runtime. A conditional node holds a structured condition made of cases. Each case has one or more rules and routes the execution to its own outgoing path when it matches. The conditional node evaluates cases in order, and the first matching case wins. An optional default path catches executions that match no case. So a conditional node has one outgoing connection per case, plus the default path when enabled. When you double-click a conditional node, its configuration panel opens with the visual condition builder, where you define the cases and the rules inside each case (the value being tested, a comparison operator, and the value to compare against).
Workflows saved with a legacy free-text condition expression keep the original true/false output paths. New conditionals use the condition builder.
Use descriptive case labels and node names (e.g., “High Value Check”) to keep the workflow readable.

Action Node

Action Nodes perform a workflow-level action without calling an external service. The available action type is set_output, which sets the execution’s final output. It is useful as the terminal step of a workflow, especially with synchronous webhook responses. Output values support ${...} references resolved against the workflow context (for example, ${workflow.<field>} for the trigger payload, or ${execution.id}). For workflows triggered by a synchronous webhook, a set_output node can also carry a responseStatusCode (integer, 200–599) to override the HTTP status of the sync response.

Configuring nodes


To configure any node, double-click it on the canvas. A configuration panel slides in from the right side. Each node type has its own panel layout:
  • Trigger: Name field + trigger type dropdown + trigger-specific schema fields.
  • Executor Call: Provider dropdown + Executor dropdown + auto-filled name + executor-specific schema fields.
  • Conditional: Name field + the visual condition builder (cases and rules).
  • Action: Name field + the set_output output configuration.
After filling in the configuration, click Save & Close to apply the changes and return to the canvas.

Connections


Connections define the order in which nodes execute. Each connection forms a directed edge from one node’s output to another node’s input.
  • A node can have multiple outgoing connections (e.g., conditional nodes have one per case, plus the default path when enabled).
  • A node can receive input from multiple sources.
  • Circular connections (loops) are not supported.
Keep your workflows readable by arranging nodes from left to right or top to bottom. Use descriptive node names to make it clear what each step does.