Browse the docs
Parse node

JSON

Parse a JSON text column into typed columns, a name/value table, or auto-flattened columns.

Category
Parse

What it does

Turns a column of JSON text into structured data, three ways. Extract pulls the exact paths you name into their own named, typed columns. Name/Value explodes each record into one tidy row per value (name, value, type). Auto-flatten turns every key into a column for you, guessing each type from the data.

Inputs and outputs

InputsOne.
OutputsOne.

When to use it

  • Pull a few known fields out of an API response or a log line into clean columns
  • Explode an array of objects (line items, tags) into one row each
  • Land unknown or ever-changing JSON as a name/value table you can pivot
  • Quickly flatten a whole JSON blob into columns without naming anything

Examples

Extract typed fields

user.id → id (Integer),  user.name → name

Two clean columns; a value that won't convert becomes null.

Explode an array

orders[*].sku,  orders[*].qty

One row per order; other columns are copied down.

Name/Value table

{"a":1,"b":"x"} → 2 rows

a | 1 | integer and b | x | string.

Auto-flatten

{"user":{"city":"nyc"}} → user.city

Nested keys become dot-notation columns automatically.

Tips

  • Path syntax: dots for nested keys (user.address.city), [0] for an array index, [*] to explode an array of objects into rows.
  • Extract and Name/Value know their columns up front; Auto-flatten discovers them from the data, so downstream nodes see those columns only after a test run.
  • In Auto-flatten, choose how arrays land: exploded into rows, kept as JSON text, or spread into name[0], name[1] columns.
  • A null cell, invalid JSON, or a missing path becomes null and the run keeps going. Switch on "Fail the run" if you'd rather catch bad JSON hard.
  • Turn on "Keep the source column" to hold onto the original JSON alongside the parsed output.