Excel to JSON
Try it interactively →POST /api/xlsx-to-jsonRead an Excel sheet (.xlsx or .xls) into a JSON array of objects. Pick a sheet by name or index. Header row maps to object keys.
Inputs
| Name | Type | Default | Description |
|---|---|---|---|
| workbook* | file | — | Excel workbook bytes (XLSX, XLSB, XLS, or ODS). |
| sheet | string | — | Sheet name (case-sensitive) or 1-indexed sheet number as a string. Defaults to the first sheet. |
| header | enum (auto | none) | "auto" | `auto` (default) treats the first row as headers and emits {col: value} objects; `none` emits every row as a plain array. |
| rawValues | boolean | false | When true, return raw cell values; when false (default), dates are formatted as ISO strings. |
Response
Modes: json. Cache: yes (24h TTL).
Code samples
Built from the first-sheet example.
# Download or substitute the example input:
# curl -O https://xtract.bot/examples/excel-to-csv/sample.xlsx
WORKBOOK=$(base64 -w0 < sample.xlsx)
curl -X POST https://api.xtract.bot/api/xlsx-to-json \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "X-Account-Id: $XTRACT_ACCOUNT_ID" \
-H "X-Api-Key: $XTRACT_API_KEY" \
-d '{
"workbook": "'"$WORKBOOK"'"
}'