POST/v2/microvms/{microvm_id}/checkpoints

Create a checkpoint of a MicroVM

To create a checkpoint of a running or paused MicroVM, send a POST request to /v2/microvms/{microvm_id}/checkpoints.

The capture runs in the background and does not change the MicroVM's state. Poll GET /v2/microvms/checkpoints/{checkpoint_id} until status is CHECKPOINT_AVAILABLE.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

1 parameter · 1 body field
microvm_idstringrequired
The unique ID of the MicroVM.
namestringoptional
A name for the checkpoint. If you omit it, a name such as `checkpoint-20260929-143559` is generated.

7 status codes
201The response will be a JSON object with a key called `checkpoint`. The value will be an object containing the standard attributes associated with a checkpoint.
checkpointobjectoptional
A checkpoint of a MicroVM's memory and disk. New MicroVMs created from a checkpoint start from that state.
400The request was malformed, failed validation, or is not allowed in the resource's current state.

3 documented failures

  • INVALID_SIZE

    no supported size matches the requested resources: 3 vCPU with 2048 MiB of memory (supported: 1vCPU/2048MiB, 2vCPU/4096MiB, 8vCPU/16384MiB, 16vCPU/32768MiB)

  • INVALID_AUTO_PAUSE

    auto_pause.enabled cannot be false; omit it to keep the 5 minute default, or set idle_timeout up to the account maximum

  • FAILED_PRECONDITION

    checkpoint 01a11cd5-25dd-790f-a77c-3677f24bca85 is still being captured; retry delete once the capture completes

codestringrequired
A service-defined error code.
messagestringrequired
A human-readable description of the error.
401Authentication failed due to invalid credentials.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
404The MicroVM or checkpoint does not exist, or it belongs to another team.

One documented failure

  • NOT_FOUND

    MicroVM not found

codestringrequired
A service-defined error code.
messagestringrequired
A human-readable description of the error.
429The API rate limit has been exceeded.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
500There was a server error.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
defaultThere was an unexpected error.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.

Error handling

A 400 is returned: The request was malformed, failed validation, or is not allowed in the resource's current state. A 401 is returned: Authentication failed due to invalid credentials. A 404 is returned: The MicroVM or checkpoint does not exist, or it belongs to another team. A 429 is returned: The API rate limit has been exceeded. A 500 is returned: There was a server error. Any other status is an error: There was an unexpected error.