Variable Assignment
Store, update, and manage named values in workflow execution memory for downstream node access.
The Variable Assignment node stores a value — literal, computed, or expression-based — into workflow execution memory under a named key. Once assigned, any downstream node in the same workflow can read the variable using var.variableName. Variables persist for the entire lifetime of the workflow execution unless explicitly removed.
Key Capabilities
- Assign literal values (strings, numbers, booleans) directly in configuration
- Evaluate BizFirst expressions (
{@ ... }) to compute dynamic values at runtime - Read from input data, previous node outputs, or other variables
- Choose execution scope (workflow-wide) or local scope (current block only)
- Set a variable to
nullto effectively remove / unset it from memory - Supports all expression prefixes:
var.*,output.*,input.* - Thread-safe variable access within parallel branches
- Works inside loops, conditionals, try/catch blocks, and parallel forks
Business Benefits
Variable Assignment is one of the most fundamental building blocks in any BizFirst workflow. It provides a clean, explicit mechanism for data plumbing — passing computed results between nodes without relying on chained node outputs alone. By naming values meaningfully (e.g., customerTier, invoiceSubtotal), workflows become self-documenting and easier to maintain.
Teams can avoid duplicating expensive API calls by storing the result once and referencing it multiple times. The node also enables incremental data construction: build a complex object piece-by-piece across multiple assignment steps, then pass the assembled object to an action node.
Common Use Cases
| Scenario | How Variable Assignment Helps |
|---|---|
| Cache an API response | Store the HTTP response body in a variable so it can be referenced by multiple downstream nodes without re-calling the API. |
| Running totals in loops | Maintain an accumulator variable across loop iterations — e.g., summing invoice line amounts. |
| Store user decisions | After an approval node, capture the approver's decision and comments for use in downstream notifications. |
| Conditional branching prep | Compute a derived value (e.g., customer tier based on total spend) and store it so the downstream Switch node can branch on it. |
| Build output objects step by step | Incrementally assemble a complex output payload across several nodes, then pass the fully-built object to a webhook or email node. |
In This Guide
Configuration
All properties including variable_name, value, value_expression, and scope options explained with types and defaults.
Input & Output
Output ports (success / error), what gets written to memory, and how to reference assigned variables from other nodes.
Examples
Five real-world examples including literal assignment, expression-based computation, loop accumulators, and null removal.