Limits
Sizes, counts, and how long things live.
Sandboxes
| TTL | Per sandbox, inside the range the control plane accepts |
| Ready in | Seconds, unless a baseline holds many files |
| Concurrent sandboxes | A quota per organisation, and what the deployment itself can carry |
A sandbox is deleted when its TTL expires, whether or not anything is using it.
veris up --ttl <minutes> sets the lifetime of the sandbox you start,
ttl_minutes in the environment’s entry in .veris/twin.yaml sets it for every
sandbox of that environment, and the control plane’s own default applies when
neither names one. veris run --fresh --ttl <minutes> bounds the sandbox that run
deploys, which matters only if teardown never runs, since --fresh deletes it
when the command exits.
A lifetime outside the range is refused 400, and the refusal names the bounds it
accepts. A sandbox over the quota, or over what the deployment can carry, is refused
429 with the count, the limit and a Retry-After. Both the range and the quota are
the control plane’s, and the quota can be raised for your organisation — ask us.
Environments
| Services per environment | 1 to 32 |
| Environments per organisation | No fixed cap |
| Snapshots per environment | No fixed cap |
A snapshot cannot be deleted while a sandbox that booted from it is still alive.
Files
| Per file | 1 GB |
| Per environment | 20 GB |
| Files per environment | 25,000 |
An import that would exceed a limit is refused with the number, and nothing is partially written.
Reading a world
Rows per /veris/data page | Up to 1000 |
Entries per /veris/requests page | Up to 1000 |
/veris/data pages with limit and offset, and reports a total.
/veris/requests pages with limit and since_id, the watermark that keeps
only entries whose id is above it, so a poller reads what arrived since its
last call; it is newest first, or oldest first with ?order=asc.
Sandbox metadata
Up to 16 key and value pairs on a sandbox, keys up to 63 characters and values up to 253. Stored and echoed back, never interpreted. Useful for tagging a fleet with run coordinates.
API keys
A key is shown exactly once when it is created, and only its hash is stored. A key cannot create another key. Creating one needs a signed-in person.
Revoking takes up to 30 seconds to apply everywhere.
Rate limits
The control plane counts concurrent sandboxes rather than calls: nothing meters
how often you may call it today, and what it answers 429 to is admission — a
sandbox over the quota or over what the deployment can carry, as under Sandboxes
above, and too many pairings left outstanding by veris login. Tell us before you
generate sustained load, or before you run a large fleet of concurrent sandboxes.