Skip to content

Save a snapshot

View .md
POST

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

  • Authorizationheaderrequired

    Bearer YOUR_API_KEY. Create a key in the dashboard.

Body

application/json

  • sandboxIdstringrequired

    The 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).

  • namestringrequired

    1 to 64 letters, digits, spaces, dots, dashes or underscores.

    Limitsmax length 64

Responses

202Accepted. The snapshot is saving.
  • snapshotobjectrequired

    A 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
    • idstringrequired
    • namestringrequired
    • statusstringrequired
      • saving: the disk is being captured. It cannot be started from or deleted yet.
      • ready: start sandboxes from it with from.
      • failed: the save did not finish; its first day was refunded. See failureReason.
      One ofsavingreadyfailed
    • sizestringrequired

      Machine 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 ofsmalldefaultlarge
    • sizeBytesintegernullable

      Bytes on disk, once known.

    • sourceSandboxIdstringrequired

      The sandbox whose disk this is.

    • shareCodestringrequirednullable

      The code another team passes as from to 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.

    • costTotalnumberrequired

      USD charged for it so far.

    • failureReasonstringnullable
    • createdAtstring<date-time>required
    • updatedAtstring<date-time>required
400Invalid name, or a test-mode key.
  • codestringrequired
  • messagestringrequired
  • detailsobject
401Unauthorized.
  • codestringrequired
  • messagestringrequired
  • detailsobject
402`paid_plan_required`, `insufficient_balance` or `spend_cap_reached`.
  • codestringrequired
  • messagestringrequired
  • detailsobject
403`plan_limit_reached`: the team keeps 20 saved snapshots already. Delete one first.
  • codestringrequired
  • messagestringrequired
  • detailsobject
404Sandbox not found, or it belongs to another project.
  • codestringrequired
  • messagestringrequired
  • detailsobject
409`sandbox_not_ready`: the sandbox is not running or stopped. `sandbox_ephemeral`: its disk is never saved.
  • codestringrequired
  • messagestringrequired
  • detailsobject