← All nodes
Parsing

JSON to Rows

Makes one row per item of a JSON list in a column: an order with three lines becomes three rows, each item's fields as columns.

When to use it

Use it for nested data where one record holds a list — order lines, tags, addresses — and you need a row per list item to total, join or export.

In a pipeline

Settings

SettingTypeRequiredDefault or hint
JSON columnselectYesSelect column…
Path to the listtext—Blank: the JSON is the list. Or e.g. order.lines
Keep the other columns on each rowcheckbox—true

Example

Order lines as rows

  • JSON column=Lines
  • Keep the other columns on each row=Yes
One row per order
OrderLines
A-1[{"sku":"A","qty":2},{"sku":"B","qty":1}]
A-2[{"sku":"C","qty":5}]
One row per line
Orderskuqty
A-1A2
A-1B1
A-2C5

Worth knowing

  • Path to the list points inside the JSON (order.lines) when the list is not the whole cell.
  • Plain items ("red", "blue") go into a Value column; nested objects inside an item stay as JSON text for a JSON Parse further on.
  • A row whose list is empty or missing is kept once with blanks, so no record silently disappears.
  • The node refuses to make more rows than the server's row limit, before doing any work.
  • Run or preview once so downstream column pickers learn the item fields.

Others in Parsing