更新时间:2024-01-15 GMT+08:00

根据标签查询资源实例列表

功能介绍

根据标签查询资源实例列表

调用方法

请参见如何调用API

URI

POST /v1/{project_id}/{resource_type}/resource-instances/filter

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID

resource_type

String

资源类型。审计:auditInstance

表2 Query参数

参数

是否必选

参数类型

描述

limit

String

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

offset

String

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

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token

表4 请求Body参数

参数

是否必选

参数类型

描述

matches

Array of matches objects

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

not_tags

Array of TagKeyValuesBean objects

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

tags

Array of TagKeyValuesBean objects

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

tags_any

Array of TagKeyValuesBean objects

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

not_tags_any

Array of TagKeyValuesBean objects

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

sys_tags

TagKeyValuesBean object

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

without_any_tag

Boolean

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

表5 matches

参数

是否必选

参数类型

描述

key

String

value

String

表6 TagKeyValuesBean

参数

是否必选

参数类型

描述

key

String

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

values

Array of strings

值列表。每个值最大长度255个unicode字符,校验和使用之前先trim 前后半角空格。 value可为空数组但不可缺省。 如果values为空列表,则表示any_value(查询任意value)。value之间为或的关系

响应参数

状态码: 200

表7 响应Body参数

参数

参数类型

描述

resources

Array of resources objects

资源实例列表

total_count

Integer

总记录数

表8 resources

参数

参数类型

描述

resource_detail

Object

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

resource_id

String

资源ID

resource_name

String

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

tags

Array of tags objects

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

sys_tags

Array of sys_tags objects

仅op_service权限才可以可以获取此字段: 目前只包含一个resource_tag 结构体 key:_sys_enterprise_project_id value:企业项目id,0表示默认企业项目 非op_service场景不能返回此字段

表9 tags

参数

参数类型

描述

key

String

value

String

表10 sys_tags

参数

参数类型

描述

key

String

value

String

状态码: 400

表11 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表12 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

状态码: 403

表13 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表14 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

状态码: 500

表15 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表16 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

请求示例

/v1/{project_id}/{resource_type}/resource-instances/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" ]
  } ],
  "sys_tags" : [ {
    "key" : "_sys_enterprise_project_id",
    "values" : [ "5aa119a8-d25b-45a7-8d1b-88e127885635" ]
  } ]
}

响应示例

状态码: 200

成功

{
  "resources" : [ {
    "resource_detail" : null,
    "resource_id" : "cdfs_cefs_wesas_12_dsad",
    "resource_name" : "resouece1",
    "tags" : [ {
      "key" : "key1",
      "value" : "value1"
    }, {
      "key" : "key2",
      "value" : "value1"
    } ],
    "sys_tags" : [ {
      "key" : "_sys_enterprise_project_id",
      "value" : "5aa119a8-d25b-45a7-8d1b-88e127885635"
    } ]
  } ],
  "total_count" : 1000
}

状态码: 400

失败

{
  "error" : {
    "error_code" : "DBSS.XXXX",
    "error_msg" : "XXX"
  }
}

状态码

状态码

描述

200

成功

400

失败

403

认证失败

500

服务端错误

错误码

请参见错误码