Skip to content

And Operator Node

This guide explains how to configure and use the AndOperator node in your automation workflows to join multiple parallel branches into a single merged output.

1. Purpose

  • The AndOperator node acts as a join or aggregation point in your workflow.
  • It waits for all upstream branches to complete, then merges their outputs into one unified context for downstream tasks.

2. Configuration

2.1 Dependencies

  • Draw dependency edges from each upstream task into the AndOperator node.
  • Use any status branch (e.g. Completed, Success, or custom status names) on each dependency—AndOperator will collect all regardless of branch name.
text
[TaskA] ──(Completed)──╮

                     [AndOperator] ──(Completed)──▶ [NextTask]

[TaskB] ──(Completed)──╯

2.2 Inputs

  • No additional TextInputs are required on the AndOperator node itself—its only job is to merge upstream data.

3. Behavior

  1. Hold state: As each upstream task finishes, its output variables are stored in the workflow’s global result map.

  2. Release: Once every parent task has produced output, the AndOperator node becomes eligible to run.

  3. Merge: When executed, AndOperator automatically:

    • Gathers each parent’s output data dictionary.
    • Combines them into one merged dictionary (later values override earlier on key conflicts).
    • Injects merged into its own data and makes them available to downstream placeholders (e.g. , ).
  4. Continue: After merging, it sets taskSuccess = true and routes along the configured branch (usually Completed).


4. Example JSON Configuration

alt text

In this example:

  • FetchCustomer and FetchOrders run in parallel.
  • After both finish, AndOperator merges their outputs.
  • Downstream tasks can reference both and in one place.

5. Troubleshooting

  • AndOperator never fires: Ensure every upstream task has a dependency route into the AndOperator, and that each has completed successfully.
  • Missing data keys: Verify that upstream tasks output the variables you expect (check their data maps) and that there are no naming collisions.
  • Early release: AndOperator will not run until all parents appear in the _results map—no special configuration needed beyond dependencies.

Tentech 2024