Detach an org SSH key from a VM
Removes the key from the VM's allowed set, so the gateway stops accepting it for SSH into the guest, and answers 204, also when the key was not attached. The last attached key cannot be detached: the guest would have no way in over SSH, so that returns 400.
Required permission
Requires the compute.operate permission. See Permissions for the roles and API key permissions that include it.
Command line
The orl CLI wraps this endpoint:
orl vms ssh-key detach <id> <key-id>apiKeyAuthorizationBearer <token>OpenRelay API key. Send it as Authorization: Bearer or_… (legacy vl_… keys still work).
id*stringkeyId*stringDetached
curl -X DELETE 'https://api.openrelay.inc/v1/vms/string/ssh-keys/string'Attach an org SSH key to a VM POST
Adds one of the org's SSH keys to the VM's allowed set, so the gateway accepts that key for SSH into the guest. Attaching a key already attached answers 204. The key must be a live key of the VM's organization, and a terminated VM answers 400.
Get a VM's console log tail GET
Returns the tail of a VM's serial console, capped to a bounded size; a VM with no logs yet answers 200 with found false and a message, not an error. A transient state (no allocation yet, logs temporarily unavailable) answers 200 with found false, so a polling UI renders a state instead of an error. The cap is the one pod logs use, so a long-running console never exceeds the response size orl reads. Also works for pods: `orl vms logs` and `orl pods logs` are the same operation pair with different id params, and `orl vms <verb> <pod-id>` reaches every other pod lifecycle command.