Turn an API response or JSON export into an Excel sheet and a CSV
Exports and API responses arrive as JSON, but colleagues want a spreadsheet and import tools want CSV. JSON copied from logs or documentation also carries small mistakes — comments, trailing commas, single quotes — that make strict converters fail, and long IDs get rounded by spreadsheets. This recipe repairs and formats the JSON once, then writes the same records twice: an Excel workbook with nested fields as their own columns and long numbers kept exact, and a CSV for importing, both named with the export's name and today's date. The data stays on your device.
The workflow
You addOne or more .json files
Branch 1
JSON Formatter
Repair on, 2-space indent
Repair fixes common mistakes such as comments, trailing commas, single quotes and unquoted keys, and wraps JSON Lines into an array. Valid JSON passes through unchanged apart from formatting.
JSON to CSV
Excel workbook, lists in their own columns
An .xlsx opens in Excel, Numbers and Google Sheets without a separator or encoding question. Nested objects become dotted columns, and numbers longer than Excel's 15 digits are stored as text so IDs are not rounded.
Rename files
orders-2026-10-01.xlsx
The export's own name plus the date tells everyone which snapshot they are looking at.
Branch 2 · continues from step 1, JSON Formatter
JSON to CSV
CSV, comma, Excel-friendly UTF-8
Import tools, databases and CRMs expect CSV. The byte-order mark makes Excel read accented letters correctly if someone opens the CSV directly; most import tools ignore it.
Rename files
orders-2026-10-01.csv
Same name as the workbook, so the pair belongs together.
You getPer file: an .xlsx workbook and a .csv, dated
A measured run
We ran this recipe on 1 October 2026 in a Chromium-based desktop browser on a Mac, with a 229-byte export containing three copy-paste mistakes (a // comment, a single-quoted key and a trailing comma) and two 20-digit IDs.
All three mistakes were repaired without changing a value, and the meta object was left out because rows come from the largest list of records. Both 20-digit IDs arrived digit for digit: as text cells in the workbook and unchanged in the CSV.
Which records become rows
Rows come from the largest list of records in each file. For a typical API response such as {"data": [{…}, {…}], "meta": {…}}, that is the data list, and meta is left out. If the file has several lists of similar size, add JSONPath Query after JSON Formatter, for example $.data[*], to choose the list.
How to use the workflow
- Select Open this workflow, then add your .json files in the Input pane.
- Select Run workflow. Open JSON Formatter to see whether anything was repaired.
- Download the .xlsx and .csv from the two Rename files steps, or use Download all.
Variations
- Importing into a tool that wants semicolons? Open the CSV step and choose a semicolon separator.
- Need only some fields? Add JSONPath Query after JSON Formatter.
- Working with tokens or personal data? Everything runs locally, but the downloaded files hold the same data.
Questions
Is the JSON sent to a server?
No. Parsing, repair and file writing happen in your browser.
What if the JSON cannot be repaired?
The JSON Formatter step stops with the parser's message, including the line and column of the problem, and the later steps do not run.
Can I convert CSV back to JSON?
Yes, with CSV to JSON. Start a workflow with a CSV file and choose it as the first step.