
# 根据标签查询负载均衡器
#### 功能介绍
根据标签过滤查询负载均衡实例。
#### 接口约束
无。
#### URI
POST /v2.0/{project_id}/loadbalancers/resource_instances/action
表1参数说明 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                               |
|:---|:---|:---|:---|
| project_id | 是    | String | 标签所在的项目ID。 获取方法详见[获取项目ID](https://support.huaweicloud.com/api-elb/elb_fl_0008.html)。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述      |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户token |
   
表3请求参数 
| 参数      | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| tags    | 否    | Array   | 待查询的负载均衡器的标签列表，最多包含20个key，每个key下面的value最多20个； key不能为空或者空字符串。 Key不能重复，同一个key中values不能重复。 详见[表4 tags 字段数据结构说明]。 |
| limit   | 否    | Integer | 查询记录数（action为count时无此参数）如果action为filter默认为1000，limit最多为1000，不能为负数，最小值为1。                                                                                                                                                                                                                           |
| offset  | 否    | Integer | 索引位置，从offset指定的下一条数据开始查询，查询第一页数据时，不需要传入此参数，查询后续页码数据时，将查询前一页数据时响应体中的值带入此参数（action为count时无此参数）如果action为filter默认为0，必须为数字，不能为负数。                                                                                                                                                                       |
| action  | 是    | String  | 操作标识（仅限于filter，count）：filter（过滤）。count（查询总条数）如果是filter就是分页查询，如果是count只需按照条件将总条数返回即可。                                                                                                                                                                                                               |
| matches | 否    | Array   | 搜索字段，key为要匹配的字段，如resource_name等。value为匹配的值。key为固定字典值。 根据不同的字段确认是否需要模糊匹配，如resource_name默认为模糊搜索，如果value为空字符串精确匹配。key如果是resource_id则精确匹配。详见[表5]。                                 |
   
 表4tags 字段数据结构说明 
| 参数     | 是否必选 | 参数类型   | 描述                                                                                                                                     |
|:---|:---|:---|:---|
| key    | 是    | String | 标签的键。最大长度128个unicode字符。key不能为空。(搜索时不对此参数做校验)                                                                                           |
| values | 是    | Array  | 标签的值列表。每个值最大长度255个unicode字符，value之间为或的关系。 当values为空列表时，表示按key全量搜索，当values中的元素value以"\*"开头时，表示按\*后面的值全模糊匹配。 |
   
 表5matches字段数据结构说明 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| key   | 是    | String | 匹配的键。 取值范围： - resource_name：资源名称；  - resource_id：资源id；   |
| value | 是    | String | 匹配的值。每个值最大长度255个unicode字符 。                                                                                                                                                                                                                                                                     |
   
#### 响应参数
表6响应参数 
| 参数          | 参数类型    | 描述                                                                              |
|:---|:---|:---|
| resources   | Array   | 负载均衡器对象的列表。详见[表7]。 |
| total_count | Integer | 总记录数。                                                                           |
   
 表7resource 字段数据结构说明 
| 参数                | 参数类型   | 描述                                                            |
|:---|:---|:---|
| resource_id       | String | 资源ID。                                                         |
| resource_detail   | String | 资源详情。资源对象，用于扩展。默认为空。                                          |
| tags              | Array  | 标签列表，没有标签默认为空数组。详见[表8]。 |
| resource_name     | String | 资源名称，没有默认为空字符串。                                               |
| super_resource_id | String | 父级资源id                                                        |
   
 表8tags 字段数据结构说明 
| 参数    | 参数类型   | 描述                                        |
|:---|:---|:---|
| key   | String | 键。最大长度128个unicode字符。key不能为空。(搜索时不对此参数做校验) |
| value | String | 值。最大长度255个unicode字符。                      |
   
#### 请求示例
- 请求样例1 action为filter时的请求体
  ```
  POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/resource_instances/action
  {
      "offset": "100", 
      "limit": "100", 
      "action": "filter", 
      "matches": [
          {
              "key": "resource_name", 
              "value": "resource1"
          }
      ], 
      "tags": [
          {
              "key": "key1", 
              "values": [
                  "*value1", 
                  "value2"
              ]
          }
      ]
  }
  ```
  
- 请求样例2 action为count时的请求体
  ```
  POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/resource_instances/action
  {
      "action": "count", 
      "tags": [
          {
              "key": "key1",
              "values": [
                  "value1", 
                  "value2"
              ]
          }, 
          {
              "key": "key2", 
              "values": [
                  "value1", 
                  "value2"
              ]
          }
      ], 
      "matches": [
          {
              "key": "resource_name", 
              "value": "resource1"
          }
      ]
  }
  ```
  
 
#### 响应示例
- 响应样例1 action为filter时响应体
  ```
  {
      "resources": [
          {
              "resource_detail": "", 
              "resource_id": "154d135b-3a89-4e89-8023-06efb9acdc05", 
              "resource_name": "resource1", 
              "tags": [
                  {
                      "key": "key1",
                      "value": "value1"
                  }, 
                  {
                      "key": "key2", 
                      "value": "value1"
                  }
              ]
          }
      ], 
      "total_count": 1000
  }
  ```
  
- 响应样例2 action为count时响应体
  ```
  {
      "total_count": 1000
  }
  ```
  
 
#### 返回码
请参见[返回码](https://support.huaweicloud.com/api-elb/elb_zq_bq_0013.html)。
