Request a session
POST/api/session/sessions
Validates the request and records the session with desired state RUNNING; placement and start happen in the reconciler. Poll .../status for progress. Launch negotiation failures are typed problems (launch-config-required, egress-selection-required, rdp-client-required) carrying the options to choose from.
image_id may be omitted: the owner's default image is used (a user attribute over the group setting; 400 when neither is set).
An API key launches for an existing user_id or, with no user_id, for an anonymous user the server creates; both need the USERS_AUTH_SESSION scope. An API-key response carries the owner's login JWT (session_token) and browser connect_url. Anonymous launch accepts an optional Idempotency-Key header: when supplied, the same key replays the original user, session and token, while a different request under a used key is 409. Without the header, every request creates a new anonymous user. More anonymous users than auth.api_anonymous_creation_limit per hour is 429.
Request
Responses
- 202
- 400
- 401
- 403
- 404
- 409
- 422
- 429
Successful Response
Response Headers
Always no-store.
Always no-cache.
Bad request. Typed problems: persistent-profile-mode-unavailable
Invalid credentials
Response Headers
Authentication scheme the client should use.
Insufficient permissions
Resource not found
Conflict. Typed problems: launch-config-required, egress-selection-required, rdp-client-required, no-resources, image-incompatible
Validation Error
Too many requests