Skip to Content
Sandcovery

Sandboxes

Create, run, and destroy sandboxes with one spec on every provider.

One spec for every provider

A create request describes the sandbox once, and Sandcovery translates it for the provider it picks.

FieldMeaning
sizeA standard size such as 2x4 (2 vCPU, 4 GiB), with an optional routing suffix
vcpu, memory_gib, disk_gibAn exact shape instead of a standard size
imageThe image to start from
ttl_secondsHow long the sandbox may live before Sandcovery destroys it
idle_timeout_secondsHow long the sandbox may sit idle
regionWhere the sandbox runs
egressThe network egress policy
envEnvironment variables
providerProvider preferences

When a provider cannot enforce an option you set, the create fails with unsupported instead of ignoring it. Sandcovery then tries the next candidate if fallbacks are on.

Operations

OperationWhat it does
CreateStarts a sandbox on the routed provider
ExecRuns a command and returns its output at once or as a stream of server-sent events
FilesReads, writes, lists, uploads, and downloads files
Preview URLsReturns a URL for a port inside the sandbox
Pause and resumeStops and restarts a sandbox where the provider supports it
SnapshotSaves the sandbox state where the provider supports it
DestroyEnds the sandbox
ListLists your sandboxes and their status

Routing happens only at create. A sandbox stays on its provider for its whole life, and every later call goes to that provider.

Guaranteed teardown

Sandcovery records each sandbox before it asks the provider to create it, and arms a timer for its TTL. When the TTL ends, Sandcovery destroys the sandbox, even if your client crashed or lost the create response.

Idempotent creates

Send an Idempotency-Key header on each create. A retry with the same key returns the first result instead of starting a second sandbox.

Estimated cost

Each sandbox shows an estimated cost from the provider's list price for its size and running time. The provider's own bill is the record of what you owe them.

On this page