更新时间:2024-07-25 GMT+08:00

通过标签查询资源实例

功能介绍

通过标签查询资源实例

URI

POST /v3/{project_id}/{resource_type}/resource-instances/action

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户项目ID

resource_type

String

  • 专线服务资源类型,包括dc-directconnect/dc-vgw/dc-vif
  • dc-directconnect: 专线物理连接
  • dc-vgw: 虚拟网关
  • dc-vif: 虚拟接口

枚举值:

  • dc-directconnect
  • dc-vgw
  • dc-vif

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

offset

String

索引位置, 从offset指定的下一条数据开始查询。 查询第一页数据时,不需要传入此参数,查询后续页码数据时,将查询前一页数据时响应体中的值带入此参数(action为count时无此参数)如果action为filter默认为0,必须为数字,不能为负数

limit

String

查询记录数(action为count时无此参数)如果action为filter默认为1000,limit最多为1000,不能为负数,最小值为1

action

String

操作标识(仅限于filter,count):filter(过滤),count(查询总条数) 如果是filter就是分页查询,如果是count只需按照条件将总条数返回即可。禁止返回其他字段。

枚举值:

  • filter
  • count

matches

Array of Match objects

搜索字段,key为要匹配的字段,如resource_name等。value为匹配的值。此字段为固定字典值。根据不同的字段确认是否需要模糊匹配,如resource_name默认为模糊搜索(不区分大小写),如果value为空字符串精确匹配。resource_id为精确匹配。第一期只做resource_name,后续在扩展。

not_tags

Array of Tags objects

不包含标签,最多包含10个key,每个key下面的value最多10个, 结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。返回不包含标签的资源列表,key之间是与的关系,key-value结构中value是或的关系。无过滤条件时返回全量数据。

tags

Array of Tags objects

包含标签,最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。返回包含所有标签的资源列表,key之间是与的关系,key-value结构中value是或的关系。无tag过滤条件时返回全量数据。

tags_any

Array of Tags objects

包含任意标签,最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。返回包含标签的资源列表,key之间是或的关系,key-value结构中value是或的关系。无过滤条件时返回全量数据。

not_tags_any

Array of Tags objects

不包含任意标签,最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。返回不包含标签的资源列表,key之间是或的关系,key-value结构中value是或的关系。无过滤条件时返回全量数据。

sys_tags

Array of Tags objects

仅op_service权限可以使用此字段做资源实例过滤条件。目前TMS调用时只包含一个tag结构体。key:_sys_enterprise_project_id,value:企业项目id列表。目前TMS调用时,key下面只包含一个value。0表示默认企业项目。sys_tags和租户标签过滤条件(without_any_tag 、tags、tags_any、not_tags、not_tags_any)不能同时使用。

表3 Match

参数

是否必选

参数类型

描述

key

String

键。取值范围为包括dc-directconnect/dc-vgw/dc-vif

value

String

值。每个值最大长度255个unicode字符。

表4 Tags

参数

是否必选

参数类型

描述

key

String

键。最大长度127个unicode字符。 key不能为空。

values

Array of strings

值列表。每个值最大长度255个unicode字符。

响应参数

状态码: 200

表5 响应Body参数

参数

参数类型

描述

resources

Array of Resource objects

资源列表。

total_count

Integer

总记录数。

request_id

String

请求ID

表6 Resource

参数

参数类型

描述

resource_detail

Object

资源详情。 资源对象,用于扩展。默认为空。

resource_id

String

资源的ID。

resource_name

String

资源名称,资源没有名称时默认为空字符串。

tags

Array of Tag objects

标签列表,没有标签默认为空数组。

sys_tags

Array of Tag objects

标签列表,没有标签默认为空数组。

表7 Tag

参数

参数类型

描述

key

String

标签键,最大长度36个unicode字符,格式为大小写字母,数字,中划线“-”,下划线“_”,中文。

最小长度:0

最大长度:36

value

String

标签值,最大长度43个unicode字符,格式为大小写字母,数字,中划线“-”,下划线“_”,点“.”,中文。

最小长度:0

最大长度:43

请求示例

  • action为filter时,根据标签查询资源。
    https://{endpoint}/v3/cfa563efb77d4b6d9960781d82530fd8/dc-vgw/resource-instances/action
    
    {
      "offset" : "10",
      "limit" : "10",
      "action" : "filter",
      "matches" : [ {
        "key" : "resource_name",
        "value" : "resource1"
      } ],
      "not_tags" : [ {
        "key" : "key1",
        "values" : [ "*value1", "value2" ]
      } ],
      "tags" : [ {
        "key" : "key1",
        "values" : [ "*value1", "value2" ]
      } ],
      "tags_any" : [ {
        "key" : "key1",
        "values" : [ "value1", "value2" ]
      } ],
      "not_tags_any" : [ {
        "key" : "key1",
        "values" : [ "value1", "value2" ]
      } ]
    }
  • action为count时,查询资源总数。
    https://{endpoint}/v3/cfa563efb77d4b6d9960781d82530fd8/dc-vgw/resource_instances/action
    
    {
      "action" : "count",
      "not_tags" : [ {
        "key" : "key1",
        "values" : [ "value1", "*value2" ]
      } ],
      "tags" : [ {
        "key" : "key1",
        "values" : [ "value1", "value2" ]
      }, {
        "key" : "key2",
        "values" : [ "value1", "value2" ]
      } ],
      "tags_any" : [ {
        "key" : "key1",
        "values" : [ "value1", "value2" ]
      } ],
      "not_tags_any" : [ {
        "key" : "key1",
        "values" : [ "value1", "value2" ]
      } ],
      "sys_tags" : [ {
        "key" : "_sys_enterprise_project_id",
        "values" : [ "5aa119a8-d25b-45a7-8d1b-88e127885635" ]
      } ],
      "matches" : [ {
        "key" : "resource_name",
        "value" : "resource1"
      } ]
    }

响应示例

状态码: 200

OK

{
  "resources" : [ ],
  "total_count" : 0,
  "request_id" : "9a4f4dfc4fb2fc101e65bba07d908535"
}

状态码

状态码

描述

200

OK

错误码

请参见错误码