First complete the HTTP quickstart.
It supplies a provisioned URL, the right authentication, retained create identity, bounded
readiness, command-result checks, and cleanup. The examples here need a currently running
sandbox with authorized access; do not reuse an already stopped smoke-test ID.
Write and read a file
Under the API-prefixed SANDBOX_URL, use the current canonical file route:
Content is base64 for the bytes sandbox-ok. Decode the returned content and compare actual
bytes. A successful file response is separate from whether an agent produced a correct
answer. /files/list lists directory entries; GET /files reads the requested file.
Execute and retain evidence
Use argv, save the original supported request key and returned execution ID, inspect the
confirmed exit/outcome, and verify output. A lost stream or execution_result_unconfirmed
requires original receipt recovery, not a new
command. For long workers use supervised processes and prepared tasks.
Lifetime and sharing
Startup wait, command timeout and resource lifetime use different units/budgets. Check
returned expiry/headroom before extending; plan and durable-mode limits apply. Pause/recovery
preserves supported disk state, not a Python kernel or running process memory.
For files beyond sandbox termination, export artifacts and verify size/hash/expiry. For a
live port, create an authorized private tunnel with retained identity and supported store
configuration. See artifacts and tunnels.
Finish with the teardown check
for the actual runtime you created. Accepted stop, API retirement, physical pod cleanup,
and billing reconciliation are separate observations. Last modified on October 20, 2026