hltv.org APIhltv.org ↗
Access HLTV.org Counter-Strike data via API: match results, player/team stats, rankings, upcoming schedules, fantasy leagues, and CCT tournaments.
curl -X GET 'https://api.parse.bot/scraper/b3500f47-4f4d-4f28-b85d-7e73293b70d1/get_results?limit=5' \ -H 'X-API-Key: $PARSE_API_KEY'
Fetch recent match results from HLTV. Returns matches in reverse chronological order up to the specified limit.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return. |
{
"type": "object",
"fields": {
"results": "array of match result objects with match_id, date, team1, team2, score, event, url"
},
"sample": {
"data": {
"results": [
{
"url": "https://www.hltv.org/matches/2393895/fake-do-biru-vs-vasco-cct-2026-south-america-series-1",
"date": "Results for May 7th 2026",
"event": "CCT 2026 South America Series 1",
"score": "2 - 0",
"team1": "Fake do Biru",
"team2": "Vasco",
"match_id": "2393895"
}
]
},
"status": "success"
}
}About the hltv.org API
This API exposes 9 endpoints covering HLTV.org Counter-Strike esports data, from recent match results to per-player performance metrics. The get_match_details endpoint returns map-level scores, per-player KD, ADR, and rating for any match ID, while get_player_stats and get_team_stats accept a configurable day-lookback window to scope the statistical period. Fantasy league data and CCT tournament listings are also available.
Match Data
get_results returns recent matches in reverse chronological order with fields including match_id, date, team1, team2, score, and event. Set the optional limit parameter to control how many results come back. For upcoming and live matches, get_upcoming_matches returns a schedule with status, date, time, both team names, and a direct HLTV URL per match. It also accepts a filter_cct boolean to narrow the list to CCT-series events only. For deeper per-match data, get_match_details takes a numeric match_id string and returns maps (name and score per map), stats (nested arrays of player rows with kd, adr, and rating), and the two teams.
Player and Team Statistics
get_player_stats returns all players ranked by rating descending. Each object includes player_id, name, team, maps, rounds, kd_diff, kd, and rating. The days parameter controls the lookback window, so you can query a 30-day slice or a 90-day aggregate. get_team_stats mirrors this structure at the team level, returning team_id, name, maps, kd_diff, kd, and rating sorted the same way. get_team_rankings provides the current official HLTV ranking with rank, team, and points fields — no parameters required.
Fantasy League and Tournaments
get_fantasy_info returns a full overview of the current fantasy season: season_name, season_finished, and an events array where each entry carries fantasy_id, name, month, state, winner, enabled, description, and teams. Use those fantasy_id values with get_fantasy_leaderboard to pull the top-10 standings for any event, including rank, user, team_name, total_points, role_points, boost_points, player_points, and team_points, plus the total number of competing teams via total_teams. CCT tournament listings are available through get_cct_tournaments, which returns event name, url, and date for ongoing and upcoming events.
- Track live and upcoming CS2 match schedules filtered to CCT-series tournaments using
get_upcoming_matcheswithfilter_cct: true - Build a player performance dashboard ranked by rating over a configurable time window via
get_player_stats - Power a fantasy CS2 assistant by combining
get_fantasy_infoevent data withget_fantasy_leaderboardstandings - Display per-map scores and individual player ADR/KD stats for any historical match using
get_match_details - Monitor HLTV's official team rankings over time with rank position and points via
get_team_rankings - Aggregate team-level KD differential and rating trends across custom day ranges using
get_team_stats - List upcoming CCT events with dates and direct HLTV URLs for tournament tracking tools via
get_cct_tournaments
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does HLTV.org have an official developer API?+
What does `get_match_details` return beyond the final score?+
get_match_details returns a maps array with each map name and its score, a stats array containing per-player rows with kd, adr, and rating grouped by team side, and a teams array with both team names. You pass a numeric match_id string (obtainable from get_results or get_upcoming_matches) to identify the match.Can I retrieve individual player profiles or career statistics?+
get_player_stats, including rating, kd, kd_diff, maps, and rounds, but individual career pages, biographical data, or historical per-event breakdowns are not exposed. You can fork this API on Parse and revise it to add an endpoint targeting those player profile pages.How granular is the time filtering for stats endpoints?+
get_player_stats and get_team_stats both accept an integer days parameter to set the lookback window. The stats represent all matches played within that period. No finer-grained date-range filtering (e.g., start and end dates) is currently supported. You can fork this API on Parse and revise it to add date-range parameters if needed.Does the fantasy leaderboard cover private leagues or only the HLTV public league?+
get_fantasy_leaderboard returns the top-10 standings from the HLTV public fantasy league for a given fantasy_id. Private or custom league data is not covered. You can fork this API on Parse and revise it to target private league endpoints if those become accessible.