Workflow variables are similar to local variables used within a function of a script or programming language. Variables set within a workflow can be used by any task contained within the same workflow. Workflow tasks are scoped to a specific workflow and can read or update only any variables defined for the workflow.
Variables can either be set to a static value when a specific task is run within the workflow, they can be directly mapped based on user inputs, or dynamically set based on specifics of devices or task outputs.
Variables can also be used to simplify workflows to use a single instance of a variable that is specific to a conditional branch of a workflow, or they can leverage transformations to hold an altered value of some information to adjust every mapped instance of this variable, such as changing the case of a string value.
Variables can also leverage advanced mappings, which allows the creator to map a Golang template to the workflow variable, allowing for some functional programming to be used during a workflow to set the variable value.