at.happyproto.admin.rotateEncryptionKey
Give an instance a new encryption key. The old key stays beside it while HappyView re-seals what it sealed, and is then retired on its own. Staff only.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | admin.happyproto.at |
| Indexed |
Checks
Validunlimited-stringdefs.main.input.schema.properties.idNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.main.input.schema.properties.idempotencyKeyNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Give an instance a new encryption key. The old key stays beside it while HappyView re-seals what it sealed, and is then retired on its own. Staff only.",
"errors": [
{
"description": "This endpoint requires an authenticated caller.",
"name": "AuthRequired"
},
{
"description": "The caller is not HappyProto staff, or the provisioner does not treat them as staff.",
"name": "Forbidden"
},
{
"description": "The input was malformed, or the provisioner refused it as malformed.",
"name": "InvalidRequest"
},
{
"description": "No such instance, or it has been deleted.",
"name": "NotFound"
},
{
"description": "Passed through from the provisioner.",
"name": "InvalidSlug"
},
{
"description": "Passed through from the provisioner.",
"name": "SlugTaken"
},
{
"description": "Passed through from the provisioner.",
"name": "NotEntitled"
},
{
"description": "Passed through from the provisioner.",
"name": "InstanceLimit"
},
{
"description": "Passed through from the provisioner.",
"name": "NoCapacity"
},
{
"description": "Another operation is in progress for the instance.",
"name": "OperationInProgress"
},
{
"description": "The instance is already part-way through a rotation: its old key is not retired yet.",
"name": "RotationInProgress"
},
{
"description": "The instance is stopped. Start it first.",
"name": "InstanceStopped"
},
{
"description": "The instance has not gone live yet.",
"name": "NotLive"
},
{
"description": "The instance's HappyView cannot report a key rotation. Upgrade it first.",
"name": "RotationUnsupported"
},
{
"description": "The instance's host did not answer, so the provisioner could not check it.",
"name": "AgentUnreachable"
},
{
"description": "The instance isn't running what an apply would send it now: it's failed, or a change such as a version bump hasn't been applied. Retry the instance first.",
"name": "NotSettled"
},
{
"description": "The provisioner is unreachable, not configured, or answered with an error it does not explain to callers.",
"name": "Upstream"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"id": {
"description": "The instance's id, a UUID.",
"type": "string"
},
"idempotencyKey": {
"description": "A UUID. Repeating a request with the same key replays its answer.",
"type": "string"
}
},
"required": [
"id",
"idempotencyKey"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"operation": {
"ref": "at.happyproto.admin.listInstances#operation",
"type": "ref"
}
},
"required": [
"operation"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "at.happyproto.admin.rotateEncryptionKey",
"lexicon": 1
}