Skip to navigation

Read a computer's live state

Beta

Read an existing computer’s live runtime state and whether it is ready, without starting, waking, or repairing it. Works for every computer, including those created before durable initialization (get_initialization reports creation-time progress only). Requires membership in the computer’s workspace and VIEW access. This read does not count as activity, so polling it does not keep the computer awake.

Waiting for a computer. Call start_computer, then poll this endpoint every few seconds until ready is true; stop polling when not_ready_reason is launcher_outdated. start_computer waits for the computer, but a proxy in front of the API can end a long request (about 60 seconds on Athena’s ingress) while the start continues on the server. The server waits up to 210 seconds by default for the computer’s runtime to boot before it reports a failure, and Athena alerts its operators when the 90th percentile of starts goes above 3 minutes.

Auto-stop. A computer stops after its auto_stop_minutes of inactivity (60 minutes unless the computer or the deployment sets another value; 0 means it never stops on its own). Activity is work inside the computer — commands, terminal and SSH sessions, file operations — and requests to its deployed URLs. Status reads are not activity.

The asset record’s status. The computer’s status in GET /assets/{asset_id} records the last lifecycle change Athena recorded (create, Start, Stop); it is not a live read. It can read running while the computer is stopped, for example after an idle auto-stop, or stopped after something woke it. Use this endpoint for the live state.

Returns 403 when the caller is not a member of the computer’s workspace, 409 while the computer is still being created or when its creation failed, 404 when the asset does not exist or its runtime is gone for good (stop polling), and 502 when the runtime could not be read (retry).

Authentication

X-API-KEYstring
API Key authentication via header

Path parameters

asset_idstringRequired

Headers

X-Athena-Session-CredentialstringOptional

Response

Successful Response
asset_idstring
The computer asset id.
readyboolean

Whether the computer serves work now: state is started and the guest answers ready (its workspace attached and its environment applied). Only then do commands, SSH sessions and deployed URLs reach the computer without first waiting for a start. started alone can come a few seconds before ready.

statestring

The runtime’s current state: started (running; check ready), stopped (suspended — by idle auto-stop or by Stop; files are kept), restoring (a start is in progress), error (the runtime failed; start or restart it), or unknown (the state could not be read this time; retry). started, stopped and error hold until something changes them; restoring and unknown are transient.

explicit_stopenum or nullOptional

Set when someone stopped the computer with Stop. While it is stopping, stopped or uncertain, implicit wakes are refused: minting SSH access answers 409 and an SSH connection does not start it. Call start_computer to clear it. null or cleared means no explicit stop is in force.

Allowed values:
not_ready_reasonenum or nullOptional

Why ready is false; null when it is true. not_started: the computer is not running — call start_computer. starting: it is running and its guest is still coming up — keep polling. unobservable: readiness could not be read this time — keep polling. launcher_outdated: the computer runs an outdated runtime component that polling will not change — stop it and start it again to update it.

Allowed values:
providerstring or nullOptional

The computer’s runtime provider (e.g. talos_v2).

Errors

401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
422
Unprocessable Entity Error
502
Bad Gateway Error