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

Desktop (RFB over 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

  • Standard RFB in binary frames (noVNC works). Auth: Authorization header or a single-use connect token.
  • View sessions use an allowlist. Accepted client messages: SetPixelFormat (0), SetEncodings (2, with input-related pseudo-encodings removed from what the server then uses), FramebufferUpdateRequest (3), EnableContinuousUpdates (150) and ClientFence (248). Any other message type closes the socket.
  • Control sessions also accept KeyEvent (4), PointerEvent (5), ClientCutText (6), and SetDesktopSize (251). xvp (250) and gii (253) are never accepted.
  • Viewer bandwidth counts as account egress.

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.