Method: tables.list Stay organized with collections Save and categorize content based on your preferences.
Lists all tables in the specified dataset. Requires the READER dataset role.
HTTP request
GET https://bigquery.googleapis.com/bigquery/v2/projects/{projectId}/datasets/{datasetId}/tables
The URL usesgRPC Transcoding syntax.
Path parameters
| Parameters | |
|---|---|
projectId |
Required. Project ID of the tables to list |
datasetId |
Required. Dataset ID of the tables to list |
Query parameters
| Parameters | |
|---|---|
maxResults |
The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection. |
pageToken |
Page token, returned by a previous call, to request the next page of results |
Request body
The request body must be empty.
Response body
Partial projection of the metadata for a given table in a list response.
If successful, the response body contains data with the following structure:
| JSON representation |
|---|
{"kind":string,"etag":string,"nextPageToken":string,"tables":[{"kind":string,"id":string,"tableReference":{object ( |
| Fields | |
|---|---|
kind |
The type of list. |
etag |
A hash of this page of results. |
nextPageToken |
A token to request the next page of results. |
tables[] |
Tables in the requested dataset. |
tables[].kind |
The resource type. |
tables[].id |
An opaque ID of the table. |
tables[].tableReference |
A reference uniquely identifying table. |
tables[].friendlyName |
The user-friendly name for this table. |
tables[].type |
The type of table. |
tables[].timePartitioning |
The time-based partitioning for this table. |
tables[].rangePartitioning |
The range partitioning for this table. |
tables[].clustering |
Clustering specification for this table, if configured. |
tables[].hivePartitioningOptions |
The hive partitioning configuration for this table, when applicable. |
tables[].labels |
The labels associated with this table. You can use these to organize and group your tables. |
tables[].view |
Additional details for a view. |
tables[].view.useLegacySql |
True if view is defined in legacy SQL dialect, false if in GoogleSQL. |
tables[].view.privacyPolicy |
Specifies the privacy policy for the view. |
tables[].creationTime |
Output only. The time when this table was created, in milliseconds since the epoch. |
tables[].expirationTime |
The time when this table expires, in milliseconds since the epoch. If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed. |
tables[].requirePartitionFilter |
Optional. If set to true, queries including this table must specify a partition filter. This filter is used for partition elimination. |
totalItems |
The total number of tables in the dataset. |
Authorization scopes
Requires one of the following OAuth scopes:
https://www.googleapis.com/auth/bigqueryhttps://www.googleapis.com/auth/cloud-platformhttps://www.googleapis.com/auth/bigquery.readonlyhttps://www.googleapis.com/auth/cloud-platform.read-only
For more information, see theAuthentication Overview.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-07-02 UTC.