> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bead.run/llms.txt
> Use this file to discover all available pages before exploring further.

# Sandbox execution timeout

> Set a sandbox execution timeout and choose machine kinds, idle pause, or funded deadlines for your workload.

Choose a machine kind when you create it to control sandbox execution timeout behavior. The dashboard calls persistent machines **Keep it** and temporary machines **Delete it after**.

| Kind | While active | At its boundary |
| - | - | - |
| `temporary` | Runs within a timeout | Deletes when the timeout ends |
| `persistent` | Runs until idle pause or explicit pause | Keeps memory and files while paused |

## Temporary machines

```bash theme={null}
bead create --template base --size small --kind temporary --timeout 300
```

Temporary timeouts have a 24-hour maximum. To change an existing machine's timeout, save a request such as `{"timeout":900}` as `timeout.json`:

```bash theme={null}
bead api POST /sandboxes/ID/timeout --input timeout.json
```

The timeout replaces the deadline with now plus the requested seconds and can shorten it. A timeout request still needs available credit and admission. Inspect the updated machine deadline before scheduling work beyond it.

## Persistent machines

```bash theme={null}
bead create --template base --size small --kind persistent --idle-timeout 900
```

Idle pause defaults to 900 seconds. Choose 300–86400 seconds, or `--idle-timeout never` to keep running and billed. Persistent machines have no lifetime expiry. Funded access through exec, files, desktop, or application HTTP can wake them.

Paused machines pay storage only. If renewal cannot be funded, persistent machines pause for credit grace. Inspect `grace_deadline` and warnings and add credit before that deadline. Machines are deleted after their grace deadline.

## Template defaults

Base, agents, and CI default to temporary. OpenClaw, Hermes, computer, devbox, and devbox-computer default to persistent. An explicit kind overrides the template default; CI and swarms are always temporary. Custom builds default to temporary unless configured otherwise.

Read [pause and resume](https://docs.bead.run/snapshots/pause-resume.md), [prepaid credit](https://docs.bead.run/platform/prepaid-credit.md), and [run a job](https://docs.bead.run/run-work/run.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.