Querying the List of CMKs
Function
This API allows you to query the list of all CMKs.
URI
POST /v1.0/{project_id}/kms/list-keys
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. The token can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
limit |
No |
String |
Number of returned records. If the number of retrieved results is greater than this value, true is returned for the response parameter truncated, indicating that multiple pages of results are retrieved. The value cannot exceed the maximum number of keys. Example: 100 |
marker |
No |
String |
Start position of pagination query. If truncated is true in the response, you can send consecutive requests to obtain more records. Set marker to the value of next_marker in the response. Example: 10 |
enterprise_project_id |
No |
String |
Enterprise project ID.
|
key_state |
No |
String |
Key status, which matches the regular expression ^[1-5]{1}$. It can be:
|
sequence |
No |
String |
36-byte sequence number of a request message. Example: 919c82d4-8046-4722-9094-35c3c6524cff |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
keys |
Array of strings |
CMK ID list. |
key_details |
Array of KeyDetails objects |
Key details list. |
next_marker |
String |
Value of marker used for obtaining the next page of results. If truncated is false, next_marker is left blank. |
truncated |
String |
Whether there is a next page of results:
|
total |
Integer |
Total number of keys. |
Parameter |
Type |
Description |
---|---|---|
key_id |
String |
CMK ID. |
domain_id |
String |
User domain ID. |
key_alias |
String |
Key alias. |
realm |
String |
Key realm. |
key_usage |
String |
CMK usage。
|
key_description |
String |
Key description. |
creation_date |
String |
Time when the key was created. The timestamp indicates the total seconds past the start of the epoch date (January 1, 1970). |
scheduled_deletion_date |
String |
Time when the key was scheduled to be deleted. The timestamp indicates the total seconds past the start of the epoch date (January 1, 1970). |
key_state |
String |
Key status, which matches the regular expression ^[1-5]{1}$. It can be:
|
default_key_flag |
String |
Master key identifier. The value is 1 for Default Master Keys and 0 for non-default master keys. |
key_type |
String |
Key type. |
expiration_time |
String |
Time when the key material expires. The timestamp indicates the total seconds past the start of the epoch date (January 1, 1970). |
origin |
String |
Key source. It can be:
|
key_rotation_enabled |
String |
Key rotation status. The default value is false, indicating that key rotation is disabled. |
sys_enterprise_project_id |
String |
Enterprise project ID. Its default value is 0.
|
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error information. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error information. |
Example Requests
{ "limit" : "2", "marker" : "1" }
Example Responses
Status code: 200
Request processing succeeded.
{ "keys" : [ "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "2e258389-bb1e-4568-a1d5-e1f50adf70ea" ], "key_details" : [ { "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "domain_id" : "00074811d5c27c4f8d48bb91e4a1dcfd", "key_alias" : "test", "realm" : "cn-north-7", "key_description" : "key_description", "creation_date" : "1502799822000", "scheduled_deletion_date" : "", "key_spec" : "AES_256", "key_usage" : "ENCRYPT_DECRYPT", "key_state" : "2", "default_key_flag" : "0", "key_type" : "1", "expiration_time" : "1501578672000", "origin" : "kms", "key_rotation_enabled" : "true", "sys_enterprise_project_id" : "0", "partition_type" : "1" }, { "key_id" : "2e258389-bb1e-4568-a1d5-e1f50adf70ea", "domain_id" : "00074811d5c27c4f8d48bb91e4a1dcfd", "key_alias" : "test", "realm" : "realm", "key_description" : "key_description", "creation_date" : "1502799822000", "scheduled_deletion_date" : "", "key_spec" : "AES_256", "key_usage" : "ENCRYPT_DECRYPT", "key_state" : "2", "default_key_flag" : "0", "key_type" : "1", "expiration_time" : "1501578672000", "origin" : "kms", "key_rotation_enabled" : "true", "sys_enterprise_project_id" : "0", "partition_type" : "1" } ], "next_marker" : "", "truncated" : "false", "total" : "2" }
Status code: 400
Invalid request parameters.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Status code: 403
Authentication failed.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Status Codes
Status Code |
Description |
---|---|
200 |
Request processing succeeded. |
400 |
Invalid request parameters. |
403 |
Authentication failed. |
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.