---
title: "List report columns"
method: GET
path: "/reports/{reportId}/columns"
tags: ["reports"]
---

# List report columns

`GET /reports/{reportId}/columns`

Lists the columns for the specified report.

> **Note:** For pagination guidance, refer to [Token-based pagination](/api/smartsheet/guides/basics/pagination#token-based-pagination).

## Query parameters

- `lastKey` string
- `maxItems` integer
- `level` integer

## Response `200`

A paginated list of report column objects.

- object
  - `lastKey` string — The ID of the last item returned in the set. Use as `lastKey` (query parameter) in the request for the next page.
  - `data` ReportColumn[] — List of report column objects.
    - union
      - object
        - `title` string, required — Title of a column to match. **Note:** If you specified `primary=true` to match primary columns, you can set the resulting report column title to this value.
        - `type` 'CHECKBOX' | 'DATE' | 'DATETIME' | 'DURATION' | 'CONTACT_LIST' | 'MULTI_CONTACT_LIST' | 'PICKLIST' | 'MULTI_PICKLIST' | 'PREDECESSOR' | 'TEXT_NUMBER', required — Type of column to match. See [Column Types](/api/smartsheet/openapi/columns).
        - `systemColumnType` 'CREATED_BY' | 'CREATED_DATE' | 'MODIFIED_BY' | 'MODIFIED_DATE' | 'AUTO_NUMBER' — System column type to match. See [System Columns](/api/smartsheet/openapi/columns).
        - `sheetNameColumn` boolean — Set this to `true` to match the special "Sheet Name" report column.
        - `primary` boolean — Set this to `true` to match the primary column.
        - `virtualId` integer — The virtual ID of this report column.
        - `index` integer, required — Column index or position. This number is zero-based. Indicates the position of the column in the generated report.
        - `hidden` boolean — Indicates whether the column is hidden.
        - `version` 0 | 1 | 2 — * `0`: CONTACT_LIST, PICKLIST, or TEXT_NUMBER. * `1`: MULTI_CONTACT_LIST. * `2`: MULTI_PICKLIST.
        - `width` integer — Display width of the column in pixels.
        - `validation` boolean — Indicates whether validation has been enabled for the column (value = **true**).
        - `autoNumberFormat` object — Specifies how to format values for an auto-generated numbers column.
          - `fill` string — Indicates zero-padding. It must be between 0 and 10 "0" (zero) characters.
          - `prefix` string — The prefix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
          - `startingNumber` number — The starting number for the auto-ID.
          - `suffix` string — The suffix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
      - object
        - `title` string, required — Title of a column to match. **Note:** If you specified `primary=true` to match primary columns, you can set the resulting report column title to this value.
        - `type` 'CHECKBOX' | 'DATE' | 'DATETIME' | 'DURATION' | 'CONTACT_LIST' | 'MULTI_CONTACT_LIST' | 'PICKLIST' | 'MULTI_PICKLIST' | 'PREDECESSOR' | 'TEXT_NUMBER', required — Type of column to match. See [Column Types](/api/smartsheet/openapi/columns).
        - `systemColumnType` 'CREATED_BY' | 'CREATED_DATE' | 'MODIFIED_BY' | 'MODIFIED_DATE' | 'AUTO_NUMBER', required — System column type to match. See [System Columns](/api/smartsheet/openapi/columns).
        - `sheetNameColumn` boolean — Set this to `true` to match the special "Sheet Name" report column.
        - `primary` boolean — Set this to `true` to match the primary column.
        - `virtualId` integer — The virtual ID of this report column.
        - `index` integer, required — Column index or position. This number is zero-based. Indicates the position of the column in the generated report.
        - `hidden` boolean — Indicates whether the column is hidden.
        - `version` 0 | 1 | 2 — * `0`: CONTACT_LIST, PICKLIST, or TEXT_NUMBER. * `1`: MULTI_CONTACT_LIST. * `2`: MULTI_PICKLIST.
        - `width` integer — Display width of the column in pixels.
        - `validation` boolean — Indicates whether validation has been enabled for the column (value = **true**).
        - `autoNumberFormat` object — Specifies how to format values for an auto-generated numbers column.
          - `fill` string — Indicates zero-padding. It must be between 0 and 10 "0" (zero) characters.
          - `prefix` string — The prefix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
          - `startingNumber` number — The starting number for the auto-ID.
          - `suffix` string — The suffix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
      - object
        - `title` string, required — Title of a column to match. **Note:** If you specified `primary=true` to match primary columns, you can set the resulting report column title to this value.
        - `type` 'CHECKBOX' | 'DATE' | 'DATETIME' | 'DURATION' | 'CONTACT_LIST' | 'MULTI_CONTACT_LIST' | 'PICKLIST' | 'MULTI_PICKLIST' | 'PREDECESSOR' | 'TEXT_NUMBER', required — Type of column to match. See [Column Types](/api/smartsheet/openapi/columns).
        - `systemColumnType` 'CREATED_BY' | 'CREATED_DATE' | 'MODIFIED_BY' | 'MODIFIED_DATE' | 'AUTO_NUMBER' — System column type to match. See [System Columns](/api/smartsheet/openapi/columns).
        - `sheetNameColumn` boolean — Set this to `true` to match the special "Sheet Name" report column.
        - `primary` boolean, required — Set this to `true` to match the primary column.
        - `virtualId` integer — The virtual ID of this report column.
        - `index` integer, required — Column index or position. This number is zero-based. Indicates the position of the column in the generated report.
        - `hidden` boolean — Indicates whether the column is hidden.
        - `version` 0 | 1 | 2 — * `0`: CONTACT_LIST, PICKLIST, or TEXT_NUMBER. * `1`: MULTI_CONTACT_LIST. * `2`: MULTI_PICKLIST.
        - `width` integer — Display width of the column in pixels.
        - `validation` boolean — Indicates whether validation has been enabled for the column (value = **true**).
        - `autoNumberFormat` object — Specifies how to format values for an auto-generated numbers column.
          - `fill` string — Indicates zero-padding. It must be between 0 and 10 "0" (zero) characters.
          - `prefix` string — The prefix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
          - `startingNumber` number — The starting number for the auto-ID.
          - `suffix` string — The suffix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
      - object
        - `title` string, required — Title of a column to match. **Note:** If you specified `primary=true` to match primary columns, you can set the resulting report column title to this value.
        - `type` 'CHECKBOX' | 'DATE' | 'DATETIME' | 'DURATION' | 'CONTACT_LIST' | 'MULTI_CONTACT_LIST' | 'PICKLIST' | 'MULTI_PICKLIST' | 'PREDECESSOR' | 'TEXT_NUMBER', required — Type of column to match. See [Column Types](/api/smartsheet/openapi/columns).
        - `systemColumnType` 'CREATED_BY' | 'CREATED_DATE' | 'MODIFIED_BY' | 'MODIFIED_DATE' | 'AUTO_NUMBER' — System column type to match. See [System Columns](/api/smartsheet/openapi/columns).
        - `sheetNameColumn` boolean, required — Set this to `true` to match the special "Sheet Name" report column.
        - `primary` boolean — Set this to `true` to match the primary column.
        - `virtualId` integer — The virtual ID of this report column.
        - `index` integer, required — Column index or position. This number is zero-based. Indicates the position of the column in the generated report.
        - `hidden` boolean — Indicates whether the column is hidden.
        - `version` 0 | 1 | 2 — * `0`: CONTACT_LIST, PICKLIST, or TEXT_NUMBER. * `1`: MULTI_CONTACT_LIST. * `2`: MULTI_PICKLIST.
        - `width` integer — Display width of the column in pixels.
        - `validation` boolean — Indicates whether validation has been enabled for the column (value = **true**).
        - `autoNumberFormat` object — Specifies how to format values for an auto-generated numbers column.
          - `fill` string — Indicates zero-padding. It must be between 0 and 10 "0" (zero) characters.
          - `prefix` string — The prefix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}
          - `startingNumber` number — The starting number for the auto-ID.
          - `suffix` string — The suffix. Can include these date tokens: * {DD} * {MM} * {YY} * {YYYY}

## Other responses

- `403` — Caller does not have permission to access the report.
- `404` — Report does not exist.
- `default` — Generic error payload.

---

[API](https://skmtc.net/smartsheet/apis/smartsheet-openapi-reference.md) · [All operations](https://skmtc.net/smartsheet/apis/smartsheet-openapi-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/smartsheet/smartsheet-openapi-reference/versions/b4afda95fb51/schema)
