Skip to main content
PATCH
Rename a sandbox

Authorizations

Authorization
string
header
required

Organization API key (msb_…) - org-scoped programmatic access.

Path Parameters

sandbox_id
string<uuid>
required

Sandbox ID

Body

application/json

Request body for PATCH /v1/orgs/:slug/sandboxes/:id - rename a sandbox. Each field updates only when present; omit one to leave it unchanged. name is the per-org display label; slug is the globally-unique SSH address handle (changing it breaks existing ssh <old-slug>@msb.run).

name
string | null

New per-org display name. Omit to leave unchanged.

slug
string | null

New globally-unique slug (the SSH username token). Omit to leave unchanged.

Response

Updated sandbox

The API view of a [Sandbox]: an explicit allowlist of user-facing fields. Internal columns (registry selection, sync bookkeeping, resolved refs) never appear; the resolved spec surfaces only as the curated [SandboxSpecResponse].

created_at
string<date-time>
required
ephemeral
boolean
required
id
string<uuid>
required
name
string
required
org_id
string<uuid>
required
slug
string
required
status
enum<string>
required

Sandbox lifecycle status.

Available options:
created,
starting,
running,
stopping,
stopped,
failed
last_failure_message
string | null

Human-readable reason for the last failure.

spec
null | object

Curated projection of the resolved spec; absent until resolved.

started_at
string<date-time> | null

Latest run's start time; null if the sandbox has never run.

status_reason
null | enum<string>

Scheduler condition while status is starting.

Available options:
scheduling,
insufficient_capacity
stopped_at
string<date-time> | null

Latest run's stop time; null while open or never run.