> ## Documentation Index
> Fetch the complete documentation index at: https://help.csvbox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Sheet API

> Create and manage CSVbox sheets and their column configurations programmatically.

The Sheet API lets you create and manage CSVbox sheets and their column configurations programmatically, instead of only through the dashboard.

## Authentication

All Sheet API requests require both of these headers. You can find the keys on the **API Keys** page of the CSVbox dashboard. For more details, see the [Auth API](/advanced-installation/auth-api) page.

| Header | Value |
| - | - |
| `x-csvbox-api-key` | Your API key |
| `x-csvbox-secret-api-key` | Your secret API key |

<Warning>
  Never expose your secret key in browser-side code. Call the Sheet API from your backend.
</Warning>

## Checkbox display for Boolean columns

To show a Boolean column as a checkbox on the **Verify Data** step, set `render_as_checkbox` in the column's `validators`:

```json theme={null}
{
  "column_name": "Is Active",
  "data_type": "Boolean",
  "validators": { "render_as_checkbox": true }
}
```

The setting is returned when you get a sheet, so you can read a sheet and send it back without losing it. The values `"false"`, `"0"`, and `"off"` count as off. `required` is always set to `false` for a checkbox column, even if you send `true`. See [Display as checkbox](/dashboard-settings/validations#display-as-checkbox) for how values are converted.

## Endpoints

<CardGroup cols={2}>
  <Card title="List sheets" icon="list" href="/advanced-installation/sheet-api/list-sheets">
    `GET /1.1/sheet`
  </Card>

  <Card title="Get a sheet" icon="file-lines" href="/advanced-installation/sheet-api/get-sheet">
    `GET /1.1/sheet/{sheet_license_key}`
  </Card>

  <Card title="Create a sheet" icon="plus" href="/advanced-installation/sheet-api/create-sheet">
    `POST /1.1/sheet`
  </Card>

  <Card title="Replace a sheet" icon="arrows-rotate" href="/advanced-installation/sheet-api/replace-sheet">
    `PUT /1.1/sheet/{sheet_license_key}`
  </Card>

  <Card title="Update a sheet" icon="pen" href="/advanced-installation/sheet-api/update-sheet">
    `PATCH /1.1/sheet/{sheet_license_key}`
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.