# List columns

Gets a list of all columns belonging to the specified sheet.

> Note: For pagination guidance, refer to Pagination.

Endpoint: GET /sheets/{sheetId}/columns
Version: 2.0.0
Security: APIToken, OAuth2

## Path parameters:

  - `sheetId` (number, required)
    ID of the sheet being accessed.

## Header parameters:

  - `Authorization` (string)
    API Access Token used to authenticate requests to Smartsheet APIs.

  - `smartsheet-integration-source` (string)
    Uses the following metadata to distinguish between human-initiated API requests and third-party service-initiated calls by AI Connectors or ITSM:

- Integration source type
- Organization name
- Integration source name 

Format:


TYPE,OrgName,SourceName


Examples: 

AI,SampleOrg,My-AI-Connector-v2

SCRIPT,SampleOrg2,Accounting-updater-script

APPLICATION,SampleOrg3,SheetUpdater
    Example: "AI,SampleOrg,My-AI-Connector-v2"

## Query parameters:

  - `level` (integer)
    Specifies whether object data types, such as multi-contact data are returned in a backwards-compatible, text format in text/number columns.  - Set level=0 (default) to use text/number columns for multi-contact data and multi-picklist data.  - Set level=1 to use multiple-entry contact list columns for multi-contact data; multi-picklist data is returned in text/number columns.  - Set level=2 to use multiple-entry contact list columns for multi-contact data and use multiple-entry picklist columns for multi-picklist data.

  - `page` (number)
    Which page to return. Defaults to 1 if not specified. If you specify a value greater than the total number of pages, the last page of results is returned.

  - `pageSize` (number)
    The maximum number of items to return per page. Unless otherwise stated for a specific endpoint, defaults to 100. If only page is specified, defaults to a page size of 100. For reports, the default is 100 rows. If you need larger sets of data from your report, returns a maximum of 10,000 rows per request.

  - `includeAll` (boolean)
    If true, include all results, that is, do not paginate. Mutually exclusive with page and pageSize (they are ignored if includeAll=true is specified).

## Response 200 fields (application/json):

  - `pageNumber` (number)
    The current page in the full result set that the data array represents. NOTE when a page number greater than totalPages is requested, the last page is instead returned.
    Example: 1

  - `pageSize` (number,null)
    The number of items in a page. Omitted if there is no limit to page size (and hence, all results are included). Unless otherwise specified, this defaults to 100 for most endpoints.
    Example: 50

  - `totalPages` (number)
    The total number of pages in the full result set.
    Example: 25

  - `totalCount` (number)
    The total number of items in the full result set.
    Example: 136

  - `data` (array)
    An array of columns that can be any of the supported types.


