type, a target dot-path under context.*, and (for non-DELETE ops) a value that is a raw JSONata expression. Operations in the same node run top-to-bottom and each one sees the writes of the ones before it.
Parameters
Operation Fields
Operation Types
For object-merging and array manipulation, use
SET combined with JSONata’s built-in $merge and $append functions — there is no dedicated merge or append operation type.Examples
Normalize an Input
Clean up an email before typing it into a form:{{context.email_clean}}.
Combine Fields
Derive a full name from two inputs:Combine Two Arrays
Flat-concatenate two arrays using JSONata’s$append:
$append([1, 2], [3, 4]) produces [1, 2, 3, 4]. Note that & is string concatenation in JSONata, not array — use $append for arrays.
Accumulate Loop Results
Inside a loop body, append processed items into an array using$append:
[{...}]) wrapping is what makes $append flat-concatenate one item — passing the bare object would also work ($append flattens), but the array form makes intent obvious.
Enrich an Extracted Object
Add metadata to a record that was extracted earlier:Clean Up Before End
Drop scratch paths so they don’t show up in the webhook payload:Notes
- Targets must start with
context.. Anything else is rejected by validation because downstream nodes can’t read it. - Later operations in the same node see earlier writes, so you can derive values in stages within one Transform.

