---
title: "Api Industry Kpi Roster"
method: GET
path: "/api/industry/kpi-roster"
---

# Api Industry Kpi Roster

`GET /api/industry/kpi-roster`

## Request

- Base URL: `https://www.oxfordledge.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.oxfordledge.com/api/industry/kpi-roster`
- Auth: none declared

K1 (OWNER industry-page design handoff, 2026-10-05): the Industry view's whole tab
roster in ONE request -- replaces the 23 per-tab reveal probes. Each KPI entry is computed
from the same `build_peer_table` its /api/industry/<x>-kpis route serves (default
confidence/scope gates untouched), cached server-side 15 min (60 s when a table could not
be read). Ungated, exactly like those 23 routes (public SEC data, OWNER decision 2). Never
raises into the SPA: a failure answers [] and the view falls back to its per-tab probe.
Shape + rules: ssr_operating_kpis_roster.py.

## Response `200`

Successful Response

- KpiRosterEntry[]
  - `tab` string, required
  - `available` boolean, required
  - `group` string, required
  - `peer_count` integer, required
  - `headline_metric` string, nullable, required
  - `headline_label` string, nullable, required
  - `leader_ticker` string, nullable, required
  - `leader_display` string, nullable, required
  - `leader_basis_count` integer, nullable, required
  - `period` string, nullable, required
  - `tickers` string[], required

---

[API](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api.md) · [All operations](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/revisions/e832a1260f0b?raw)
