# Run hosted Firecracker microVMs for AI agents through an API

> Firecracker microVMs your agent creates, runs commands in, pauses with their memory, forks and deletes through an HTTP API or the CLI, with no hosts, kernels or images of your own to run, billed per second.

URL: https://prized.dev/docs/sandboxes-firecracker-api
Updated: 2026-10-25

Prized Sandboxes are hosted Firecracker microVMs made for agents: one call creates one, and the API runs commands in it, moves files, pauses it with its memory, forks it into live copies, and deletes it. Prized runs the hosts, kernels, images and networking; you pay per second for what runs.

| You get |  |
| --- | --- |
| Isolation | One microVM per sandbox, with its own kernel; commands run as `prized`, without sudo |
| Network | Outbound internet; nothing reaches a sandbox from the internet, and sandboxes have no direct network path to each other |
| Images | `prized-base-v1` (Ubuntu 24.04, Python 3, Node.js 22, git) and `prized-agent-v1` (adds Claude Code and Codex) |
| Shapes | 1 to 32 vCPU, 1 to 128 GB of memory, 10 to 128 GB of disk |
| Pause | Memory, processes and disk kept, storage billed only; a resume is usually back in under a second |
| Fork | Up to 256 live copies a request, memory and processes included, as many as fit beside the parent |
| Run time | 24 hours by default, up to 7 days, extendable; the clock stops while paused |

## 1. Get a key and the CLI [#1-get-a-key-and-the-cli]

[Open Sandboxes](https://prized.dev/onboarding/sandboxes) to sign up with $30 of free credit and no card, and choose **Create API key**. Install the CLI, then export the key in a new terminal:

```bash
curl -fsSL https://prized.dev/install.sh | sh
```

```bash
export PRIZED_API_KEY=dcp_…
```

## 2. Create, run, pause, fork, delete [#2-create-run-pause-fork-delete]

```bash
ID=$(prized sandbox create)
prized sandbox exec $ID -- 'uname -r && python3 --version'
prized sandbox pause $ID --wait
COPIES=($(prized sandbox fork $ID --count 3))
prized sandbox rm $ID "${COPIES[@]}"
```

`create` returns once the sandbox answers commands. `fork` of the paused sandbox starts 3 running copies of it and prints their ids; the parent stays paused ([Fork](https://prized.dev/docs/sandboxes#fork)).

## 3. Or call the HTTP API [#3-or-call-the-http-api]

Each step above is one request, with the same key as the bearer: `POST /api/v1/sandboxes` to create, `POST /process/execute` on the sandbox's `toolboxBase` to run a command, then `/pause`, `/resume`, `/fork` and `DELETE /api/v1/sandboxes/{id}`. Every route, field and error code is on [Sandbox API](https://prized.dev/docs/sandboxes-api), and [Use Sandboxes from Python or TypeScript](https://prized.dev/docs/sandboxes-python-typescript) has a helper for each language.

## What it costs [#what-it-costs]

A running sandbox bills per second, with no minimum ([Billing: Sandboxes](https://prized.dev/docs/billing#sandboxes)).

|  | 2 vCPU, 4 GB | 4 vCPU, 8 GB (the default) |
| --- | --- | --- |
| Running, per hour | $0.131 | $0.261 |
| One sandbox for 5 minutes | $0.011 | $0.022 |

Paused, a sandbox burns no compute, and a workspace's first 20 GB of paused storage are included. On the free credit, sandboxes run within the [free tier](https://prized.dev/docs/sandboxes#free-tier): 10 at once, 2 vCPU and 4 GB each, 60 minutes of running each. Not there yet: GPUs, Docker, your own images, and regions other than Oregon ([Not yet](https://prized.dev/docs/sandboxes#not-yet)); and there is no root.
