
# 查询资源实例列表 - ListV2TagResources
#### 功能介绍
通过标签查询资源列表。此接口为同步接口，无配套使用接口和特殊场景。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-aidatalake/aidatalake_02_0003.html)。
#### URI
POST /v2/{project_id}/{resource_type}/resource-instances/filter
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| project_id    | 是    | String | **参数解释** ：项目ID。获取方法，请参见[获取项目ID](https://support.huaweicloud.com/api-aidatalake/aidatalake_02_0029.html)。 **约束限制**：不涉及。 **取值范围**：长度为1\~36的英文字符、数字和中划线的组合。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| resource_type | 是    | Object | **参数解释**：端点引擎类型列表。 **约束限制**：不能为空。 **取值范围**： - aidatalake-workspace：工作空间。   - aidatalake-endpoint-ray：Ray引擎端点。   - aidatalake-endpoint-aura：Aura引擎端点。   - aidatalake-endpoint-spark：Spark引擎端点。   - aidatalake-compute：计算资源。    **默认取值**：不涉及。 |
   
表2Query参数 
| 参数           | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| engine_types | 否    | Array of strings | **参数解释**：端点引擎类型列表。 **约束限制**：不涉及。 **取值范围**： - AuraJob：AuraJob引擎。   - SparkSql：SparkSql引擎。   - SparkJob：SparkJob引擎。   - AuraJobV2：AuraJobV2引擎。   - RayCluster：RayCluster引擎。   - RayJob：RayJob引擎。    **默认取值**：不涉及。 |
| offset       | 否    | Integer          | **参数解释**：分页偏移量。 **约束限制**：不涉及。 **取值范围**：0\~10000。 **默认取值**：0。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| limit        | 否    | Integer          | **参数解释**：查询记录数。 **约束限制**：不涉及。 **取值范围**：1\~1000。 **默认取值**：1000。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                      |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释**：用户Token。 **约束限制**：不涉及。 **取值范围**：长度不超过65534个字符。 **默认取值**：不涉及。 |
   
表4请求Body参数 
| 参数              | 是否必选 | 参数类型                                                                                   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| without_any_tag | 否    | Boolean                                                                                | **参数解释**：不包含任意一个标签。 **约束限制**：不涉及。 **取值范围**： - true：查询不包含任意一个标签的资源，此时忽略"tags"过滤字段。   - false：该条件不生效，即返回所有资源或按"tags"，"matches"等条件过滤。    **默认取值**：不涉及。 |
| tags            | 否    | Array of [V2ResourceTagParam] objects | **参数解释**：包含标签，最多包含20个key，每个key下面的value最多20个，每个key对应的value可以为空数组但结构体不能缺失。 **约束限制**：最大数量为20个。                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| matches         | 否    | Array of [V2TagMatch] objects                 | **参数解释**：前缀搜索字段。key为固定字典值，当前只支持resource_name，表示基于资源名称前缀搜索。value为匹配的值。 **约束限制**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sys_tags        | 否    | Array of [V2SystemTagParam] objects     | **参数解释**：系统标签列表，目前只包含一个tag结构体。key下面只包含一个value。 **约束限制**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表5V2ResourceTagParam 
| 参数     | 是否必选 | 参数类型             | 描述                                                                                                                                                                                    |
|:---|:---|:---|:---|
| key    | 是    | String           | **参数解释**：资源标签的键。 **约束限制**：不涉及。 **取值范围**：长度为1\~128个字符。 **默认取值**：不涉及。 |
| values | 否    | Array of strings | **参数解释**：资源标签的值列表。 **约束限制**：最大20个字符串。每个字符串最大255个字符。                                                                                             |
   
 表6V2TagMatch 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| key   | 是    | String | **参数解释**：固定字典值。 **约束限制**：不涉及。 **取值范围**：resource_name，表示资源名称。 **默认取值**：resource_name。 |
| value | 否    | String | **参数解释**：基于"key"对应字段的前缀匹配值。 **约束限制**：最大255个字符。 **取值范围**：不涉及。 **默认取值**：不涉及。           |
   
 表7V2SystemTagParam 
| 参数     | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| key    | 是    | String           | **参数解释**：系统标签的键。 **约束限制**：不涉及。 **取值范围**：_sys_enterprise_project_id，企业项目ID。 **默认取值**：不涉及。 |
| values | 是    | Array of strings | **参数解释**：系统标签的值列表。 **约束限制**：不涉及。                                                                                                                                     |
   
#### 响应参数
**状态码：200**
表8响应Body参数 
| 参数          | 参数类型                                                                          | 描述                                                                             |
|:---|:---|:---|
| resources   | Array of [V2TagResource] objects | **参数解释**：资源实例列表。                                                               |
| total_count | Integer                                                                       | **参数解释**：资源实例总数。 **取值范围**：0\~2147483647。 |
   
 表9V2TagResource 
| 参数              | 参数类型                                                                      | 描述                                                                          |
|:---|:---|:---|
| resource_id     | String                                                                    | **参数解释**：标签资源ID。 **取值范围**：长度不超过64个字符。 |
| resource_detail | Object                                                                    | **参数解释**：标签资源详情。 资源对象，用于扩展。默认为空。                                            |
| resource_name   | String                                                                    | **参数解释**：标签资源名称。 **取值范围**：不涉及。        |
| tags            | Array of [ResourceTag] objects | **参数解释**：标签列表，没有标签默认为空数组。                                                   |
| sys_tags        | Array of [SystemTag] objects     | **参数解释**：系统标签列表，没有系统标签默认不返回。                                                |
   
 表10ResourceTag 
| 参数    | 参数类型   | 描述                                                                                                               |
|:---|:---|:---|
| key   | String | **参数解释**：资源标签的键。 **取值范围**：长度1\~128的多语言字母、空格、数字、下划线、点、冒号、斜杠、等号、加号、减号、@符号组合。 |
| value | String | **参数解释**：资源标签的值。 **取值范围**：长度0\~255的多语言字母、空格、数字、下划线、点、冒号、斜杠、等号、加号、减号、@符号组合。 |
   
 表11SystemTag 
| 参数    | 参数类型   | 描述                                                                                                                                                                             |
|:---|:---|:---|
| key   | String | **参数解释**：系统标签键。 **取值范围**：_sys_enterprise_project_id，企业项目ID。                                                                              |
| value | String | **参数解释** ：系统标签值。企业项目ID，获取方法，请参见[获取企业项目ID](https://support.huaweicloud.com/api-aidatalake/aidatalake_02_0042.html)。 **取值范围**：长度为1\~64个字符。 |
   
**状态码：400**
表12响应Body参数 
| 参数           | 参数类型   | 描述                                                                           |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **取值范围**：长度为8\~36个字符。    |
| error_msg    | String | **参数解释**：错误描述。 **取值范围**：长度为2\~512个字符。  |
| solution_msg | String | **参数解释**：解决方案。 **取值范围**：长度为0\~4096个字符。 |
   
**状态码：401**
表13响应Body参数 
| 参数           | 参数类型   | 描述                                                                           |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **取值范围**：长度为8\~36个字符。    |
| error_msg    | String | **参数解释**：错误描述。 **取值范围**：长度为2\~512个字符。  |
| solution_msg | String | **参数解释**：解决方案。 **取值范围**：长度为0\~4096个字符。 |
   
**状态码：403**
表14响应Body参数 
| 参数           | 参数类型   | 描述                                                                           |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **取值范围**：长度为8\~36个字符。    |
| error_msg    | String | **参数解释**：错误描述。 **取值范围**：长度为2\~512个字符。  |
| solution_msg | String | **参数解释**：解决方案。 **取值范围**：长度为0\~4096个字符。 |
   
**状态码：408**
表15响应Body参数 
| 参数           | 参数类型   | 描述                                                                             |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **取值范围**：长度为8\~36个字符。      |
| error_msg    | String | **参数解释**：错误描述。 **取值范围**：长度为2\~512个字符。    |
| solution_msg | String | **参数解释**：解决方案描述。 **取值范围**：长度为0\~4096个字符。 |
   
**状态码：500**
表16响应Body参数 
| 参数           | 参数类型   | 描述                                                                           |
|:---|:---|:---|
| error_code   | String | **参数解释**：错误码。 **取值范围**：长度为8\~36个字符。    |
| error_msg    | String | **参数解释**：错误描述。 **取值范围**：长度为2\~512个字符。  |
| solution_msg | String | **参数解释**：解决方案。 **取值范围**：长度为0\~4096个字符。 |
   
#### 请求示例
基于标签过滤的资源列表，具体请求示例如下。
```
POST /v2/{project_id}/{resource_type}/resource-instances/filter
{
  "without_any_tag" : false,
  "tags" : [ {
    "key" : "tag_key",
    "values" : [ "tag_value" ]
  } ],
  "matches" : [ {
    "key" : "resource_name",
    "value" : "resource_name_value"
  } ]
}
```
#### 响应示例
**状态码：200**
请求成功。
```
{
  "resources" : [ {
    "resource_id" : "01049549-82cd-xxxx-xxxx-ddb94350c125",
    "resource_detail" : { },
    "resource_name" : "resource_name_value",
    "tags" : [ {
      "key" : "tag_key",
      "value" : "tag_value"
    } ],
    "sys_tags" : [ {
      "key" : "_sys_enterprise_project_id",
      "value" : "01049549-82cd-xxxx-xxxx-ddb94350c125"
    } ]
  } ],
  "total_count" : 1
}
```
**状态码：400**
请求参数错误。
```
{
  "error_code" : "AIDataLake.00010151",
  "error_msg" : "Parameter value is invalid.",
  "solution_msg" : "Please input valid parameter value."
}
```
**状态码：401**
未授权。
```
{
  "error_code" : "APIGW.0301",
  "error_msg" : "Incorrect IAM authentication information: decrypt token fail.",
  "solution_msg" : "Check whether the IAM authentication information is correct."
}
```
**状态码：403**
禁止访问。
```
{
  "error_code" : "AIDataLake.00010150",
  "error_msg" : "The operation is not allowed.",
  "solution_msg" : "Check whether the operation is allowed in the current status."
}
```
**状态码：408**
请求超时。
```
{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}
```
**状态码：500**
内部服务器错误。
```
{
  "error_code" : "AIDataLake.00011001",
  "error_msg" : "Internal error.",
  "solution_msg" : "Contact technical support or try again later."
}
```
#### 状态码
| 状态码 | 描述       |
|:---|:---|
| 200 | 请求成功。    |
| 400 | 请求参数错误。  |
| 401 | 未授权。     |
| 403 | 禁止访问。    |
| 408 | 请求超时。    |
| 500 | 内部服务器错误。 |
   
