Blocks that branch a flow#

Evaluate, Condition, If, Validate, OR, and Delay decide where a value goes next.

Logic blocks decide where a value goes next. They branch a flow down different paths, merge two paths back together, or hold a value for a set time. The category has six blocks. This page covers each, with its ports and configuration.

Evaluate#

Runs an expression and emits the result. It takes a starting variable, plus any extra inputs you name in the inspector, and emits the value on its Result output. Use Evaluate to compute a derived value, for example summing a list or reading a field.

Condition#

Routes the input down the first path whose test passes. It has a starting variable input and a Default output. In the inspector you add named conditions, each with an expression, and each adds an output port. The block sends the input to the first port whose expression is truthy. If none match, it goes to Default.

If#

Branches two ways. It takes a starting variable and a Data input, and evaluates a single expression you set in the inspector. When the expression is truthy the Data value leaves on Then, otherwise it leaves on Else.

Validate#

Checks the input against a JSON Schema. It has a Data input and two outputs. When the data matches the schema, the block forwards it on Pass. When it does not, the block emits an object that describes the failure on Fail. Set the schema in the inspector.

OR#

Merges two paths into one. It has Input 1 and Input 2, and a single Output. It forwards whichever input has a value, preferring Input 1. Use it to join two upstream branches onto a single edge.

Delay#

Pauses for a set number of milliseconds, then forwards the input unchanged. It has one Input and one Output. Set the delay in the inspector.