Environment variables for a whole sandbox
Pass env at create, or change it later with an update, and every command, background process, terminal, SSH session and image start command gets those variables. Values are stored encrypted and never shown back. See the API.
Delete a sandbox for good
DELETE /v1/sandboxes/{id}, sbx.delete() and runtime sandbox rm stop it, remove its disk and paused memory, revoke its previews and ports, and free its name. Usage and audit history stay.
Switch a sandbox to a new image and keep your work
Switching keeps the sandbox's id, name, /workspace, volumes, environment, previews and ports; processes restart. See images.
Folders over plain HTTP
Upload or download a whole folder of any size as a tar stream. The SDKs verify a downloaded archive before merging its folder contents; ordinary file downloads publish only complete files.
File changes to your webhooks
A watch started with webhook: true sends sandbox.files.changed events, signed and retried like every webhook, without keeping the sandbox awake. See observability.
Choose which sites may embed a preview
embedOrigins lists them, and a private link's token is refused in any other site's frame.
Join your Tailscale network
A paid sandbox can join your tailnet with an auth key stored as a secret. See networking.
Trial sandboxes keep going while they work
A trial sandbox that is still busy when its lease ends gets its timeoutSeconds again, until the trial hours run out. See included usage.