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 page
Before you beginCreate a graphValidation and configurationDeploy and inspectEdit existing workflowsTroubleshootingBefore 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
- Open Flow Builder from the application navigation.
- Add a node from the node library. Give each node a unique, meaningful name.
- Select the node and supply its required configuration. A generic Task needs an import path that can actually be imported in the execution runtime.
- 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.
- Validate the graph and inspect all errors and warnings. Fix missing import paths, duplicate names, and cycles before deployment.
- 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
- Select Deploy, then enter a flow name and version and choose an environment.
- 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.
- 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.
- Open Deployments and verify the resulting flow version, environment, runtime tier, and dependency packages.
- 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
| Symptom | Resolution |
|---|---|
| Missing import path | Select a registered executable node or provide an importable task path and package it for the runtime |
| Missing package at execution | Build and attach a dependency package; selecting a node does not install its dependencies |
| Credentials fail despite a saved connector | Use the node's supported secret or environment configuration; review the current connector boundary |
| Registered flow but no deployment | Resolve the deployment error and create the deployment using the returned flow name/version |
| Validation passes but run fails | Inspect required-field warnings, runtime logs, network reachability, and node-specific limitations |
For reusable custom capabilities, see custom nodes.