Get Usage
Return per-meter current counts + the active plan's gates. When the org has no subscription, returns an empty snapshot (``meters: []``) so the FE can render its plan-required state without a separate code path. Caps and prices come from ``plan_meter_gates``; counts come from the same helpers ``GateEnforcer`` uses, so what the user sees lines up with what the cap will block on.
Authorization
BearerAuth Botyard API key — see /docs/authentication.
In: header
Path Parameters
Response Body
application/json
curl -X GET "https://example.com/v1/orgs/string/usage"{
"currency": "string",
"meters": [
{
"meter_key": "bot_count",
"current": 0,
"included_units": 0,
"hard_cap": 0,
"unit_price_cents": 0
}
]
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"error_code": "string",
"errors": [
{
"pointer": "string",
"detail": "string",
"type": "string"
}
],
"trace_id": "string"
}Get Tool
Get a single tool by ID. 404 for a tool on an MCP server the caller cannot see — the same answer the listing gives, so the detail route is not a side door onto a withheld row.
Get Usage History
Return per-meter quantity time-series for the requested window. Count-meter quantities are pulled from the billing provider, filtered by ``external_customer_id = org_id`` (set on each customer at checkout) so two orgs that share an email can never see each other's usage. Resource-overage series are computed from the allocation ledger so the chart can show the included baseline alongside the overage. Empty ``series`` is normal for orgs without a subscription, for orgs whose customer was created before the ``external_id`` backfill ran, or in local dev where the metering client isn't configured.