League of Graphs APIleagueofgraphs.com ↗
Access League of Legends and TFT player stats, champion win rates, live game status, and ranked leaderboards via the League of Graphs API.
What is the League of Graphs API?
The League of Graphs API covers 6 endpoints for League of Legends and Teamfight Tactics data, including summoner profiles with match history, champion statistics, and ranked leaderboards. get_lol_summoner_details returns a player's current rank tier, LP, and up to recent matches with per-game champion, KDA, result, game type, and duration. All major regions are supported, including KR, NA, EUW, BR, JP, and VN.
curl -X GET 'https://api.parse.bot/scraper/a37a789e-d312-4d4e-b7cc-9407bfc6963f/get_lol_summoner_details?name=Faker-KR1®ion=kr' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace leagueofgraphs-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.league_of_graphs_api import LeagueOfGraphs, Region, RankingRegion
client = LeagueOfGraphs()
# Fetch a summoner's profile in Korea
summoner = client.summoners.get(name="Faker-KR1", region=Region.KR)
print(summoner.name, summoner.region, summoner.rank.tier, summoner.rank.lp)
for match in summoner.match_history:
print(match.champion, match.result, match.kda, match.type, match.duration)
# Check if the summoner is in a live game
live_status = summoner.live_game()
print(live_status.in_game, live_status.status)
# Browse top LoL players in Korea
for player in client.lolrankings.list(region=RankingRegion.KR, limit=10):
print(player.rank, player.summoner, player.tier, player.lp)
# Get champion meta stats
for champ in client.champions.list(limit=5):
print(champ.name, champ.win_rate, champ.pick_rate, champ.ban_rate, champ.role, champ.tier)
# Browse TFT rankings globally
for tft_player in client.tftrankings.list(region=RankingRegion.ALL, limit=5):
print(tft_player.rank, tft_player.summoner, tft_player.tier, tft_player.lp, tft_player.wins)
# List TFT champions in the current set
for tft_champ in client.tftchampions.list(limit=10):
print(tft_champ.champion_name, tft_champ.champion_slug)
Retrieve a summoner's profile including rank tier and recent match history. Each match includes the champion played, result, KDA, game type, and duration. The summoner is identified by Riot ID (Name#Tag or Name-Tag format) and region. Returns empty match_history if the profile exists but has no recent games.
| Param | Type | Description |
|---|---|---|
| namerequired | string | Summoner Riot ID (format: Name-Tag or Name#Tag, e.g. Faker-KR1) |
| region | string | Region code for the summoner's server |
{
"type": "object",
"fields": {
"name": "string, the summoner Riot ID as provided",
"rank": "object with tier (string) and lp (string)",
"region": "string, the region queried",
"match_history": "array of match objects with champion, result, kda, type, duration"
},
"sample": {
"data": {
"name": "Faker-KR1",
"rank": {
"lp": "",
"tier": "Silver III"
},
"region": "kr",
"match_history": [
{
"kda": "5/10/13",
"type": "Normal (Draft Pick)",
"result": "Defeat",
"champion": "Bard",
"duration": "34min 5s"
}
]
},
"status": "success"
}
}About the League of Graphs API
Summoner and Live Game Endpoints
The get_lol_summoner_details endpoint accepts a Riot ID in Name-Tag or Name#Tag format alongside an optional region code, and returns a rank object containing tier and lp fields plus a match_history array. Each match entry includes champion, result, kda, type (game mode), and duration. The get_lol_live_game endpoint takes the same inputs and returns an in_game boolean and a human-readable status string — useful for real-time presence checks without polling a full match record.
Champion Statistics
get_lol_champion_stats returns a champions array covering every champion in the current patch. Each object includes win_rate, pick_rate, ban_rate, kda, role, and tier. No inputs are required. The TFT counterpart, get_tft_champion_stats, returns a simpler list of objects with championName and championSlug for the current TFT set — useful for building navigation or lookup tables against other TFT data sources.
Rankings and Pagination
Both get_lol_rankings and get_tft_rankings accept an optional page integer and a region filter. The LoL endpoint returns rank, summoner, region, lp, and tier per entry. The TFT endpoint adds wins and played fields, giving a fuller picture of activity at the top of the ladder. Setting region to all returns the global leaderboard across all supported regions.
The League of Graphs API is a managed, monitored endpoint for leagueofgraphs.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when leagueofgraphs.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official leagueofgraphs.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Display a player's current rank tier and LP alongside their last N match results in a stats dashboard
- Build a champion tier list using win_rate, pick_rate, ban_rate, and role fields from get_lol_champion_stats
- Trigger alerts when a tracked summoner enters a live game using the in_game boolean from get_lol_live_game
- Populate a regional or global LoL leaderboard with paginated ranked player data
- Compare TFT top players by wins and games played using get_tft_rankings with region filtering
- Seed a champion selector or team builder with current TFT set champion names and slugs
- Track rank progression for a roster of competitive players across KR, NA, and EUW regions
| 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 | 100 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.