Inputs and outputs
Bind named values and declare their schemas independently of execution routing.
A port names one value and describes its JSON schema and nullability. A data source supplies that value when the node executes.
Input sources
| Source | Meaning |
|---|---|
| Fixed value | A literal JSON value saved in the node. |
| Upstream output | A named business output available on the selected execution path. |
| Variable | An account-owned value resolved by the deployment for the Run. |
| Default | The input inherits its saved default, where supported. |
| Unset | The input explicitly has no binding and does not inherit a default. |
Not every node supports every source. Provider Trigger configuration is used before its Run exists, so it cannot consume results produced by that Run. Read the node’s schema for supported sources.
Bind an upstream output
This public authoring operation binds an input without adding an execution edge:
{
"op": "input.set",
"node": "TARGET_NODE_REFERENCE",
"input": "message",
"source": { "kind": "output", "node": "SOURCE_NODE_REFERENCE", "port": "message" }
}
When a node has a single business output, the public interface can resolve an omitted port. Select a port explicitly when multiple outputs exist.


- Input
- {"name":"Ada"}
- Expected result
- {"message":"Hello, Ada!"}
- Before running
- An Open Flow deployment is needed to execute or import this example. The preview itself runs offline.
Schemas and missing values
Schema constraints and nullability are checked independently. A number cannot satisfy a string input simply because the canvas connects the nodes. Declare object properties when downstream nodes need to select a field.
A field selector chooses one direct property named by the output schema. Dots and slashes in a property name are literal; the selector is not a nested JSON path.
Zero available sources produce null; an explicit null output counts as an available source. Multiple available sources for one input cause an error. Port validation then determines whether the resulting value is accepted.
Workflow interface
Start owns the Flow’s input definitions. Outputs owns its output definitions and mappings. Outputs has no downstream data ports; a caller receives its values as workflow business results.