- Register an SSH key:
POST /me/ssh-keys, or the deprecatedPOST /organizations/{orgID}/ssh-keys - List your SSH keys:
GET /me/ssh-keys - Revoke an SSH key:
POST /me/ssh-keys/{keyID}/revoke - Login shell:
GET /meandPUT /me/login-preferences
Register an SSH key
orgID does not scope the key or require
membership of that organization, and registering through it grants no access to the organization. Use /me/ssh-keys.
Adds a public key to your account. Every cluster in every organization where you hold clusters.ssh accepts it.
Registering a key starts an access update on those clusters.
GET /clusters/{clusterId}/ssh-access reports confirmed keys and
their key-set generation. Compare that generation with this response to confirm the change reached a cluster; see
Wait for access.
Parameters
The OpenAPI document shows both headers as optional. They are required; a request without either returns
400.
Request body
Response
201 when the key is registered, 200 when the request replays an earlier one with the same Idempotency-Key.
Example
Errors
This endpoint reports its own errors witherror in place of message; see Errors.
List your SSH keys
Response
Example
Revoke an SSH key
Parameters
Response
200, with ssh_key (now revoked), ssh_key_set (your new key set, with the next generation), and
command_id. Repeating the request with the same Idempotency-Key returns the same result. Revoking a key that is
already revoked, with a new Idempotency-Key, also returns 200: the key and your current key set, with generation
unchanged, and no access update.
Errors
Example
Login shell
GET /me returns it as user.login_shell.
PUT /me/login-preferences takes {"shell": "/bin/zsh"}, with Idempotency-Key and Audit-Reason headers, and
returns 200 with shell and command_id.
shell must be an absolute path; the default is /bin/bash. An empty or relative path, a path with a control
character, or /usr/sbin/nologin returns 400; a malformed body can return 422. Sending your current shell again
starts no access update. Your username, uid, gid, and home directory stay the same.
New SSH sessions use the shell once the cluster has applied it. Open sessions are not closed and no nodes restart. If
the shell is missing or not executable on the login node, the session falls back to /bin/bash. See
Choose your login shell.