ListTables
List the tables in a database. If neither SchemaPattern
nor TablePattern
are specified, then
all tables in the database are returned.
A token is returned to page through the table list.
Depending on the authorization method, use one of the
following combinations of request parameters:
-
Amazon Secrets Manager - when connecting to a cluster, provide the
secret-arn
of a secret stored in Amazon Secrets Manager which hasusername
andpassword
. The specified secret contains credentials to connect to thedatabase
you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier
), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name. -
Temporary credentials - when connecting to your data warehouse, choose one of the following options:
-
When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example,
arn:iam::123456789012:user:foo
has the database user nameIAM:foo
. Also, permission to call theredshift-serverless:GetCredentials
operation is required. -
When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example,
arn:iam::123456789012:user:foo
has the database user nameIAM:foo
. Also, permission to call theredshift:GetClusterCredentialsWithIAM
operation is required. -
When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the
redshift:GetClusterCredentials
operation is required.
-
For more information about the Amazon Redshift Data API and Amazon CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.
Request Syntax
{
"ClusterIdentifier": "string
",
"ConnectedDatabase": "string
",
"Database": "string
",
"DbUser": "string
",
"MaxResults": number
,
"NextToken": "string
",
"SchemaPattern": "string
",
"SecretArn": "string
",
"TablePattern": "string
",
"WorkgroupName": "string
"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
Note
In the following list, the required parameters are described first.
- Database
-
The name of the database that contains the tables to list. If
ConnectedDatabase
is not specified, this is also the database to connect to with your authentication credentials.Type: String
Required: Yes
- ClusterIdentifier
-
The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Amazon Secrets Manager or temporary credentials.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 63.
Required: No
- ConnectedDatabase
-
A database name. The connected database is specified when you connect with your authentication credentials.
Type: String
Required: No
- DbUser
-
The database user name. This parameter is required when connecting to a cluster as a database user and authenticating using temporary credentials.
Type: String
Required: No
- MaxResults
-
The maximum number of tables to return in the response. If more tables exist than fit in one response, then
NextToken
is returned to page through the results.Type: Integer
Valid Range: Minimum value of 0. Maximum value of 1000.
Required: No
- NextToken
-
A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned NextToken value in the next NextToken parameter and retrying the command. If the NextToken field is empty, all response records have been retrieved for the request.
Type: String
Required: No
- SchemaPattern
-
A pattern to filter results by schema name. Within a schema pattern, "%" means match any substring of 0 or more characters and "_" means match any one character. Only schema name entries matching the search pattern are returned. If
SchemaPattern
is not specified, then all tables that matchTablePattern
are returned. If neitherSchemaPattern
orTablePattern
are specified, then all tables are returned.Type: String
Required: No
- SecretArn
-
The name or ARN of the secret that enables access to the database. This parameter is required when authenticating using Amazon Secrets Manager.
Type: String
Required: No
- TablePattern
-
A pattern to filter results by table name. Within a table pattern, "%" means match any substring of 0 or more characters and "_" means match any one character. Only table name entries matching the search pattern are returned. If
TablePattern
is not specified, then all tables that matchSchemaPattern
are returned. If neitherSchemaPattern
orTablePattern
are specified, then all tables are returned.Type: String
Required: No
- WorkgroupName
-
The serverless workgroup name or Amazon Resource Name (ARN). This parameter is required when connecting to a serverless workgroup and authenticating using either Amazon Secrets Manager or temporary credentials.
Type: String
Length Constraints: Minimum length of 3. Maximum length of 128.
Pattern:
^(([a-z0-9-]+)|(arn:(aws(-[a-z]+)*):redshift-serverless:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:workgroup/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}))$
Required: No
Response Syntax
{
"NextToken": "string",
"Tables": [
{
"name": "string",
"schema": "string",
"type": "string"
}
]
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- NextToken
-
A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned NextToken value in the next NextToken parameter and retrying the command. If the NextToken field is empty, all response records have been retrieved for the request.
Type: String
- Tables
-
The tables that match the request pattern.
Type: Array of TableMember objects
Errors
For information about the errors that are common to all actions, see Common Errors.
- DatabaseConnectionException
-
Connection to a database failed.
HTTP Status Code: 500
- InternalServerException
-
The Amazon Redshift Data API operation failed due to invalid input.
HTTP Status Code: 500
- QueryTimeoutException
-
The Amazon Redshift Data API operation failed due to timeout.
HTTP Status Code: 400
- ValidationException
-
The Amazon Redshift Data API operation failed due to invalid input.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific Amazon SDKs, see the following: