Queries metatables based on specific conditions.

You can call this operation to query only metatables in a MaxCompute or E-MapReduce (EMR) compute engine instance.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes SearchMetaTables

The operation that you want to perform. Set the value to SearchMetaTables.

PageNumber Integer No 1

The number of the page to return.

PageSize Integer No 10

The number of entries to return on each page. Default value: 10. Maximum value: 100.

AppGuid String Yes odps.engine_name

The GUID of the workspace where the metatables reside.

Keyword String Yes test

The keyword based on which metatables are queried. During the query, the system tokenizes the names of metatables and matches the names with the keyword. If no name is matched, an empty result is returned. By default, the system uses underscores (_) to tokenize the names.

EntityType Integer No 0

The type of the metatables. Valid values: 0 and 1. The value 0 indicates that tables are queried. The value 1 indicates that views are queried. If you do not configure this parameter, all types of metatables are queried.

ClusterId String No abc

The ID of the EMR cluster. This parameter is required only if you set the DataSourceType parameter to emr.

You can log on to the EMR console to obtain the ID of the EMR cluster.

DataSourceType String Yes emr

The type of the data source. Valid values: odps and emr.

Schema String No default

The schema information of the table. You need to configure this parameter if you enable the table schema in MaxCompute.

Response parameters

Parameter Type Example Description
HttpStatusCode Integer 200

The HTTP status code returned.

ErrorMessage String The specified parameters are invalid.

The error message returned.

RequestId String 0bc1ec92159376****

The ID of the request.

Success Boolean true

Indicates whether the request is successful.

ErrorCode String 1031203110005

The error code returned.

Data Object

The business data returned.

PageNumber Integer 1

The page number of the returned page.

PageSize Integer 10

The number of entries returned per page.

TotalCount Long 100

The total number of metatables.

DataEntityList Array of DataEntityList

The list of metatables.

TableName String test_name

The name of the metatable.

DatabaseName String abc

The name of the metadatabase.

EntityType Integer 0

The type of the metatable. Valid values:

  • 0: table
  • 1: view
ProjectName String test

The name of the workspace.

ProjectId Long 323

The ID of the workspace.

TableGuid String odps.engine_name.test_name

The GUID of the metatable.

OwnerId String 123

The ID of the Alibaba Cloud account used by the workspace owner.

ClusterId String abc

The ID of the EMR cluster.

EnvType Integer 1

The type of the environment. Valid values:

  • 1: production environment
  • 0: development environment
TenantId Long 12345

The ID of the tenant.

Schema String default

The schema information of the table. This parameter is returned only if you enable the table schema in MaxCompute.

Examples

Sample requests

http(s)://[Endpoint]/?Action=SearchMetaTables
&PageNumber=1
&PageSize=10
&AppGuid=odps.engine_name
&Keyword=test
&EntityType=0
&ClusterId=abc
&DataSourceType=emr
&Schema=default
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<SearchMetaTablesResponse>
    <HttpStatusCode>200</HttpStatusCode>
    <ErrorMessage>The specified parameters are invalid.</ErrorMessage>
    <RequestId>0bc1ec92159376****</RequestId>
    <Success>true</Success>
    <ErrorCode>1031203110005</ErrorCode>
    <Data>
        <PageNumber>1</PageNumber>
        <PageSize>10</PageSize>
        <TotalCount>100</TotalCount>
        <DataEntityList>
            <TableName>test_name</TableName>
            <DatabaseName>abc</DatabaseName>
            <EntityType>0</EntityType>
            <ProjectName>test</ProjectName>
            <ProjectId>323</ProjectId>
            <TableGuid>odps.engine_name.test_name</TableGuid>
            <OwnerId>123</OwnerId>
            <ClusterId>abc</ClusterId>
            <EnvType>1</EnvType>
            <TenantId>12345</TenantId>
            <Schema>default</Schema>
        </DataEntityList>
    </Data>
</SearchMetaTablesResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "HttpStatusCode" : 200,
  "ErrorMessage" : "The specified parameters are invalid.",
  "RequestId" : "0bc1ec92159376****",
  "Success" : true,
  "ErrorCode" : "1031203110005",
  "Data" : {
    "PageNumber" : 1,
    "PageSize" : 10,
    "TotalCount" : 100,
    "DataEntityList" : [ {
      "TableName" : "test_name",
      "DatabaseName" : "abc",
      "EntityType" : 0,
      "ProjectName" : "test",
      "ProjectId" : 323,
      "TableGuid" : "odps.engine_name.test_name",
      "OwnerId" : "123",
      "ClusterId" : "abc",
      "EnvType" : 1,
      "TenantId" : 12345,
      "Schema" : "default"
    } ]
  }
}

Error codes

HTTP status code Error code Error message Description
400 Invalid.Meta.TableNotExist The table does not exist. The error message returned because the metatable does not exist.
400 InvalidParameter.Meta.CommonError The specified parameter is invalid. The error message returned because the values specified for one or more request parameters are invalid.
400 InvalidParameter.Meta.Illegal The app guid parameter is invalid. The error message returned because the values specified for one or more parameters of the application are invalid.
400 InvalidParameter.Meta.IllegalDate The date format is invalid. The error message returned because the date format is invalid.
400 InvalidParameter.Meta.IllegalPageError The parameter for paging is invalid. The error message returned because the value of the parameter for paging is invalid.
400 InvalidParameter.Meta.NotExist The object does not exist. The error message returned because the object you query does not exist.
400 InternalError.UserId.Missing An internal system error occurred. Try again later. The error message returned because an internal error has occurred. Try again later.
400 InternalError.Meta.NoCalcEngine An error occurred while retrieving the compute engine based on the MaxCompute project. The error message returned because the system has failed to obtain the compute engine instance based on the specified MaxCompute project.
403 ResourceNotAuthorized.Api You are not authorized to access the resources. The error message returned because you are not authorized to access the resources.
403 Forbidden.Meta.NoTenant The user is not the owner of any tenants. The error message returned because the current user is not a tenant owner.
403 Forbidden.Access Access is forbidden. Please first activate DataWorks Enterprise Edition or Flagship Edition. The error message returned because you are not allowed to perform this operation. Activate DataWorks Enterprise Edition or DataWorks Ultimate Edition.
429 Throttling.Api The request for this resource has exceeded your available limit. The error message returned because the number of requests for the resource has exceeded the upper limit.
429 Throttling.Api.Risk The request for this resource has exceeded your daily available limit. The error message returned because the number of requests per day for the resource has exceeded the upper limit.
429 Throttling.System The DataWorks system is busy. Try again later. The error message returned because the DataWorks system is busy. Try again later.
429 Throttling.User Your request is too frequent. Try again later. The error message returned because excessive requests have been submitted within a short period of time. Try again later.
500 InternalError.System An internal system error occurred. Try again later. The error message returned because an internal error has occurred. Try again later.
500 InternalError.Meta.TenantTimeOut Failed to connect to the interface network. The error message returned because the network cannot be connected.
500 InternalError.Meta.Unknown An unknown error occurred while processing your request. The error message returned because an unknown error has occurred.

For a list of error codes, visit the API Error Center.

For more information about the example on how to use the SearchMetaTables operation, see Examples of DataWorks API operations.