core.split_out
Split Out (core.split_out)
Explode a list field into one item per element — the node that turns an API
response like {"results": [...]} into a stream of individual items the rest
of the workflow can filter, route, and map.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
field | dot-path | "" | Where the list lives, e.g. data.items. Expression-capable. |
destination_field | string | "" | Key each element lands under. Empty: object elements become the item's json; scalars land under the path's last segment. |
include_other_fields | boolean | false | Carry the source item's other top-level keys onto every split item. |
Behavior
field results
input {"results": [{"id": 1}, {"id": 2}], "page": 1}
output {"id": 1} {"id": 2}
With include_other_fields on, page: 1 rides along on both output items.
Scalar elements get a key:
field tags
input {"tags": ["a", "b"]}
output {"tags": "a"} {"tags": "b"}
Every split item keeps a paired_item pointing at its source item and a copy
of the source's binary attachments — a 3-element list from one item with a
file yields 3 items that all reference that file.
Non-list values pass through as a single item; a missing field yields nothing for that item (the other items still split normally).
Quirks & tips
- A blank
fieldsilently drops everything. An unconfigured Split Out emits zero items and no error — if a run goes mysteriously quiet, check this node's field first. - An empty list also yields nothing — correct, but worth remembering when counting outputs.
include_other_fieldsexcludes the whole top-level key of the path. Splittingdata.itemscarriesbatch,page, … but notdata.meta— everything underdatais considered consumed.- Element keys beat carried keys. If an element and the source item both
have
tag, the element's value wins. - A list inside the list stays a list (
{"rows": [1, 2]}) — Split Out goes one level deep. Chain two Split Outs to flatten deeper. nullelements become items with anullvalue, they're not skipped.
Related
- Extract From File — already emits row items for CSV/XLSX/JSON arrays; you rarely need Split Out behind it.
- Loop Over Items — process the exploded stream in batches.
- Set — reshape the split items afterward.