Lockbox API, REST: Secret.Create
Creates a secret in the specified folder.
HTTP request
POST https://lockbox.api.cloud.yandex.net/lockbox/v1/secrets
Body parameters
{
"folderId": "string",
"name": "string",
"description": "string",
"labels": "string",
"kmsKeyId": "string",
"versionDescription": "string",
"versionPayloadEntries": [
{
"key": "string",
// Includes only one of the fields `textValue`, `binaryValue`
"textValue": "string",
"binaryValue": "string"
// end of the list of possible fields
}
],
"deletionProtection": "boolean",
// Includes only one of the fields `passwordPayloadSpecification`
"passwordPayloadSpecification": {
"passwordKey": "string",
"length": "string",
"includeUppercase": "boolean",
"includeLowercase": "boolean",
"includeDigits": "boolean",
"includePunctuation": "boolean",
"includedPunctuation": "string",
"excludedPunctuation": "string"
},
// end of the list of possible fields
"createVersion": "boolean"
}
Field |
Description |
folderId |
string Required field. ID of the folder to create a secret in. |
name |
string Name of the secret. |
description |
string Description of the secret. |
labels |
string Custom labels for the secret as |
kmsKeyId |
string Optional ID of the KMS key will be used to encrypt and decrypt the secret. |
versionDescription |
string Description of the first version. |
versionPayloadEntries[] |
Payload entries added to the first version. |
deletionProtection |
boolean Flag that inhibits deletion of the secret. |
passwordPayloadSpecification |
Includes only one of the fields |
createVersion |
boolean If true: a version will be created with either version_payload_entries or password_payload_specification (one is required). |
PayloadEntryChange
Field |
Description |
key |
string Required field. Non-confidential key of the entry. |
textValue |
string Use the field to set a text value. Includes only one of the fields Confidential value of the entry. |
binaryValue |
string (bytes) Use the field to set a binary value. Includes only one of the fields Confidential value of the entry. |
PasswordPayloadSpecification
Field |
Description |
passwordKey |
string Required field. key of the entry to store generated password value |
length |
string (int64) password length; by default, a reasonable length will be decided |
includeUppercase |
boolean whether at least one A..Z character is included in the password, true by default |
includeLowercase |
boolean whether at least one a..z character is included in the password, true by default |
includeDigits |
boolean whether at least one 0..9 character is included in the password, true by default |
includePunctuation |
boolean whether at least one punctuation character is included in the password, true by default |
includedPunctuation |
string If include_punctuation is true, one of these two fields (not both) may be used optionally to customize the punctuation: |
excludedPunctuation |
string a string of punctuation characters to exclude from the default (at most 31, it's not allowed to exclude all the 32) |
Response
HTTP Code: 200 - OK
{
"id": "string",
"description": "string",
"createdAt": "string",
"createdBy": "string",
"modifiedAt": "string",
"done": "boolean",
"metadata": {
"secretId": "string",
"versionId": "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": "string",
"kmsKeyId": "string",
"status": "string",
"currentVersion": {
"id": "string",
"secretId": "string",
"createdAt": "string",
"destroyAt": "string",
"description": "string",
"status": "string",
"payloadEntryKeys": [
"string"
],
// Includes only one of the fields `passwordPayloadSpecification`
"passwordPayloadSpecification": {
"passwordKey": "string",
"length": "string",
"includeUppercase": "boolean",
"includeLowercase": "boolean",
"includeDigits": "boolean",
"includePunctuation": "boolean",
"includedPunctuation": "string",
"excludedPunctuation": "string"
}
// end of the list of possible fields
},
"deletionProtection": "boolean",
// Includes only one of the fields `passwordPayloadSpecification`
"passwordPayloadSpecification": {
"passwordKey": "string",
"length": "string",
"includeUppercase": "boolean",
"includeLowercase": "boolean",
"includeDigits": "boolean",
"includePunctuation": "boolean",
"includedPunctuation": "string",
"excludedPunctuation": "string"
}
// end of the list of possible fields
}
// 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. |
CreateSecretMetadata
Field |
Description |
secretId |
string ID of the secret being created. |
versionId |
string ID of the current version of the secret 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. |
Secret
A secret that may contain several versions of the payload.
Field |
Description |
id |
string ID of the secret. |
folderId |
string ID of the folder that the secret belongs to. |
createdAt |
string (date-time) Creation timestamp. String in RFC3339 To work with values in this field, use the APIs described in the |
name |
string Name of the secret. |
description |
string Description of the secret. |
labels |
string Custom labels for the secret as |
kmsKeyId |
string Optional ID of the KMS key will be used to encrypt and decrypt the secret. |
status |
enum (Status) Status of the secret.
|
currentVersion |
Current (i.e. the |
deletionProtection |
boolean Flag that inhibits deletion of the secret. |
passwordPayloadSpecification |
Includes only one of the fields |
Version
Field |
Description |
id |
string ID of the version. |
secretId |
string ID of the secret that the version belongs to. |
createdAt |
string (date-time) Time when the version was created. String in RFC3339 To work with values in this field, use the APIs described in the |
destroyAt |
string (date-time) Time when the 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 |
description |
string Description of the version. |
status |
enum (Status) Status of the secret.
|
payloadEntryKeys[] |
string Keys of the entries contained in the version payload. |
passwordPayloadSpecification |
Includes only one of the fields |
PasswordPayloadSpecification
Field |
Description |
passwordKey |
string Required field. key of the entry to store generated password value |
length |
string (int64) password length; by default, a reasonable length will be decided |
includeUppercase |
boolean whether at least one A..Z character is included in the password, true by default |
includeLowercase |
boolean whether at least one a..z character is included in the password, true by default |
includeDigits |
boolean whether at least one 0..9 character is included in the password, true by default |
includePunctuation |
boolean whether at least one punctuation character is included in the password, true by default |
includedPunctuation |
string If include_punctuation is true, one of these two fields (not both) may be used optionally to customize the punctuation: |
excludedPunctuation |
string a string of punctuation characters to exclude from the default (at most 31, it's not allowed to exclude all the 32) |