查询资源实例 - ListTags
功能介绍
该API用于通过标签过滤实例。
URI
POST /v2/{project_id}/{resource_type}/resource_instances/action
名称 | 参数类型 | 说明 |
|---|---|---|
project_id | String | 项目ID,获取方法请参见获取项目ID。 |
resource_type | String | 资源类型
|
请求消息
请求参数
参数 | 是否必选 | 类型 | 描述 |
|---|---|---|---|
Content-Type | 是 | String | 消息体的类型(格式) 推荐您使用默认值application/json。 |
X-Auth-Token | 是 | String | 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
ief-instance-id | 否 | String | 企业版实例ID,专业版实例为空值 |
名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
tags | 否 | Array of tag objects | 包含标签,最多包含20个key,每个key下面的value最多10个,每个key对应的value可以为空数组但结构体不能缺失。Key不能重复,同一个key中values不能重复。结果返回包含所有标签的资源列表,key之间是与的关系,key-value结构中value是或的关系。如tags_any和tags字段同时存在,则去重后返回两者并集。无tag过滤条件时返回全量数据。 |
tags_any | 否 | Array of tag objects | 包含任意标签,最多包含20个key,每个key下面的value最多10个。Key不能重复,同一个key中values不能重复。结果返回包含标签的资源列表,key之间是或的关系,key-value结构中value是或的关系。如tags_any和tags字段同时存在,则去重后返回两者并集。无过滤条件时返回全量数据。 |
not_tags | 否 | Array of tag objects | 不包含标签,最多包含20个key,每个key下面的value最多10个。Key不能重复,同一个key中values不能重复。结果返回不包含标签的资源列表,key之间是与的关系,key-value结构中value是或的关系。无过滤条件时返回全量数据。 |
not_tags_any | 否 | Array of tag objects | 不包含任意标签,最多包含20个key,每个key下面的value最多10个。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为空字符串则返回空列表(IEF服务不存在资源名称为空的情况,因此这类情况返回空列表)。 |
console | 否 | Boolean | 确认是否请求源是否为console,通过该字段来判断是否返回resource_detail内容,如果为true则返回,如果为false或者不带该参数则返回空列表。 |
sorted | 否 | 表31 object | 按标签过滤资源后返回结果的排序方式 |
名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
key | 是 | String | 键。最大长度36个unicode字符。 key不能为空。(搜索时不对此参数做字符集校验),key不能为空或者空字符串,不能为空格,校验和使用之前先trim 前后半角空格。 |
values | 否 | Array of strings | 值列表。每个值最大长度43个unicode字符,校验和使用之前先trim 前后半角空格。 *为系统保留字符,如果value是以*开头表示按照*后面的值全模糊匹配。不能只传入“*”。 如果values为空列表,则表示any_value(查询任意value)。value之间为或的关系。 |
请求示例
action为filter时请求体:
{
"action": "filter",
"limit": "10",
"offset": "0",
"matches":[{"key":"resource_name","value":"q"}],
"tags":[
{
"key":"test",
"values": ["value1","value2"]
}
]
} 响应消息
响应参数
名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
resources | 是 | Array of resource objects | 资源实例 |
total_count | 是 | Integer | 总记录数 |
名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
resource_id | 是 | String | 资源ID |
tags | 是 | Array of resource_tag objects | 标签列表,没有标签默认为空数组 |
resource_name | 是 | String | 资源名称,资源没有名称时默认为空字符串。 |
响应示例
action为filter时响应体:
{
"total_count": 2,
"resources": [
{
"tags": [
{
"value": "",
"key": "testtest"
},
{
"value": "value2",
"key": "test"
}
],
"resource_name": "node_test_0108_1",
"resource_id": "e25307d4-bd25-4c29-ba7f-176376ed2f99"
},
{
"tags": [
{
"value": "value1",
"key": "key1"
},
{
"value": "",
"key": "test"
}
],
"resource_name": "node_test-0109_1",
"resource_id": "fc3aeee8-24e1-4912-bf7a-54854251d0e5"
}
]
} action为count时响应体:
{
"total_count": 2
} 错误码
请参见错误码。

