diff options
Diffstat (limited to 'docs/openapi.yaml')
| -rw-r--r-- | docs/openapi.yaml | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/openapi.yaml b/docs/openapi.yaml index 2ebf7fc..de62b59 100644 --- a/docs/openapi.yaml +++ b/docs/openapi.yaml @@ -977,6 +977,49 @@ paths: '204': { description: Done. } '409': { description: No user registry; tokens are taken until they expire. } + /auth/keys: + get: + tags: [Auth] + summary: Your keys + description: Your keys, your registry entry as recorded, and under a strict policy the envelope holding it (`signed`), which signing it anew names (`prev`). + responses: + '200': + description: Yours. + content: + application/json: + schema: + type: object + properties: + keys: { type: object, additionalProperties: { type: string } } + entry: { type: object } + signed: { type: string, nullable: true } + '404': { description: No entry of yours. } + + /auth/keys/{id}: + parameters: + - { name: id, in: path, required: true, schema: { type: string } } + put: + tags: [Auth] + summary: Add or replace one of your keys + description: Whatever else you may do. Under a strict policy `409`; sign your entry with the keys changed instead (`continuum-signed key-add`). + requestBody: + content: + text/plain: + schema: { type: string } + example: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA… laptop + responses: + '204': { description: Done. } + '400': { description: Not an Ed25519 public key, or not a key's name. } + '404': { description: No entry of yours. } + '409': { description: Strict policy. } + delete: + tags: [Auth] + summary: Remove one of your keys + responses: + '204': { description: Done. } + '404': { description: No entry of yours, or no such key. } + '409': { description: Strict policy. } + /auth/whoami: get: tags: [Auth] |
