Querying Resources by Tag
Function
Function This API is used to query resources using tags.
URI
POST /v1/{project_id}/{resource_type}/resource_instances/action
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. |
resource_type |
Yes |
String |
Specifies the resource type. The type is endpoint_service or endpoint. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
Specifies the user token. It can be obtained by calling the IAM API. The value of X-Subject-Token in the response header is the user token. |
Content-Type |
Yes |
String |
Specifies the MIME type of the request body. Default value application/json is recommended. For APIs used to upload objects or images, the MIME type varies depending on the flow type. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
tags |
No |
Array of TagValuesList objects |
Tags are included. A maximum of 10 tag keys are included, and each tag value can have a maximum of 10 values. Each tag value can be an empty array, but the tag structure cannot be missing. Tag keys must be unique. Values of the same tag key must be unique. Specifies all returned tags of the resource. Keys are in the AND relationship while values in the key-value structure are in the OR relationship. If no filtering condition for tags is specified, full data is returned. |
tags_any |
No |
Array of TagValuesList objects |
Any tags are included. A maximum of 10 tag keys are included, and each tag key can have a maximum of 10 values. Values of each tag key can be an empty array, but the tag structure cannot be missing. Both tag keys and values of the same tag key must be unique. Specifies resources including tags returned. Keys and values in the key-value structure are in the OR relationship. If no filtering condition is specified, full data is returned. |
not_tags |
No |
Array of TagValuesList objects |
Tags are excluded, a maximum of 10 tag keys are included, and each tag value can have a maximum of 10 values. Each tag value can be an empty array, but the tag structure cannot be missing. Tag keys must be unique. Values of the same tag key must be unique. Specifies resources excluding tags returned. Keys are in the AND relationship while values in the key-value structure are in the OR relationship. If no filtering condition is specified, full data is returned. |
not_tags_any |
No |
Array of TagValuesList objects |
Any tags are excluded, a maximum of 10 tag keys are included, and each tag value can have a maximum of 10 values. Each tag value can be an empty array, but the tag structure cannot be missing. Tag keys must be unique. Values of the same tag key must be unique. Specifies resources excluding tags returned. Keys are in the AND relationship while values in the key-value structure are in the OR relationship. If no filtering condition is specified, full data is returned. |
sys_tags |
No |
Array of TagValuesList objects |
Specifies the system tags. |
limit |
No |
String |
Specifies the number of records to be queried. This parameter is unavailable when action is set to count. If action is set to filter, the default value is 1000. The maximum value of limit is 1000 and the minimum value is 1. |
offset |
No |
String |
Specifies the index position and offset. The query starts from the data after the first data offset. This parameter is unavailable when action is set to count. If action is set to filter, the default value is 0 which indicates that the query starts from the first data. The value must be a non-negative number. |
action |
Yes |
String |
Specifies the action, which only can be filter and count. If this parameter is set to filter, the query is performed based on the filter criteria. If the parameter is set to count, only the total number of resources need to be returned. |
matches |
No |
Array of Match objects |
Specifies the search field. The tag key is the field to be matched, for example, resource_name. The tag value indicates the matched value. The tag key is a fixed dictionary value and cannot be a duplicate key or an unsupported key. Specifies whether fuzzy match is required based on the value of the tag key. For example, if the tag key is resource_name, fuzzy search (case-insensitive) is used by default. If value is an empty string, exact match is used. An empty list is returned because the resource_name for most services cannot be left blank. If the tag key is resource_id, exact match is used. Only resource_name for key is supported. Other key values will be available later. |
without_any_tag |
No |
Boolean |
The default value is false. The value can be true or false. When withoutAnyTag is set to true, ignore parameter verification on the tags, tagsAny, notTags, and notTagsAny. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key |
Yes |
String |
Specifies the tag key. It contains a maximum of 127 Unicode characters. A tag key cannot be left blank. (The character set of this parameter is not verified during the search.) The tag key cannot be left blank, empty strings, or spaces. Before you verify and use it, delete spaces at the beginning and end of the tag key. Minimum: 1 Maximum: 36 |
values |
Yes |
Array of strings |
Specifies the tag values. Each tag value contains a maximum of 255 Unicode characters. Before you verify and use it, delete spaces at the beginning and end of the tag value. The tag value can be an empty array but cannot be left blank. If values is left blank, it indicates any_value (querying any value). Values are in the OR relationship. The system does not verify the character set of values when searching for resources, but only verifies the length. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key |
Yes |
String |
Indicates the tag key. Only resource_name for key is supported. Other key values will be available later. Minimum: 1 Maximum: 36 |
value |
Yes |
String |
Value. Each value can contain a maximum of 255 Unicode characters. The character set of value is not verified. Minimum: 1 Maximum: 43 |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
resources |
Array of ResourceInstance objects |
Resource Instance Details |
total_count |
Integer |
Specifies the total number of query records. Minimum: 1 |
Parameter |
Type |
Description |
---|---|---|
resource_id |
String |
Indicates the resource ID, endpoint service ID, or endpoint ID. |
tags |
Array of TagList objects |
Indicates the list of tags. |
resource_name |
String |
Resource name. If the resource does not have a name, the ID is returned. |
Parameter |
Type |
Description |
---|---|---|
key |
String |
Specifies the tag key. A tag key contains a maximum of 36 Unicode characters. It cannot be left blank. It cannot contain equal signs (=), asterisks (*), less than signs (<), greater than signs (>), backslashes (), commas (,), vertical bars (|), and slashes (/), and the first and last characters cannot be spaces. Minimum: 1 Maximum: 36 |
value |
String |
Specifies the tag key. A tag value contains a maximum of 43 Unicode characters and can be an empty string. It cannot contain equal signs (=), asterisks (*), less than signs(<), greater than signs (>), backslashes (), commas (,), vertical bars (|), and slashes (/), and the first and last characters cannot be spaces. Minimum: 1 Maximum: 43 |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 405
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 406
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 407
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 408
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 409
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 501
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 502
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 503
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Status code: 504
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Specifies the error message returned when a task submission exception occurs. |
Parameter |
Type |
Description |
---|---|---|
message |
String |
Task error description |
code |
String |
Error code of a task exception. |
Example Requests
-
POST https://{endpoint}/v1/{project_id}/endpoint/resource_instances/action When action is set to filter: "offset": "100", "limit": "100", "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" ] } ] }
-
https://{endpoint}/v1/{project_id}/endpoint_service/ resource_instances/action When action is set to count: { "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" ] } ], "matches": [ { "key": "resource_name", "value": "resource1" } ] }
Example Responses
Status code: 200
The server has successfully processed the request.
- When action is set to filter: { "resources": [ { "resource_detail": null, "resource_id": "cdfs_cefs_wesas_12_dsad", "resource_name": "resource1", "tags": [ { "key": "key1","value": "value1" }, { "key": "key2","value": "value1" } ] } ], "total_count": 1000 } - When action is set to be count: { "total_count": 1000 }
Status Codes
Status Code |
Description |
---|---|
200 |
The server has successfully processed the request. |
400 |
The request could not be understood by the server due to malformed syntax. |
401 |
The requested page requires a user name and password. |
403 |
The server understood the request, but is refusing to fulfill it. |
404 |
The requested page was not found. |
405 |
The method specified in the request line is not allowed for the resource identified by the request URI. |
406 |
The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request. |
407 |
The client must first authenticate itself with the proxy. |
408 |
The client did not produce a request within the time that the server was prepared to wait. |
409 |
The request could not be completed due to a conflict with the current state of the resource. |
500 |
Failed to complete the request. Service abnormality. |
501 |
Failed to complete the request. The server does not support the requested function. |
502 |
Failed to complete the request. because the server has received an invalid response. |
503 |
Failed to complete the request. because the system is unavailable. |
504 |
Gateway Timeout |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.