Save a snapshot
Freeze a sandbox's disk under a name, to start new sandboxes from it with from on POST /v1/sandboxes, or to share it. Paid plans only. The first day ($0.07) is charged now and returned if the save fails; later days are charged per started UTC day while you keep it. The save runs in the background: poll GET /v1/sandbox-snapshots/{snapshotId} until status is ready or failed. Not available with test-mode keys.
Authorization
AuthorizationheaderrequiredBearer YOUR_API_KEY. Create a key in the dashboard.
Body
application/json
sandboxIdstringrequiredThe sandbox to save. Running: its disk as it is now. Stopped: as it was when it stopped. An ephemeral sandbox cannot be saved (
409 sandbox_ephemeral).namestringrequired1 to 64 letters, digits, spaces, dots, dashes or underscores.
Limitsmax length 64
Responses
202Accepted. The snapshot is saving.
snapshotobjectrequiredA sandbox's disk frozen under a name. $0.07 per started UTC day while you keep it, charged from your balance; the first day at save, refunded if the save fails. At most 20 per team.
11 properties
idstringrequirednamestringrequiredstatusstringrequiredsaving: the disk is being captured. It cannot be started from or deleted yet.ready: start sandboxes from it withfrom.failed: the save did not finish; its first day was refunded. SeefailureReason.
One ofsavingreadyfailedsizestringrequiredMachine size, and its price per hour of machine time: -
small: 2 vCPU, 4 GB RAM. $0.0225/h. -default: 4 vCPU, 8 GB RAM. $0.045/h. -large: 8 vCPU, 16 GB RAM. $0.09/h.One ofsmalldefaultlargesizeBytesintegerBytes on disk, once known.
sourceSandboxIdstringrequiredThe sandbox whose disk this is.
shareCodestringrequiredThe code another team passes as
fromto start from this snapshot, while it is shared. Null when it is not. Treat it as a secret: whoever holds it can copy this disk.costTotalnumberrequiredUSD charged for it so far.
failureReasonstringcreatedAtstring<date-time>requiredupdatedAtstring<date-time>required
400Invalid name, or a test-mode key.
codestringrequiredmessagestringrequireddetailsobject
401Unauthorized.
codestringrequiredmessagestringrequireddetailsobject
402`paid_plan_required`, `insufficient_balance` or `spend_cap_reached`.
codestringrequiredmessagestringrequireddetailsobject
403`plan_limit_reached`: the team keeps 20 saved snapshots already. Delete one first.
codestringrequiredmessagestringrequireddetailsobject
404Sandbox not found, or it belongs to another project.
codestringrequiredmessagestringrequireddetailsobject
409`sandbox_not_ready`: the sandbox is not running or stopped. `sandbox_ephemeral`: its disk is never saved.
codestringrequiredmessagestringrequireddetailsobject