Key Management Service API, REST: SymmetricKey.Create
Creates a symmetric KMS key in the specified folder.
HTTP request
POST https://kms.api.cloud.yandex.net/kms/v1/keys
Body parameters
{
"folderId": "string",
"name": "string",
"description": "string",
"labels": "object",
"defaultAlgorithm": "string",
"rotationPeriod": "string",
"deletionProtection": "boolean"
}
|
Field |
Description |
|
folderId |
string Required field. ID of the folder to create a symmetric KMS key in. The maximum string length in characters is 50. |
|
name |
string Name of the key. The maximum string length in characters is 100. |
|
description |
string Description of the key. The maximum string length in characters is 1024. |
|
labels |
object (map<string, string>) Custom labels for the symmetric KMS key as No more than 64 per resource. The maximum string length in characters for each value is 63. Each value must match the regular expression |
|
defaultAlgorithm |
enum (SymmetricAlgorithm) Required field. Encryption algorithm to be used with a new key version, generated with the next rotation.
|
|
rotationPeriod |
string (duration) Interval between automatic rotations. To disable automatic rotation, don't include |
|
deletionProtection |
boolean Flag that inhibits deletion of the symmetric KMS key |
Response
HTTP Code: 200 - OK
{
"id": "string",
"description": "string",
"createdAt": "string",
"createdBy": "string",
"modifiedAt": "string",
"done": "boolean",
"metadata": {
"keyId": "string",
"primaryVersionId": "string"
},
// Includes only one of the fields `error`, `response`
"error": {
"code": "integer",
"message": "string",
"details": [
"object"
]
},
"response": {
"id": "string",
"folderId": "string",
"createdAt": "string",
"name": "string",
"description": "string",
"labels": "object",
"status": "string",
"primaryVersion": {
"id": "string",
"keyId": "string",
"status": "string",
"algorithm": "string",
"createdAt": "string",
"primary": "boolean",
"destroyAt": "string",
"hostedByHsm": "boolean"
},
"defaultAlgorithm": "string",
"rotatedAt": "string",
"rotationPeriod": "string",
"deletionProtection": "boolean"
}
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
|
Field |
Description |
|
id |
string ID of the operation. |
|
description |
string Description of the operation. 0-256 characters long. |
|
createdAt |
string (date-time) Creation timestamp. String in RFC3339 To work with values in this field, use the APIs described in the |
|
createdBy |
string ID of the user or service account who initiated the operation. |
|
modifiedAt |
string (date-time) The time when the Operation resource was last modified. String in RFC3339 To work with values in this field, use the APIs described in the |
|
done |
boolean If the value is |
|
metadata |
Service-specific metadata associated with the operation. |
|
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
|
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
CreateSymmetricKeyMetadata
|
Field |
Description |
|
keyId |
string ID of the key being created. |
|
primaryVersionId |
string ID of the primary version of the key being created. |
Status
The error result of the operation in case of failure or cancellation.
|
Field |
Description |
|
code |
integer (int32) Error code. An enum value of google.rpc.Code |
|
message |
string An error message. |
|
details[] |
object A list of messages that carry the error details. |
SymmetricKey
A symmetric KMS key that may contain several versions of the cryptographic material.
|
Field |
Description |
|
id |
string ID of the key. |
|
folderId |
string ID of the folder that the key belongs to. |
|
createdAt |
string (date-time) Time when the key was created. String in RFC3339 To work with values in this field, use the APIs described in the |
|
name |
string Name of the key. |
|
description |
string Description of the key. |
|
labels |
object (map<string, string>) Custom labels for the key as |
|
status |
enum (Status) Current status of the key.
|
|
primaryVersion |
Primary version of the key, used as the default for all encrypt/decrypt operations, |
|
defaultAlgorithm |
enum (SymmetricAlgorithm) Default encryption algorithm to be used with new versions of the key.
|
|
rotatedAt |
string (date-time) Time of the last key rotation (time when the last version was created). String in RFC3339 To work with values in this field, use the APIs described in the |
|
rotationPeriod |
string (duration) Time period between automatic key rotations. |
|
deletionProtection |
boolean Flag that inhibits deletion of the key |
SymmetricKeyVersion
Symmetric KMS key version: metadata about actual cryptographic data.
|
Field |
Description |
|
id |
string ID of the key version. |
|
keyId |
string ID of the symmetric KMS key that the version belongs to. |
|
status |
enum (Status) Status of the key version.
|
|
algorithm |
enum (SymmetricAlgorithm) Encryption algorithm that should be used when using the key version to encrypt plaintext.
|
|
createdAt |
string (date-time) Time when the key version was created. String in RFC3339 To work with values in this field, use the APIs described in the |
|
primary |
boolean Indication of a primary version, that is to be used by default for all cryptographic |
|
destroyAt |
string (date-time) Time when the key version is going to be destroyed. Empty unless the status String in RFC3339 To work with values in this field, use the APIs described in the |
|
hostedByHsm |
boolean Indication of the version that is hosted by HSM. |