Skip to main content

What This Node Does

The Unnest node expands array, list, or nested columns into separate rows. Use it to flatten JSON arrays, explode multi-valued fields, or normalize nested data structures from APIs, databases, or file imports. [SCREENSHOT: Unnest node showing transformation from 100 rows with arrays to 500 flattened rows]

When to Use This Node

Use the Unnest node when you need to:
  • Flatten JSON arrays - Expand tags: ["python", "data", "api"] into separate rows
  • Normalize API responses - Convert nested arrays from REST/GraphQL APIs into flat tables
  • Explode multi-valued fields - Split categories: ["A", "B", "C"] into individual category rows
  • Process nested data - Flatten hierarchical structures from JSON/XML imports

Step-by-Step Usage Guide

1

Add Unnest node to canvas

2

Connect to input data

3

Select column to unnest

Choose the array/list column to expand (e.g., Orders)[SCREENSHOT: Column selector with “Orders” selected]
4

Name unnested column

Enter name for the new column holding unnested values (e.g., “Order”)[SCREENSHOT: Configuration panel showing “Order” name]
5

Configure options

Set Preserve Index (True/False) and Keep Null Arrays (True/False)[SCREENSHOT: Options configured]
6

Preview results

Tips and Best Practices

Preview Array Size: Check max array length before unnesting. Large arrays create many output rows.
Preserve Index for Order: Enable Preserve Index when array element order is significant.
Keep Null Strategically: Use Keep Null = True to maintain all input rows for completeness.
Nested Field Extraction: Use Nested Field Path for complex objects instead of unnesting entire object.
Filter Before Unnest: Reduce input rows before unnesting to limit output size.
Add Source ID: Before unnesting, add unique row ID to track which rows came from same parent.