Skip to content
Docs/Build workflows

Visual flow builder

The Flow Builder lets you compose tasks and configured nodes as a graph, save work in progress, and register a deployment in an environment.

On this pageBefore you beginCreate a graphValidation and configurationDeploy and inspectEdit existing workflowsTroubleshooting

Before you begin

Sign in, select the intended workspace and environment, and use a role with flows.read and flows.write. Read the node catalog for the prerequisites of each node you intend to use. Registry metadata describes configuration and ports; it does not install packages or grant provider credentials.

Create a graph

  1. Open Flow Builder from the application navigation.
  2. Add a node from the node library. Give each node a unique, meaningful name.
  3. Select the node and supply its required configuration. A generic Task needs an import path that can actually be imported in the execution runtime.
  4. Connect the output port of an upstream node to a compatible input port of a downstream node. The port name and accepted data type matter.
  5. Validate the graph and inspect all errors and warnings. Fix missing import paths, duplicate names, and cycles before deployment.
  6. Save the draft with a recognizable name. Load saved drafts to continue editing later.

The builder also saves nonempty drafts periodically. Explicitly save important edits and verify they appear after reopening; background saves can fail. The node registry API supports listing, searching, inspecting definitions, and checking port compatibility.

Validation and configuration

A DAG cannot contain a cycle or self-reference. The builder blocks deployment on validation errors. Some missing required configuration and unconnected inputs are warnings, so a deployable graph is not necessarily a runnable graph. Review warnings and run a representative test in develop.

Use the actual node configuration keys in the node catalog. Saved connector selection currently does not guarantee credential resolution at execution time. Configure each node's supported credential mechanism or use a custom Python task as described in integrations.

Deploy and inspect

  1. Select Deploy, then enter a flow name and version and choose an environment.
  2. Inspect the FlowSpec JSON, Python, or YAML tabs if you need an export. These describe the graph; an exported file is not proof that imported code or dependencies exist remotely.
  3. Submit the deployment. Registration and deployment creation are separate operations; if the console reports that registration succeeded but deployment failed, resolve the error and retry creation.
  4. Open Deployments and verify the resulting flow version, environment, runtime tier, and dependency packages.
  5. Trigger a test run and inspect Runs for task states and logs.

The builder currently sends its tier selection through default_executor, while deployment creation defaults execution_mode to nano. Set and verify the desired execution_mode through deployment settings before relying on a nondefault tier.

Edit existing workflows

Opening an existing flow can create a working draft of its Python source. Source edits and canvas changes are work in progress; verify the deployment's version after publishing changes. Reconstructing a graph from arbitrary Python is not a guaranteed lossless round trip. Keep your own source under version control and test changes before updating the production deployment.

The REST API exposes POST /dag-drafts, list/detail, PUT /dag-drafts/{draft_id}, and delete for canvas drafts. The separate flow source draft endpoints are documented in flows and deployments. Draft changes do not by themselves run a workflow.

Troubleshooting

SymptomResolution
Missing import pathSelect a registered executable node or provide an importable task path and package it for the runtime
Missing package at executionBuild and attach a dependency package; selecting a node does not install its dependencies
Credentials fail despite a saved connectorUse the node's supported secret or environment configuration; review the current connector boundary
Registered flow but no deploymentResolve the deployment error and create the deployment using the returned flow name/version
Validation passes but run failsInspect required-field warnings, runtime logs, network reachability, and node-specific limitations

For reusable custom capabilities, see custom nodes.