Pricing

Free during the beta, with caps.

The beta costs nothing. Every call is metered from the start, so your dashboard shows what you use, and caps keep one organization from crowding out the rest on a single node.

[01/03] Caps

Beta caps per organization

GET /v1/limits returns these with your current usage. A request over a rate or concurrency cap gets 429 with Retry-After; one over a size cap gets 422. Each API key can also carry its own spend cap.

sandboxes

Sandboxes running at once
10
vCPUs per sandbox
2 vCPU
Memory per sandbox
2 GiB
sandboxes.disk_max
16
Sandbox lifetime
1 h

vision

Browser sessions at once
5
Browser session lifetime
30 min
Scrapes per minute
60
Scrapes in flight
5
Pages per crawl
500
Crawls at once
1

render

Renders at once
2

routines

Routine steps per day
50,000

actions

Action calls per minute
300

infer

Tokens per minute
Per model

platform

egress.bytes.daily
Per model

[02/03] Metered units

What is metered

Each operation records one unit, whatever served it. No unit prices have been set, so the price column says Not set.

UnitCountsProductProposed price
Pages scrapedvision.pageOne page fetched and converted, whichever tier served it (cache, fetch, browser).visionNot set
Browser session timevision.browser_msWall time of a browser session, from claim to close.visionNot set
Screenshotsrender.screenshotOne captured screenshot; extra variants of the same capture count once each.renderNot set
Video outputrender.video_sSeconds of output video, rounded up per video.renderNot set
Input tokensinfer.input_tokensPrompt tokens.inferNot set
Output tokensinfer.output_tokensGenerated tokens.inferNot set
Speechinfer.audio_charsCharacters of text synthesized to speech.inferNot set
Sandbox CPUsandboxes.vcpu_msCPU time used, sampled from the sandbox cgroup cpu.stat.sandboxesNot set
Sandbox memorysandboxes.gib_msAllocated memory times wall time while running.sandboxesNot set
Routine effect stepsroutines.effect_stepA routine step with effects that has no product meter of its own (core/http, core/wait, …).routinesNot set
Action callsactions.callOne action execution.actionsNot set
Egressegress.bytesBytes of customer-steered egress, recorded by the egress guard for every operation.platformNot set
  • Admission is by invite code, against the headroom we measure on the node.
  • Breaking API changes are announced at least 14 days ahead, with a dated B3OS-Version header.
  • Usage records are queryable per key, product, unit and request: GET /v1/usage and /v1/usage/records.

[03/03] Retention

How long data stays

Defaults for every organization in the beta. Some requests can set their own window; the API reference marks which.

Cache
Scrape results. Per request, max_age_ms sets how old a cached copy may be and store_in_cache: false skips it.
2 days
Artifacts
Screenshots, videos and other files a job produces.
7 days
Run history
Routine runs with their steps, inputs and outputs.
30 days
Request logs
The per-request records behind GET /v1/requests.
7 days