# 通过标签反查资源列表 - ListInferServicesByTags
#### 功能介绍
该接口适用于需要根据标签或资源名称查找相关资源的场景，例如在资源管理和搜索中，用户可以通过指定标签或进行模糊查询来查找符合特定条件的资源。通过调用此接口，用户可以基于多个标签或资源名称进行精确或模糊查询，若不传标签则返回所有资源。用户必须具有足够的权限，且目标资源需存在。查询成功后，返回符合条件的资源列表；若失败，返回具体的错误信息。常见异常包括权限验证错误、资源不存在错误和参数验证错误。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=ListInferServicesByTags)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                           | 访问级别 | 资源类型（\*为必须） | 条件键       | 别名                 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | modelarts::listResourcesByTag | List | -           | g:TagKeys | modelarts:tag:list | -      |
     
  
 
#### URI
POST /v2/{project_id}/modelarts-service-v2/resource-instances/filter
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制：** 不涉及。 **取值范围：** 账号的项目ID。 **默认取值：** 不涉及。 |
   
表2Query参数 
| 参数           | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| limit        | 否    | Integer | **参数解释：** 指定返回的最大条目数。 **约束限制：** 不涉及。 **取值范围：** \[1,500\] **默认取值：** 10。               |
| offset       | 否    | Integer | **参数解释：** 分页列表查询的偏移量。 **约束限制：** offset必须是limit的整数倍。 **取值范围：** 不涉及。 **默认取值：** 0。      |
| workspace_id | 否    | String  | **参数解释：** 工作空间ID，workspaceId将会被设置为null。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| Content-Type | 是    | String | **参数解释：** 消息体的类型（格式）。 **约束限制：** 不涉及。 **取值范围：** - application/json。   - application/json;charset=utf-8。    **默认取值：** 不涉及。 |
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。通过调用IAM服务获取用户Token接口获取响应消息头中X-Subject-Token的值。获取方法请参见[获取IAM用户Token（使用密码）](https://support.huaweicloud.com/api-modelarts/modelarts_03_0004.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
表4请求Body参数 
| 参数              | 是否必选 | 参数类型                                                                                                                  | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|
| matches         | 否    | Array of [TmsMatch] objects             | **参数解释：** 匹配项，目前只支持资源名称的模糊匹配。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| tags            | 否    | Array of [CombineTmsTags] objects | **参数解释：** 标签匹配项，只支持多个标签与操作，不携带表示查询所有资源。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| without_any_tag | 否    | Boolean                                                                                                               | **参数解释：** 是否只查询没有打标签的资源。 **约束限制：** 不涉及。 **取值范围：** true：只查询没有打标签的资源。 false：查询所有资源。 **默认取值：** 不涉及。 |
| limit           | 否    | Integer                                                                                                               | **参数解释：** 指定每一页返回的最大条目数。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 10。                                                                                                          |
| offset          | 否    | Integer                                                                                                               | **参数解释：** 分页列表的起始页。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 0。                                                                                                                |
   
 表5TmsMatch 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| key   | 是    | String | **参数解释：** 匹配项名称，目前只支持resource_name。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                     |
| value | 是    | String | **参数解释：** 匹配项的值，不区分大小写，key为resource_name时使用模糊查询，匹配资源名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
 表6CombineTmsTags 
| 参数     | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| key    | 是    | String           | **参数解释：** 标签的key。 **取值范围：** 不涉及。              |
| values | 是    | Array of strings | **参数解释：** 相同key的标签value合并后的列表。 **取值范围：** 不涉及。 |
   
#### 响应参数
**状态码：200**
表7响应Body参数 
| 参数          | 参数类型                                                                                                             | 描述                                                                                                                                                                                                                                                                   |
|:---|:---|:---|
| resources   | Array of [TmsResource] objects | **参数解释：** 通过标签反查出来的资源列表。                                                                                                                                                                |
| total_count | Integer                                                                                                          | **参数解释：** 总记录数。 **取值范围：** 不涉及 |
   
 表8TmsResource 
| 参数              | 参数类型                                                                                                   | 描述                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| resource_detail | Object                                                                                                 | **参数解释：** 资源详情，用于扩展，默认为空。 **取值范围：** 不涉及 |
| resource_id     | String                                                                                                 | **参数解释：** 资源ID。 **取值范围：** 不涉及           |
| resource_name   | String                                                                                                 | **参数解释：** 资源名称。 **取值范围：** 不涉及           |
| tags            | Array of [TmsTag] objects | **参数解释：** 当前资源的所有标签。 **取值范围：** 不涉及      |
   
 表9TmsTag 
| 参数    | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| key   | String | **参数解释：** 标签键字段。 **取值范围：** 长度为1\~128，标签的键可以包含任意语种字母、数字、空格，以及_ . : = + - @特殊字符，但首尾不能含有空格，不能以_sys_开头。 |
| value | String | **参数解释：** 标签值字段。 **取值范围：** 长度为0\~255。                                                               |
   
**状态码：400**
表10响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
**状态码：401**
表11响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
**状态码：403**
表12响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
**状态码：404**
表13响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
#### 请求示例
通过标签resource_name反查资源列表，匹配资源名称中有resource1的资源，注：模糊匹配。
```
https://{endpoint}/v2/{project_id}/modelarts-service-v2/resource-instances/filter
{
  "matches" : [ {
    "key" : "resource_name",
    "value" : "resource1"
  } ],
  "tags" : [ {
    "key" : "key1",
    "values" : [ "*value1", "value2" ]
  } ]
}
```
#### 响应示例
**状态码：200**
```
{
  "resources" : [ {
    "resource_id" : "6efce7bf-677d-400f-b451-3543ed997a24",
    "resource_name" : "service-79ca",
    "tags" : [ {
      "key" : "model_version",
      "value" : "0.1"
    }, {
      "key" : "gpu_type",
      "value" : "v100"
    } ]
  } ],
  "total_count" : 1000
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 200 | 正常查询返回。 |
| 400 | 参数非法。   |
| 401 | 鉴权失败。   |
| 403 | 权限不足。   |
| 404 | 资源未找到。  |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
