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. |
name |
string Name of the key. |
description |
string Description of the key. |
labels |
object (map<string, string>) Custom labels for the symmetric KMS key as |
defaultAlgorithm |
enum (SymmetricAlgorithm) 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. |