ReferenceAPI

Restore a checkpoint

Restore a checkpoint as a new computer with its captured image, env, ports, size, memory and /data.

POST https://api.nevia.cloud/v1/computers/{cmp}/checkpoints/{chk}/restore
curl -X POST "https://api.nevia.cloud/v1/computers/01d4cnjk3xg90y576w8y6t4gdwm/checkpoints/01d4cnjkwhftngfp8vkmp723mhv/restore" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "api-rollback"
  }'
{
  "computer": {
    "id": "01d4cnjk3xg90y576w8y6t4gdwm",
    "workspace": "01d4cnjjq40hnnh0nwmkg35nv2h",
    "name": "api-staging",
    "state": "ready",
    "pending": null,
    "image": "docker.io/library/python:3.13-slim",
    "image_digest": "sha256:9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
    "ports": [
      {
        "published": 8080,
        "target": 8080,
        "protocol": "http1",
        "url": "https://01d4cnjk3xg90y576w8y6t4gdwm.machines.example:8080"
      }
    ],
    "url": "https://01d4cnjk3xg90y576w8y6t4gdwm.machines.example",
    "env_keys": [
      "LOG_LEVEL",
      "OPENAI_KEY"
    ],
    "env_vars": [
      {
        "name": "LOG_LEVEL",
        "source": "literal",
        "missing": false
      },
      {
        "name": "OPENAI_KEY",
        "source": "secret",
        "missing": false
      }
    ],
    "generation": 1,
    "protected": false,
    "parent": null,
    "from_checkpoint": null,
    "error": null,
    "created_at": "2026-09-10T12:34:56Z",
    "last_started_at": "2026-09-10T12:35:12Z",
    "last_active_at": "2026-09-10T12:40:03Z",
    "deleted_at": null
  },
  "operations": [
    "01d4cnjm89yk0r3xtv80dy0x7by"
  ]
}

Authorization

bearerAuth
Authorization Bearer <token>

Send the token in the Authorization: Bearer <token> header. See Authenticate.

In: header

Path Parameters

cmp* string

Computer id: 27 lowercase letters and digits.

Match ^[A-Za-z0-9_-]{1,64}$
chk* string

Checkpoint id: 27 lowercase letters and digits.

Match ^[A-Za-z0-9_-]{1,64}$

Header Parameters

Idempotency-Key? string

Optional retry key, kept 24 hours

Length 1 <= length <= 255

Request Body

application/json

Behavior

It works like POST /v1/computers with from_checkpoint, addressed through the checkpoint.

The guest resumes from memory, so processes running at capture keep their env. The stored env is the checkpoint's, resolved by name at each exec of the new computer. A secret or variable deleted since capture fails those execs without blocking the restore.

The checkpoint.restore operation finishes before a 200 response. For a 202 response, poll the operation until it finishes.

Response

application/json

The new computer, ready or failed, when the machine came up within the short wait.