Team Extras
Compute-on-demand team aggregations not stored in TeamMapStats — economy profile, OT, LAN/online, map streaks, race-to-N, headshot %, map pool
GET
Heavy on-the-fly aggregations for a CS2 team
What it returns
Seven heuristic aggregations that walk recentMatch / Map / Round rows on each call. Pulled into a separate endpoint so the cheap Get Team call doesn’t pay this cost — only the model team uses these.
race_to_rates
Win % when this team races to 6, 9, or 12 round wins on a map. Sample taken from the last 30 finished maps.
headshot_pct
Weighted-average HS% across the team’s roster (rounds-played as weight). Pulls from PlayerMapStats.map_name = "all" for the requested window.
economy_profile
Round-level economy splits from ScoreBot data, last 40 finished matches.
overtime_stats
OT map win rate from Map.overtime_periods > 0.
lan_online_split
Match win rate split by venue (match_scope = lan or online).
map_streaks
Current W/L streak per map, sorted by streak length. Each entry: { map_name, streak_type: "W" | "L", streak_length }. Useful for “team is on a 5-map win streak on Mirage” widgets.
map_pool
Derived from veto picks across the team’s recent matches. Each entry: { map_name, picks }, sorted by pick count. Distinct from the global Active Map Pool — this is what this team actually picks.
Required scope
- Minimum:
cs2:teams:read
Query
Example
Use cases
- Pre-match modelling — feed
economy_profile+race_to_rates+headshot_pctstraight into your features. - Match-preview “form” widgets —
map_streaks+lan_online_split. - Map-specific micro-markets — pricing decisions informed by
map_poolandmap_streaks.
Authorizations
Tenant API key issued during onboarding
Path Parameters
Query Parameters
Window for headshot_pct: 3m, 6m, 1y, all.
Response
Successful Response
The response is of type Response Get Team Extras Cs2 V1 Teams Hltv Id Extras Get · object.
Last modified on May 10, 2026
Heavy on-the-fly aggregations for a CS2 team