LoL match stats API

Game stats, player rows, gold, CS, and objectives from one LoL match endpoint.

Pull the stats behind a finished game: champions, KDA, gold, CS, team objectives, and player rows for recaps or fantasy scoring.

Game-level stats
Player stat rows
Team objectives
Post-game analytics

API response preview

Game stats for recaps, tables, and fantasy scoring

JSON

Useful endpoints

/api/v1/lol/games/{gameId}/stats

Player and team stat rows

/api/v1/lol/matches/{matchId}/games

Games in a match

/api/v1/lol/teams/{slug}/objectives

Objective control rates

Run the request

X-API-Key
curl "https://api.citoapi.com/api/v1/lol/games/{gameId}/stats" \
  -H "X-API-Key: $CITO_API_KEY"
{
  "gameId": "game_1",
  "duration": 1924,
  "teams": [
    { "slug": "gen", "kills": 18, "dragons": 3, "barons": 1 },
    { "slug": "t1", "kills": 12, "dragons": 1, "barons": 0 }
  ],
  "players": [
    { "name": "Chovy", "champion": "Azir", "kills": 7, "deaths": 1, "assists": 8 }
  ]
}

Primary endpoint: /api/v1/lol/games/{gameId}/stats

Pull the stats behind a finished game: champions, KDA, gold, CS, team objectives, and player rows for recaps or fantasy scoring.

Game-level statsPlayer stat rowsTeam objectivesPost-game analytics

Endpoint chain

Start with /api/v1/lol/games/{gameId}/stats, then add the supporting rows your screen needs.

The first request should answer the user's main question. Add live state, roster rows, match stats, transfer history, or earnings only when the UI needs that detail.

GET
/api/v1/lol/games/{gameId}/stats

Game stats for recaps, tables, and fantasy scoring.

Player and team stat rows

/api/v1/lol/games/{gameId}/stats

Use this first when the page needs game stats for recaps, tables, and fantasy scoring.

Games in a match

/api/v1/lol/matches/{matchId}/games

Games in a match fills in the detail around the primary response.

Objective control rates

/api/v1/lol/teams/{slug}/objectives

Objective control rates fills in the detail around the primary response.

Returned data

Pull the stats behind a finished game: champions, KDA, gold, CS, team objectives, and player rows for recaps or fantasy scoring.

Best first request

Call /api/v1/lol/games/{gameId}/stats from your backend and cache the response based on how often that screen changes.

Common fallback

If live data is empty, show today's schedule, upcoming matches, recent results, or the last known team/player rows.

API key handling

Keep the API key on your server. Send your frontend only the fields it needs to render the page.

Data fit

Use this API for pro matches, teams, players, rosters, stats, and esports history.

If you need Riot ID, PUUID, ranked ladder, champion mastery, or account-linked match history, use Riot's APIs. If you need a pro esports app, use Cito's LoL endpoints.

Pro Esports API

Built for match centers, fantasy products, scouting tools, wikis, dashboards, team pages, player pages, and live bots.

Live matches and schedules
Pick/ban and game stats where published
Tournament brackets and standings
Player earnings and org history
Transfer tracking
Roster history

Ranked and Ladder Workflows

Use Riot APIs for direct Riot ID, PUUID, summoner, match history, ranked ladder, champion mastery, and account-linked workflows. Cito only references public pro-player account context where source data allows it.

Resources

Docs, examples, and machine-readable endpoint files.

Open the docs when you want examples. Import Postman when you want to test. Use the endpoint manifest when an AI coding tool needs exact paths.

FeatureCito APIRiot APIPandaScore
PriceFree testing, Starter $25/mo, Builder $50/moFree, rate limited; production approval variesUsually sales/custom pricing
Ranked account dataNot the primary product; use Riot for direct account workflowsYesNot the core LoL ranked source
Pro esports liveYesFragmented across official surfacesYes
Player earningsYesNoProvider-dependent
Org/transfer historyYesCurrent GCD affiliation/contract data, not full historyProvider-dependent
Unified REST APIYesMultiple products and routing modelsYes
Instant signupYesDeveloper key yes; production can require approvalOften sales-led

Riot's API is free but fragmented. PandaScore is enterprise-only. Cito is the only self-serve option with earnings and org history.

Endpoints

Endpoint paths for this workflow.

Start with /api/v1/lol/games/{gameId}/stats. Add supporting endpoints only when your page needs more context.

GET
/api/v1/lol/players/{playerId}/earnings

Career prize pool earnings with tournament-by-tournament rows.

GET
/api/v1/lol/players/{playerId}/earnings/summary

Player earnings totals, event counts, placements, and tracked history.

GET
/api/v1/lol/players/{playerId}/teams

Team history for org changes, roles, and date ranges.

GET
/api/v1/lol/teams/{slug}/roster/history

Historical rosters with roster membership periods.

GET
/api/v1/lol/transfers

Recent transfer activity across tracked LoL teams and players.

GET
/api/v1/lol/teams/{slug}/earnings

Organization-level earnings and tournament results where tracked.

GET
/api/v1/lol/live

Active League of Legends esports matches and live state.

GET
/api/v1/lol/schedule/today

Today's LoL esports schedule for match-day apps.

GET
/api/v1/lol/games/{gameId}/stats

Game-level player stats after source publication.

GET
/api/v1/lol/webhooks/events

Supported LoL webhook events for paid plans.

Use cases

Built for League of Legends apps developers actually launch.

Match recaps

Turn a completed game into a readable summary with score, champions, KDA, gold, CS, and objective context.

Fantasy scoring

Calculate fantasy points from player stat rows instead of parsing match pages by hand.

Gold graphs

Draw momentum charts from game data when gold snapshots are available.

Player stat tables

Show KDA, champion, CS, gold, damage, and role context in a familiar table layout.

Post-game cards

Generate shareable cards for MVPs, team wins, standout players, and final scorelines.

Analytics dashboards

Group match stats by player, team, league, patch, or tournament for deeper analysis.

Separate match stats from player profiles

Match stats belong on product surfaces like recaps, live centers, fantasy scoring, and timeline views. Player profile stats can consume the same underlying rows later.

Build around one game at a time

Start from a match or schedule row, resolve the game ID, then fetch game stats for player KDA, champion context, gold, CS, objectives, and team-level summaries where source data is available.