Skip to content

Usage and billing data

Read what your organisation consumed: browser minutes, task executions, gateway tokens and stored artifacts per day, plus open sessions and the included quota.

Last updated:

What the meter records

Four dimensions are metered, by one writer, from the moment a browser is ready rather than from admission: browser_minutes (written when a session ends), task_executions (one per finished task or workflow run), gateway_tokens (input plus output tokens through the inference gateway) and stored_artifacts (a daily sample of profiles, credentials and reserved pool browsers). GET /v1/usage reads them back as totals over a window and as UTC day buckets, so you can see consumption before the invoice does.

GET /v1/usage

Metered consumption over a window. Without parameters: the current UTC calendar month up to now.

Query parameters

Name Type Description
from string ISO instant or `YYYY-MM-DD`. Defaults to the first of the current UTC month.
to string Exclusive end. Defaults to now. The window may span at most 92 days; a longer one is `invalid_request`.

Response fields

Responses are loose: a newer server may add a dimension, so tolerate fields you do not know.

Name Type Description
totals object The four dimensions summed over the window.
days array One entry per UTC day in the window, zero-filled, each carrying the four dimensions and a `date`. A session’s minutes land on the day it *ended*.
inFlight object `openSessions` and `estimatedMinutes` for sessions still running: their minutes are not in `totals` until they end, and the estimate counts from creation, so it slightly overstates.
included object `browserHours` and `executions` your plan includes, or `null` where the plan sets no quota. From the same entitlements the API enforces.

Read this month

BASE="https://browserberg.com"
AUTH="Authorization: Bearer $BROWSERBERG_API_KEY"

# The current UTC month by default; from/to bound a window of at most 92 days.
curl -s "$BASE/v1/usage" -H "$AUTH" \
  | python3 -c 'import json,sys; u=json.load(sys.stdin); print("window:", u["from"], "->", u["to"]); print("totals:", json.dumps(u["totals"])); print("days:", len(u["days"]), "open sessions:", u["inFlight"]["openSessions"]); print("included:", json.dumps(u["included"]))'

Note · Where it shows in the dashboard

The Verbrauch screen draws the same numbers: a month picker, the four totals, a daily chart, open sessions and how much of the included quota is used. A member account can read it; nothing on it changes anything.