ListTables

更新时间:
复制 MD 格式

Queries a list of tables in the data map. For data source types that do not support schemas, this operation queries tables within a specified database. For data source types that support schemas, you can query tables within a specified database, MaxCompute project, or schema. The response includes basic table information, technical metadata, and business metadata.

Operation description

  1. You must purchase DataWorks Basic Edition or a higher edition to use this operation.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

dataworks:ListTables

list

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

ParentMetaEntityId

string

Yes

The ID of the parent metadata entity. You can obtain this ID from the response of the ListDatabases or ListSchemas operation. For details, see Metadata entity concepts.

  • The value can be the database to which the table belongs. The format is ${EntityType}:${instance ID or URL-encoded connection string}:${data catalog identifier}:${database name}. Use an empty string as a placeholder for a hierarchy level that does not exist.

  • The value can also be the schema to which the table belongs. The format is ${EntityType}:${instance ID or URL-encoded connection string}:${data catalog identifier}:${database name}:${schema name}. Use an empty string as a placeholder for a hierarchy level that does not exist.

Note
  • You can specify a schema in ParentMetaEntityId only if the database type supports schemas, such as maxcompute/holo/postgresql/sqlserver/hybriddb_for_postgresql/oracle. For the maxcompute type, the three-layer model must be enabled. Otherwise, you can only specify a database.

  • For maxcompute and dlf data types, use an empty string as a placeholder for the instance ID. For the maxcompute data type, the database name is the MaxCompute project name.

  • For the starrocks type, the data catalog identifier is the catalog name. For the dlf type, the data catalog identifier is the catalog ID. Other types do not support the catalog level, so you can use an empty string as a placeholder.

The following list shows the ParentMetaEntityId format for several common data source types:

  • maxcompute-project:::project_name

  • maxcompute-schema:::project_name:schema_name (Only when the three-layer model is enabled for the project)

  • dlf-database::catalog_id:database_name

  • hms-database:instance_id::database_name

  • holo-schema:instance_id::database_name:schema_name

  • mysql-database:(instance_id|encoded_jdbc_url)::database_name

Note

In these formats:

  • instance_id: The instance ID. This parameter is required if the data source is registered in instance mode.

  • encoded_jdbc_url: The URL-encoded JDBC connection string. This parameter is required if the data source is registered by using a connection string.

  • catalog_id: The ID of the DLF data catalog.

  • project_name: The name of the MaxCompute project.

  • database_name: The name of the database.

  • schema_name: The name of the schema.

maxcompute-project:::project_name

Name

string

No

The name of the table. Fuzzy matching is supported.

abc

Comment

string

No

The comment on the table. Fuzzy matching is supported.

this is a comment

TableTypes

array

No

A list of table types to query. If you omit this parameter, tables of all types are returned.

string

No

The table type. The valid values vary based on the database type.

TABLE

SortBy

string

No

The sort field. Default value: CreateTime. Valid values:

  • CreateTime: creation time

  • ModifyTime: modification time

  • Name: name

  • TableType: table type

CreateTime

Order

string

No

The sort order. Default value: Asc. Valid values:

  • Asc: ascending

  • Desc: descending

Asc

PageNumber

integer

No

The page number. Default value: 1.

1

PageSize

integer

No

The page size. Default value: 10. Maximum value: 100.

10

Response elements

Element

Type

Description

Example

object

The response object.

RequestId

string

The request ID.

E25887B7-579C-54A5-9C4F-83A****

Success

boolean

Indicates whether the request was successful.

true

PagingInfo

object

The pagination information.

TotalCount

integer

The total count of entries.

100

PageNumber

integer

The page number.

1

PageSize

integer

The page size.

10

Tables

array

The list of tables.

Table

The table details.

Note:

The Table objects returned in the Tables array include the following detailed properties:

  • TechnicalMetadata

  • BusinessMetadata

Examples

Success response

JSON format

{
  "RequestId": "E25887B7-579C-54A5-9C4F-83A****",
  "Success": true,
  "PagingInfo": {
    "TotalCount": 100,
    "PageNumber": 1,
    "PageSize": 10,
    "Tables": [
      {
        "Id": "maxcompute-table:123456XXX::test_project::test_tbl\ndlf-table:123456XXX:test_catalog:test_db::test_tbl\nhms-table:c-abc123xxx::test_db::test_tbl\nholo-table:h-abc123xxx::test_db:test_schema:test_tbl",
        "Name": "test_tbl",
        "Comment": "测试表",
        "TableType": "TABLE",
        "PartitionKeys": [
          "ds"
        ],
        "ParentMetaEntityId": "maxcompute-schema:123456XXX::test_project_with_schema:default\nmaxcompute-project:123456XXX::test_project_without_schema\ndlf-database:123456XXX:test_catalog:test_db\nhms-database:c-abc123xxx::test_db\nholo-schema:h-abc123xxx::test_db:test_schema",
        "CreateTime": 1736852168000,
        "ModifyTime": 1736852168000,
        "TechnicalMetadata": {
          "Owner": "test_user",
          "Location": "oss://test-bucket/test_tbl",
          "Compressed": false,
          "InputFormat": "org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat",
          "OutputFormat": "org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat",
          "SerializationLibrary": "org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe",
          "Parameters": {
            "key": "{\\\"k1\\\":\\\"v1\\\"}"
          }
        },
        "BusinessMetadata": {
          "Readme": "## 使用说明",
          "Tags": [
            {
              "Key": "tag_key",
              "Value": "tag_value"
            }
          ],
          "Categories": [
            [
              {
                "Id": "CATEGORY.456",
                "Name": "测试类目",
                "ParentId": "CATEGORY.123"
              }
            ]
          ],
          "UpstreamTasks": [
            {
              "Id": 123456,
              "Name": "test_task"
            }
          ],
          "Extension": {
            "ProjectId": 234,
            "EnvType": "Dev",
            "ViewCount": 0,
            "ReadCount": 0,
            "FavorCount": 0
          }
        }
      }
    ]
  }
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.