# Sheets API XLSX Workbook Builder

> Sheets API XLSX Workbook Builder is a paid API for AI agents from sheets-api-production-636c.up.railway.app, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-11).

Generates styled, multi-sheet XLSX workbooks with typed cells, numeric formats, frozen headers, auto-filters, and cached formula totals from structured JSON input.

## Facts

- Endpoint: POST https://sheets-api-production-636c.up.railway.app/v1/workbooks/build?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/sheets-api-xlsx-workbook-builder-73af3980
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2Mh1Q3owSibFmKb9_zIQ7

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability sheets-api-xlsx-workbook-builder-73af3980 -d '<json body>'
```

Example prompt: Build me a styled XLSX workbook titled 'Q2 Sales Report' with a green accent color, one sheet called 'Revenue' with columns for Product (text), Units (integer), Price (currency in USD), and Margin (percent), include a totals row for Units and Price, and use this sales data I'm pasting in.

## When to prefer this

Choose this endpoint when you need to programmatically generate a polished, formatted XLSX file — especially when you require multiple worksheets, typed numeric formats (currency, percent, integer, decimal), frozen headers, auto-filters, and SUM totals in a single API call. Prefer this over generic CSV export when presentation and spreadsheet structure matter, or over Google Sheets API when you want a self-contained file without cloud storage dependencies.

## Known failure modes

- Invalid accent hex color returns validation error
- Sheet name exceeds 31 characters causes rejection
- More than 5 sheets or 30 columns per sheet exceeds limits
- More than 1000 rows per sheet triggers limit error
- String values starting with '=' are kept as text (not evaluated as formulas)
- Missing required fields (name, columns, rows) per sheet causes 400 error
- Unsupported currency code returns enum validation error

## How this service works

Create styled XLSX workbooks with typed cells, multiple worksheets, filters, frozen headers, numeric formats and cached formula totals. Input strings remain text, including strings beginning with =.

## Output

Returns a downloadable XLSX binary file — a fully styled Excel workbook with the requested sheets, typed and formatted cells, frozen header rows, auto-filters on each sheet, and SUM formula totals cached as numeric values for the specified columns. The file is ready to open in Excel, Google Sheets, or any compatible spreadsheet application.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "title": {
   "type": "string",
   "maxLength": 150,
   "minLength": 1
  },
  "accent": {
   "type": "string",
   "default": "#237b65",
   "pattern": "^#[0-9a-fA-F]{6}$"
  },
  "sheets": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "name",
     "columns",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string",
      "maxLength": 31,
      "minLength": 1
     },
     "rows": {
      "type": "array",
      "items": {
       "type": "object",
       "propertyNames": {
        "type": "string"
       },
       "additionalProperties": {
        "anyOf": [
         {
          "type": "string",
          "maxLength": 1000
         },
         {
          "type": "number"
         },
         {
          "type": "boolean"
         },
         {
          "type": "null"
         }
        ]
       }
      },
      "maxItems": 1000
     },
     "totals": {
      "type": "array",
      "items": {
       "type": "string",
       "maxLength": 40,
       "minLength": 1
      },
      "default": [],
      "maxItems": 30
     },
     "columns": {
      "type": "array",
      "items": {
       "type": "object",
       "required": [
        "key",
        "label"
       ],
       "properties": {
        "key": {
         "type": "string",
         "maxLength": 40,
         "minLength": 1
        },
        "label": {
         "type": "string",
         "maxLength": 100,
         "minLength": 1
        },
        "format": {
         "enum": [
          "general",
          "integer",
          "decimal",
          "currency",
          "percent"
         ],
         "type": "string",
         "default": "general"
        }
       },
       "additionalProperties": false
      },
      "maxItems": 30,
      "minItems": 1
     }
    },
    "additionalProperties": false
   },
   "maxItems": 5,
   "minItems": 1
  },
  "currency": {
   "enum": [
    "USD",
    "EUR",
    "GBP",
    "CAD",
    "AUD",
    "JPY",
    "INR"
   ],
   "type": "string",
   "default": "USD"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/sheets-api-xlsx-workbook-builder-73af3980/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from sheets-api-production-636c.up.railway.app](https://www.zero.xyz/host/sheets-api-production-636c.up.railway.app/llms.txt)
