action dracoon_create_and_preserve_room_rescue_key_pair {
label: "Create key pair and preserve copy of old private key"
description: "
🚀 Since v4.24.0
\n\n### Description: \nCreate room rescue key pair and preserve copy of old private key.\n\n### Precondition:\nUser needs to be a 👤 Room Administrator.\n\n### Postcondition:\nRoom rescue key pair is created. \nCopy of old private key is preserved.\n\n### Further Information:\nYou can submit your old private key, encrypted with your current password. \nThis allows migrating file keys encrypted with your old key pair to the new one."
provider: dracoon
method: POST
path: "/v4/nodes/rooms/{room_id}/keypairs"
encoding: json
input: {
type: "object"
properties: {
"X-Sds-Auth-Token": {
type: "string"
}
previousPrivateKey: {
type: "object"
description: "Private key container"
required: ["privateKey", "version"]
properties: {
createdAt: {
type: "string"
format: "date-time"
description: "🚀 Since v4.24.0\n\nCreation date"
}
createdBy: {
type: "integer"
format: "int64"
description: "🚀 Since v4.24.0\n\nCreated by user"
}
privateKey: {
type: "string"
description: "Private key"
}
version: {
type: "string"
description: "Version"
}
}
}
privateKeyContainer: {
type: "object"
additionalProperties: true
}
publicKeyContainer: {
type: "object"
description: "Public key container"
required: ["publicKey", "version"]
properties: {
createdAt: {
type: "string"
format: "date-time"
description: "🚀 Since v4.24.0\n\nCreation date"
}
createdBy: {
type: "integer"
format: "int64"
description: "🚀 Since v4.24.0\n\nCreated by user"
}
publicKey: {
type: "string"
description: "Public key"
}
version: {
type: "string"
description: "Version"
}
}
}
room_id: {
type: "integer"
format: "int64"
}
}
required: ["previousPrivateKey", "privateKeyContainer", "publicKeyContainer", "room_id"]
additionalProperties: false
}
output: {
type: "object"
additionalProperties: true
}
}