Skip to main content
Project sessions manage long-lived browser containers, their cookies, and spawned resources.

List & create

GET /:project/api/sessions

  • Querylimit & offset.
  • Response – each entry contains { id, name, description, image, args, screen, status } plus metadata obtained from CloudSessionManager.

PUT /:project/api/sessions

  • Body
  • Behavior – validates cookies with assertCookie, normalizes proxy settings, and persists the session. Returns the new session ID.

Inspect, update, delete

GET /.../sessions/{sessionId}

Requires read permission for the session. Returns core metadata plus:
  • cookies when you also have cookies.read.
  • resources: enumerates active resources, each with URLs and status when you have permission to read the underlying session resource.

PATCH /.../sessions/{sessionId}

Accepts any combination of cookies, screen, name, description, args, image, or proxy. Fields are validated before calling CloudSessionManager.update.

DELETE /.../sessions/{sessionId}

Ensures write permission then removes the session entirely.

Starting sessions & working with resources

Logs originate from the coordinator and include structured data such as { context, severity, message, area, object }. Permissions are enforced per resource ID, so sharing a session with another team only grants them access to the exact resources they are authorized to read or execute.