Dory is in development. The invite-only beta has not opened yet; prices and limits are planned and may change.

Terminal (PTY WebSocket)

Use the endpoint returned by the API, the required protocol and a current authorization. A connected socket is not an indefinite grant.

Upgrade and close behavior

Before a WebSocket is accepted, failures return the declared RFC 9457 HTTP problem (401, 403, 404, 409, 429 or 503) with CE-Request-Id and the RateLimit headers; a refusal before the request is forwarded also carries CE-Not-Forwarded and, for 429 and 503, Retry-After. After acceptance, close code 1000 means a normal exit or deletion by the session owner, 4008 idle, 4001 authorization ended (expiry or revocation; reconnect with fresh authority), 1008 a protocol violation and 4009 a human-in-control conflict. Malformed upgrade input is a 400 validation error.

Wire behavior

  • Client → server (JSON text): {"type":"input","data":"ls\r"}, {"type":"resize","cols":120,"rows":40}, {"type":"ping"}.
  • Server → client: binary frames = terminal output; JSON text = {"type":"exit","exit_code":0}, {"type":"pong"}.
  • Reconnect: the session survives a disconnect for 10 minutes. On reattach the server sends {"type":"replay","bytes":N}, then up to 64 KB of scrollback as binary, then {"type":"live"}.
  • Ping every 20 s; an idle socket closes after 30 minutes (code 4008).
  • PTY retention does not extend connection authorization; reattach after expiry requires fresh authorization.

Session authority

Session creation returns connection credentials; list responses contain metadata. Parent access-token/key deadlines and IP restrictions cap connection authority. A one-use connect token must be consumed within 60 seconds; authorization_expires_at, not that handshake deadline, bounds the open socket. The computer consumes the token once. Desktop session-secret exchanges are session-specific; CDP permits only its opaque session-secret query. None of those exchanges authorizes SSH.

Missing, deleted, expired or pruned sessions are 404. Expiry or revocation ends the socket, and recovery never revives old authority. A PTY may retain its process for reattachment, but reattachment after authorization expiry requires fresh authorization. See Access tokens.

Dory is in development; these pages describe the planned service and may change. Questions: support@computeengines.com.