更新时间:2024-06-29 GMT+08:00
分享

根据标签过滤资源

功能介绍

根据标签过滤资源

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/dcs/resource_instances/action

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

without_any_tag

Boolean

不包含任意一个标签,该字段为true时查询所有不带标签的资源,此时忽略 “tags”、“tags_any”、“not_tags”、“not_tags_any”字段

tags

Array of TagList objects

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

sys_tags

Array of TagList objects

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

limit

String

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

offset

String

索引位置,偏移量(action为count时无此参数)从第一条数据偏移offset条数据后开始查询,如果action为filter默认为0(偏移0条数据,表示从第一条数据开始查询),必须为数字,不能为负数

action

String

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

matches

Array of Match objects

搜索字段,key为要匹配的字段,如resource_name等。value为匹配的值。key为固定字典值,不能包含重复的key或不支持的key。 根据key的值确认是否需要模糊匹配,如resource_name默认为模糊搜索(不区分大小写),如果value为空字符串精确匹配(多数服务不存在资源名称为空的情况,因此此类情况返回空列表)。resource_id为精确匹配。第一期只做resource_name,后续再扩展。

表3 TagList

参数

是否必选

参数类型

描述

key

String

键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做字符集校验),key不能为空或者空字符串,不能为空格,校验和使用之前先trim 前后半角空格

values

Array of strings

值列表。每个值最大长度255个unicode字符,校验和使用之前先trim 前后半角空格。 value可为空数组但不可缺省

表4 Match

参数

是否必选

参数类型

描述

key

String

键。第一期限定为resource_name,后续扩展。

value

String

值。每个值最大长度255个unicode字符 。不校验字符集范

响应参数

状态码: 200

表5 响应Body参数

参数

参数类型

描述

resources

Array of TmsInstanceResource objects

资源信息列表

total_count

Integer

总记录数

表6 TmsInstanceResource

参数

参数类型

描述

resource_id

String

资源ID

resource_detail

Object

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

tags

Array of ResourceTag objects

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

resource_name

String

资源名称,资源没有名称时默认为空字符串,eip返回ip地址。

sys_tags

Array of ResourceTag objects

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

表7 ResourceTag

参数

参数类型

描述

key

String

标签键

  • 不能为空。

  • 对于同一资源键值唯一。

  • 长度不超过36个字符。

  • 标签的键必须唯一且输入不能为空。

value

String

标签值

  • action为create时必选。action为delete时非必选。

  • 长度不超过43个字符。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

状态码: 500

表9 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

请求示例

查询Dcs符合条件的实例信息

POST https://{dcs_endpoint}/v2/{project_id}/dcs/resource_instances/action

{
  "without_any_tag" : true,
  "limit" : "10",
  "offset" : "1",
  "action" : "filter",
  "matches" : [ ],
  "tags" : [ {
    "key" : "a",
    "values" : [ 1, 1 ]
  }, {
    "key" : "b",
    "values" : [ 2, 2 ]
  } ]
}

响应示例

状态码: 200

Dcs返回的符合条件的实例信息

{
  "resources" : [ {
    "tags" : [ ],
    "resource_id" : "cb2b8605-2be8-4cc0-b1a2-4ccf964392f9",
    "resource_name" : "dcs-autotest",
    "resource_detail" : null
  } ],
  "total_count" : 1
}

状态码

状态码

描述

200

Dcs返回的符合条件的实例信息

400

非法请求。

500

内部服务错误。

错误码

请参见错误码

分享:

    相关文档

    相关产品