# list

## HTTP Request

```http
GET /api/v1/tables/:tableReference/variables
GET /api/v1/tables/:tableReference/uploads/:uploadReference/variables
GET /api/v1/queries/:queryId/variables
```

## Path parameters

| Parameter       |                                                                                                                      |
| --------------- | -------------------------------------------------------------------------------------------------------------------- |
| tableReference  | A qualified reference to the table. See [referencing resources](/api/referencing-resources.md) for more information. |
| uploadReference | A qualified reference to the upload. Follows the form `upload_name:id`                                               |
| queryId         | The id of a [query](/api/rest-api/queries.md)                                                                        |

## Query parameters

| Parameter  |                                                                                                               |
| ---------- | ------------------------------------------------------------------------------------------------------------- |
| maxResults | Default 100. Cannot exceed 10,000                                                                             |
| pageToken  | For paginating through results, provide the value returned from the previous table.listVariables call         |
| isFileId   | Optional. If present, will only return variables that contain ids referencing [Files](/api/rest-api/files.md) |

{% hint style="info" %}
This endpoint extends the [general API structure](/api/rest-api/general-structure.md).
{% endhint %}

## Authorization

Metadata access to the table is required. If a table's data is not public, your access token must have one of the following scopes:

* data.metadata
* data.data
* data.edit

[Learn more about authorization.](/api/rest-api/authorization.md)

## Request body

The request body must be empty.

## Response body

Returns a JSON representation of a list of [variable resources](/api/resource-definitions/variable.md).

```javascript
{
    "kind": "tableList",
    "nextPageToken": string,
    "results": [
        object(variable.list)
    ]
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.redivis.com/api/rest-api/variables/list.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
