Computers

Move a computer to a workspace

Move to another workspace on this account, or send workspace_id: null to leave it unassigned. Requires a member or owner using an account-wide credential. Every workspace-confined API key or OAuth credential is refused with 403, including its own workspace, no-op moves and unassignment.

The body must contain exactly workspace_id: a wsp- ID followed by 12 lowercase hexadecimal characters, or null. Missing, empty, malformed or extra fields are refused; the body is capped at 1024 bytes. An unknown workspace or one in another account answers 404.

The computer must be stopped with no saved session, no snapshots on any host, no secret bindings and no proxy credentials. Nothing is automatically stopped, discarded, unbound or deleted. Snapshot history and unresolved migration copies must be verifiable across the fleet; offline history without durable proof needs operator recovery. A verified no-op returns the current public computer.

Once moved, old workspace credentials lose access and destination credentials gain access. Events and webhooks follow the new workspace; desktop and share credentials are replaced. The response contains the public Computer only, without desktop credentials or internal move state.

If the outcome is uncertain, repeating the same PUT reconciles the pending change before any further move. The refusal explains whether to retry or resolve snapshot, migration or binding state first. This route has no Idempotency-Key contract and accepts no internal request ID, proof, lease or repair fields.

Requires the member role or higher.

put/computers/{id}/workspace

Request

  • Base URL: https://app.mandala.computer/api/v1
  • URL: https://app.mandala.computer/api/v1/computers/{id}/workspace
  • Auth: HTTP bearer

Path parameters

idstring required

The computer id.

Request body

workspace_idstring nullable required

Destination workspace ID, or null for unassigned.

Response

The computer in its confirmed workspace.

Changes

No recorded changes to this operation across all 1 revision of this API.