Back to Integrations
Logic

Merge

The Merge node is the essential counterpart to branching nodes like If/Else or Switch. It waits for data from multiple input branches and merges them into one cohesive dataset. Use it to wait for parallel tasks to finish or merge routing silos back to a common action.

Merge
Core / Logic

What can you do with Merge?

Data Appending

Seamlessly append data from branch A directly beneath data from branch B, uniting two entirely separate data streams back into one master array.

Relational Key-Based Joins

Perform robust "SQL-like" data joins by combining data objects from two branches based on a strictly matching variable (like merging User Info with their Orders).

Execution Checkpoint Synchronization

Acts as a hard waiting checkpoint, ensuring execution only continues downstream once all parallel asynchronous paths have fully resolved.

Detailed Usage & Configuration

The Merge Node handles exactly one objective: Re-stitching divided datasets cleanly back together.

1. Operating Modes

  • Append (Concat): The most straightforward mode. If Branch 1 holds [Item A] and Branch 2 holds [Item B], the output simply concatenates them into [Item A, Item B].
  • Keep Key Matches: Functions like an SQL INNER JOIN. Combine arrays only if a specific Key on Branch 1 precisely matches a Key on Branch 2. Returns entirely unified, deeply merged Javascript objects.

2. Resolving Parallels

When you deliberately split execution manually (triggering two distinct HTTP requests simultaneously for faster execution), nLink runs them asynchronously. If you connect them both back into a Merge node, it becomes a Barrier Checkpoint. Execution completely halts at the Merge node until both prior HTTP requests return cleanly, unifying the downstream flow seamlessly.