Use a live, pure Transform to take apart one input or bring several ordered inputs together as text, fields, or a list; add safe visual steps, inspect actual values, follow Route winners, and expose named typed outputs.
Where: Flowgen → Add → Automation → Extract / Merge; select the node to configure it in Properties
Key ideas
- Take apart or Bring together: Take apart starts from one connected value and extracts/reshapes it. Bring together combines ordered wires into one piece of text, one set of named fields, or one ordered list.
- Live by default: Keep the result current recomputes this pure/free node whenever resolved inputs, Route winner, recipe, or output definitions change. Manual mode holds the last run until Run.
- A closed safe vocabulary: The 19 supported steps are select, pick, omit, rename, map fields, set, wrap, default, template, join text, replace text, coerce, parse JSON, stringify JSON, take row, filter, for-each map, slice, and sort. It runs no user code or regex.
- Named typed outputs: The main Value socket carries the whole result. Add outputs for exact fields or the whole result with text/image/video/audio/mask/HTML/3D and other types; the UI warns when a value does not satisfy the declared type.
- Dynamic Route and List values: The preview/executor resolve group inputs, active List rows, and the actual winning Route value through the same reader, so the panel and run do not disagree.
- Shape-aware authoring: Extract / Merge measures the current input and reads declared schema, so it can offer real fields, typed media, list-preserving operations, and useful templates instead of a blank generic recipe.
- Ready-made recipes and Route preview: The sidebar can propose common extract/merge transformations and show the current Route winner/branch options while keeping the live runtime value authoritative.
Steps
- Connect one or more values to Data and select Extract / Merge.
- Choose Take apart for one value or Bring together for several.
- Review Input and reorder connected wires when their merge order matters.
- For Bring together, choose one piece of text, one set of fields, or one list; adjust text separator or field names.
- For Take apart, use quick field/row/text actions or add visual steps in order. Inspect each step’s measured shape/error before continuing.
- Leave Keep the result current on for live shaping, or turn it off when the result should change only on an explicit run.
- Under Result, create typed outputs for the exact fields/media the next nodes require and inspect any type warning.
- Use Advanced only for output format, explicit starting paths, or the same closed pipeline as JSON.
- Test with representative null, missing, list, media, Route, and List-iteration values before publishing an automation.
- Inspect the detected shape and field chips, choose a ready-made recipe when it matches, or assemble the exact closed operations; verify the current Router branch preview before wiring typed outputs.
Bring together choices
- Text — ordered values with Blank line/New line/Space/Comma/Nothing separator.
- Fields — one editable field name per source; duplicate names are safely disambiguated.
- List — all arriving values in durable wire order.
Result outputs
- Value / data_out — base result.
- Send <field> — one-click typed field socket.
- Take one row first — makes list row fields addressable.
- Create image/video/etc. output — typed whole-value socket.
- Output setup — rename/type/reorder/select source and inspect measured/last values.
Advanced reference
- Keep fields vs one piece of text.
- Start from an explicit scope path.
- Independent per-output starting paths.
- Pipeline as JSON synchronized with the visual steps.
Typed media and Lists
- A media socket can carry one link or a list of links.
- Filter/sort/slice preserve list shape.
- Declared output sockets keep exact text/image/video/audio/HTML/dataset/etc. types.
- Router-connected inputs follow the winning runtime value rather than the branch shown when the graph was authored.
Content-aware merge defaults and media previews
An unconfigured Transform can recognize text fan-in as a text merge and media fan-in as a flat list. Bring them together still offers Text, Fields, or List in durable wire order. Custom authored steps are preserved: the shortcut refuses to replace a pipeline it does not own.
- Text separators: Blank line, New line, Space, Comma, or Nothing.
- Fields expose editable names per arriving wire; invalid/duplicate names are handled by the existing safe field rules.
- Media values and lists retain their typed preview and lightbox rather than showing only raw object text.
- The updated list recipe flattens incoming lists into useful entries instead of adding an accidental extra array layer.
Tips
- Keep recipes short and name outputs by meaning.
- Let Bring together synthesize its own merge before editing advanced steps.
- Use a typed socket for media.
- Inspect the “Follows the Router automatically” notice instead of snapshotting a visible branch.
Limitations and important notes
- Transform is deterministic data shaping, not arbitrary code.
- User regex is intentionally unsupported.
- A complex existing recipe is never overwritten by a merge shortcut without explicit editing.
Troubleshooting
The output is stale
Turn on Keep the result current or run manually; inspect the auto/manual badge.
The wrong Route branch was extracted
Connect the Route Result/current door and confirm the Router-following notice; avoid copying a static URL/text field from one visible case.
A typed output warns that it carries the wrong value
Choose the exact field/source and correct its declared type instead of relying on implicit coercion.
Bring together refuses to change mode
The node has an authored custom pipeline that the shortcut will not overwrite. Open Steps, revise/remove it, then choose the merge shape.
FAQ
Does Transform cost Sparks?
No. It is a pure local/server-safe data operation with no model call.
Can it merge media?
It can merge media descriptors into fields/lists and expose typed media outputs; it does not concatenate pixel/audio/video content.
Is the JSON editor arbitrary code?
No. It edits the same closed operation list as the visual Steps UI.