Compare two versions of a table
table_diffCompares two versions of any table (CSV, TSV, XLSX or text-based PDF; price list, bill of materials, product or ERP export, report; up to 20 MiB each). Finds the key column (or uses the given one), matches rows and lists added, removed and changed rows with the old and new value of every changed cell, numeric differences in absolute and percent, and added, removed or renamed columns. Numbers are compared by value, so 1.234,56 and 1234.56 are equal. Files can be passed as upload, URL or CSV text.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | Key column header(s) as in the old file; detected when omitted. | |
| options | No | Optional DiffOptions, e.g. {"column_map": {"Qty": "Quantity"}, "ignore_columns": ["Updated"], "numeric_tolerance": "0.01", "ignore_case": true}. Schema: /v1/schemas/table-diff-options. | |
| new_file | No | New version of the table. A file uploaded in ChatGPT (object with download_url and file_id). | |
| old_file | No | Old version of the table. A file uploaded in ChatGPT (object with download_url and file_id). | |
| max_changes | No | Row changes returned (counts stay complete). | |
| new_file_url | No | New version. Public URL of the file (http/https). Google Drive, Google Sheets and Dropbox share links are converted to direct downloads. Max 20 MiB. | |
| new_filename | No | Original filename with extension (e.g. prices.xlsx); used to detect the format. | |
| old_file_url | No | Old version. Public URL of the file (http/https). Google Drive, Google Sheets and Dropbox share links are converted to direct downloads. Max 20 MiB. | |
| old_filename | No | Original filename with extension (e.g. prices.xlsx); used to detect the format. | |
| new_file_path | No | Local file path; only allowed when the server runs locally over stdio. | |
| new_file_text | No | New version. The table as CSV or TSV text, header row first (e.g. 'SKU;Price;Currency\nA1;12.50;EUR'). | |
| old_file_path | No | Local file path; only allowed when the server runs locally over stdio. | |
| old_file_text | No | Old version. The table as CSV or TSV text, header row first (e.g. 'SKU;Price;Currency\nA1;12.50;EUR'). | |
| new_file_base64 | No | New version. File content as Base64 (standard alphabet). Max 20 MiB decoded. | |
| old_file_base64 | No | Old version. File content as Base64 (standard alphabet). Max 20 MiB decoded. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||