
Transform Zip
CertifiedCombine records by row position
Transform Zip
Combine records by row position
Merge multiple record streams row by row, combining record i from each input and resolving field conflicts.
type: io.kestra.plugin.transform.ZipExamples
Zip records from multiple sources
id: zip_two_sources
namespace: company.team
tasks:
- id: left
type: io.kestra.plugin.core.output.OutputValues
values:
records:
- id: 1
left_value: L1
- id: 2
left_value: L2
- id: right
type: io.kestra.plugin.core.output.OutputValues
values:
records:
- id: 1
right_value: R1
- id: 2
right_value: R2
- id: zip
type: io.kestra.plugin.transform.Zip
inputs:
- "{{ outputs.left.values.records }}"
- "{{ outputs.right.values.records }}"
onConflict: RIGHT
Properties
inputs *RequiredNon-dynamicarray
Input records
List of two or more inputs (Ion list/struct or storage URIs) to align and merge by row position. All inputs must have the same length.
onConflict string
FAILFAILLEFTRIGHTOn conflict behavior
Controls duplicate field names while merging a row. FAIL errors, LEFT keeps the first value, and RIGHT overwrites with the later value.
onError string
FAILFAILSKIPOn error behavior
FAIL stops the task on row merge errors, and SKIP drops the current row.
outputFormat string
TEXTTEXTBINARYOutput format
Experimental: TEXT or BINARY. Only transform tasks can read binary Ion. Use TEXT as the final step.
outputType string
AUTOAUTORECORDSSTOREOutput type
AUTO stores to internal storage when any input is a storage URI; otherwise it returns records.
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
Outputs
records array
Zipped records
JSON-safe records when output mode is RECORDS or AUTO resolves to RECORDS.
uri string
Stored Ion file URI
URI to the stored Ion file when output mode is STORE or AUTO resolves to STORE.