Esc to close · ⌘K / Ctrl-K opens search anywhere
BharatRouter exposes your org's consumption two ways: lightweight usagecounters and a richer activity feed with per-request drill-down. There's also a public rankings endpoint showing the most-used models platform-wide. All org date math is in IST (Asia/Kolkata).
| Endpoint | Returns |
|---|---|
GET /me/usage | Requests and tokens per key, today and over the last 30 days, plus org totals. |
GET /me/usage/daily | A day × model series for the last 30 IST days — powers the dashboard chart. |
GET /me/activity returns spend and volume aggregates over a date range, with filters. Cost comes from what was actually debited (trial, BYOK and failed requests count as ₹0).
| Query | Meaning |
|---|---|
from, to | YYYY-MM-DD (IST). Defaults to the last 30 days; max span 366 days. |
model, key_id | Optional filters. |
The response carries a day × model days series, top_models andtop_keys, a per-provider cost split for each model (model_providers, showing realized cost across fallbacks), org totals (requests, tokens, cost, errors, BYOK requests), and the distinct model/key lists for filter dropdowns.
GET /me/activity/events lists individual requests, newest first, with keyset pagination. Each row has the model, provider that served it, status, latency, tokens, cost, and the key name. Page with before=<id> and limit (≤200); the response returns next_before for the next page.
GET /me/activity/events?from=2026-06-01&to=2026-06-13&limit=50
→ { "events": [ { "at": "...", "model": "gemma-4-e4b-it", "provider": "krutrim",
"status": 200, "latency_ms": 740, "tokens": 312,
"cost_inr": 0.0061, "key_name": "prod" }, ... ],
"next_before": 80421 }GET /me/budgets/burndown returns cumulative spend against your org's monthly ₹ cap for the IST month, alongside an ideal linear pace and a run-rate projection — the data behind the Cost page's burn-down chart and its projected-month-end KPI. Owners/admins, or members with org-cost visibility (usage:org:view), may read it; add?month=YYYY-MM to look at a past month (default: current IST month).
GET /me/budgets/burndown
→ { "month": "2026-08", "cap_inr": 50000, "days_in_month": 31, "today_index": 8,
"series": [
{ "day": "2026-08-01", "spend_inr": 1420.5, "cum_inr": 1420.5, "ideal_inr": 1612.9 },
{ "day": "2026-08-02", "spend_inr": 1980.0, "cum_inr": 3400.5, "ideal_inr": 3225.8 },
… ],
"consumed_inr": 12880.4, "remaining_inr": 37119.6, "over_inr": 0,
"run_rate_inr_per_day": 1610.05, "projected_month_end_inr": 49911.6,
"projected_over_inr": 0, "pace_status": "on",
"ideal_slope_inr_per_day": 1612.9, "on_track": true }ideal_inr is the linear-pace target at each day (cap × day ÷ days_in_month);pace_status compares consumed spend to the ideal-so-far with a small on-pace band (under/on/over), and on_track projects today's run-rate to month-end and checks it lands under the cap. With no org cap set, the cap-relative fields (cap_inr, remaining_inr, ideal_inr) arenull. See budgets for how caps are set and enforced.
The console's Cost page is a dedicated spend overview: spend-over-time, cost drivers broken down by model, provider, agent, workspace and key, thebudget burn-down, an India/global residency split, and a natural-language FinOps box (ask “which agent spent the most last week?” and get an answer over the same traces). It's a UI surface built on the usage, activity and burn-down endpoints above — nothing new to call.
GET /v1/rankings returns the most-used catalog models by token volume over 7-day and 30-day windows — anonymous and platform-wide, never per-customer. BYOK-only model ids are excluded; the result is cached for a few minutes.
curl -s https://api.bharatrouter.com/v1/rankings | jq '.windows["7d"][0]'
→ { "model": "gemma-4-e4b-it", "requests": 18342, "tokens": 9120553 }