{"id":"csv-merge-columns","version":"1.0.0","description":"Join named CSV columns with an exact separator into one column.","supported_operations":["csv merge columns","join csv columns with separator","combine csv columns into one"],"unsupported_operations":["skip empty parts","trim cells before joining","regex join","infer target name","fuzzy matching","read files","fetch urls"],"semantics":["The first CSV record is the header row. An empty document is rejected; a header-only document yields merged headers and zero data rows.","columns names 2 to 16 unique existing headers exactly. separator is a literal string of at most 16 UTF-16 code units and may be empty.","Each output cell is columns.map(c => cell[c]).join(separator) with no trimming, skipping of empties, case folding, or type coercion.","Source columns are dropped. into is inserted at the original index of columns[0] after earlier source columns are removed. into may equal a source column name but must not equal a remaining non-source header.","The first output header name may not begin with U+FEFF because it is ambiguous with a CSV byte-order mark."],"limits":{"max_input_bytes":256000,"max_data_rows":5000,"max_columns":256,"max_header_name_bytes":256,"min_merge_columns":2,"max_merge_columns":16,"max_separator_chars":16,"max_output_bytes":256000},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","additionalProperties":false,"required":["csv","columns","separator","into"],"properties":{"csv":{"type":"string","maxLength":256000},"columns":{"type":"array","minItems":2,"maxItems":16,"uniqueItems":true,"items":{"type":"string","minLength":1,"maxLength":256}},"separator":{"type":"string","maxLength":16},"into":{"type":"string","minLength":1,"maxLength":256}}},"output_schema":{"type":"object","additionalProperties":false,"required":["csv"],"properties":{"csv":{"type":"string"}}},"examples":[{"input":{"csv":"id,first,last\n1,Ada,Lovelace\n2,Grace,Hopper\n","columns":["first","last"],"separator":" ","into":"name"},"output":{"csv":"id,name\n1,Ada Lovelace\n2,Grace Hopper\n"}}],"execute_url":"/v1/tools/csv-merge-columns/versions/1.0.0/execute"}