Menu
Concepts
Variables
Named, typed values scoped to a workflow — ten types, from plain strings to connections and cron schedules — referenced from steps and routes with {{variables.<key>}}.
What a variable is
A workflow variable is a named, typed value scoped to the workflow — created once, then referenced from any step or route via {{variables.<key>}}. Use it for anything that shouldn't be hardcoded into a step — credentials, config that changes per environment, feature toggles.
{{variables.<key>}} is a distinct namespace from {{runtimeVariables.<key>}} — the latter is a separate, mutable, execution-scoped store written by the Variable connector while a run is in progress, not the workflow-level variables documented here. See Step Reference for the full set of {{...}} namespaces.
Creating a variable
- Display name — required, shown throughout the UI.
- Variable key — required, auto-derived from the name (lowercased, spaces and non-alphanumeric characters collapsed to underscores) but editable.
- Type — one of the ten types below.
- Required — whether a value must be set before the workflow can run.
- Default value — the field shown here depends on the type (see below).
- Description — optional, documents how it's used.
Variable types
- String — plain text.
- Secure String — like String, but masked in the UI (password-style input with a show/hide toggle). Unlike a Connection's credential fields, the value isn't encrypted at rest the same way — it's just hidden on screen.
- Integer — a whole number.
- Float — a numeric value.
- Boolean —
True,False, or left unset. - JSON — any JSON value, edited in a validated JSON editor.
- Array — a list of values, built as repeatable rows and stored as a JSON array.
- Key-Value Map — a set of key/value pairs, built as repeatable rows and stored as a JSON object.
- Connection — references a Connection. Optionally restrict which connection types are allowed (leave empty to allow any), then pick a default connection from a searchable list — or create one inline via New connection without leaving the form. This is the type a connector step's Connection Variable picker looks for.
- Schedule (Cron Expression) — a cron expression, validated on save, with a live preview of its next run times.
Using a variable
Reference a variable's value from any step or route with {{variables.<key>}}. A route's own auth (API key/JWT secret) and a connector step's authentication both work by pointing at a variable rather than embedding a value directly, and a Schedule-type variable can drive a Schedule trigger's cron expression the same way — set once, referenced wherever it's needed, and changeable per environment via Launch Configuration without editing every place that uses it.
Examples
String
Variable storeName set to "Acme Co":
Hello, {{variables.storeName}}!
resolves to Hello, Acme Co!
Integer
Variable maxRetries set to 3:
{{variables.maxRetries}}
resolves to 3.
Boolean
Variable featureEnabled set to true:
{{variables.featureEnabled}}
resolves to true.
Connection
Variable stripeConnection (type connection, bound to a Stripe connection):
{{variables.stripeConnection}}
resolves to that connection's resolved context as JSON. Add a property path to pull out one field instead of the whole object — {{variables.stripeConnection.someField}}. In practice most steps don't need this directly: a connector step's own Connection Variable picker (see Connections) already wires up authentication for you — referencing {{variables.<key>}} by hand is for pulling a piece of connection config into a step's input, not for authenticating the step itself.