For Agents
Look up Riot Games accounts, summoners, match history, champion mastery, and live spectator data across League of Legends and related titles through 24 endpoints.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Riot Games API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Riot Games API API.
Resolve a Riot account by PUUID or Riot ID via GET /riot/account/v1/accounts/by-puuid/{puuid} and /by-riot-id/{gameName}/{tagLine}
Look up a League of Legends summoner by PUUID or summoner id via /lol/summoner/v4/summoners/by-puuid/{encryptedPUUID} and /{encryptedSummonerId}
Read champion mastery scores and per-champion mastery via /lol/champion-mastery/v4/champion-masteries/by-puuid/{encryptedPUUID}
List ranked league entries by summoner, queue, or tier via /lol/league/v4/entries/* and /lol/league/v4/{queue}leagues/by-queue/{queue}
GET STARTED
Use for: Resolve a Riot ID like 'Faker#KR1' to a PUUID, Get the recent ranked match ids for a summoner, Pull the timeline of a specific League of Legends match, List a player's champion mastery scores
Not supported: Does not modify game state, run matchmaking, or expose VALORANT/TFT-specific endpoints — use for read-only Riot account and League of Legends summoner, match, mastery, league, and spectator data only.
The Riot Games API gives access to game data for League of Legends, Teamfight Tactics, Legends of Runeterra, and VALORANT. The 24 endpoints cover account resolution, summoner profiles, champion mastery, league standings, match history, spectator data, and platform status, organised across regional and platform routing hosts. Authentication uses an X-Riot-Token API key for server-to-server calls and Riot Sign On (RSO) OAuth 2.0 for user-specific endpoints under /riot/account/v1/accounts/me.
Fetch match history and timeline via /lol/match/v5/matches/by-puuid/{puuid}/ids and /lol/match/v5/matches/{matchId}/timeline
Inspect live or featured games via /lol/spectator/v5/active-games/by-summoner/{encryptedPUUID} and /featured-games
Authenticate server calls with the X-Riot-Token header and user-specific calls with RSO OAuth 2.0
Patterns agents use Riot Games API API for, with concrete tasks.
★ League stats tracker
Stats sites can resolve a player's Riot ID via /riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}, fetch their summoner record via /lol/summoner/v4/summoners/by-puuid/{encryptedPUUID}, and pull match history with /lol/match/v5/matches/by-puuid/{puuid}/ids. Each match id then drives /lol/match/v5/matches/{matchId} for box score detail and /timeline for per-event analysis. The same flow works across the regional and platform hosts.
GET /riot/account/v1/accounts/by-riot-id/Faker/KR1 to resolve the PUUID, then GET /lol/match/v5/matches/by-puuid/{puuid}/ids?count=20 and /lol/match/v5/matches/{matchId} for each id.
Live game and esports overlay
Streaming overlays and esports tools can detect when a summoner enters a game via GET /lol/spectator/v5/active-games/by-summoner/{encryptedPUUID} and pull the rotating /featured-games for highlight content. Combine with /lol/champion-mastery/v4/champion-masteries/by-puuid/{encryptedPUUID}/top to render a player's signature champions on the broadcast.
GET /lol/spectator/v5/active-games/by-summoner/{encryptedPUUID} and if a game is in progress render the participant list on the overlay.
Ranked ladder snapshot
Community tools can snapshot the Challenger, Grandmaster, and Master ladders via /lol/league/v4/challengerleagues/by-queue/{queue}, /grandmasterleagues/by-queue/{queue}, and /masterleagues/by-queue/{queue}. /lol/league/v4/entries/{queue}/{tier}/{division} provides per-page pagination through lower tiers. The result is a regional ranked ladder with summoner ids that can be expanded with the summoner endpoints.
GET /lol/league/v4/challengerleagues/by-queue/RANKED_SOLO_5x5 and persist entries with summonerName, leaguePoints, wins, and losses.
Agent-driven Riot stats lookup
An AI assistant in a community Discord can answer 'What's my last match's KDA?' or 'How does my champion mastery on Lee Sin compare?' by routing through the Riot API via Jentic. Jentic stores the X-Riot-Token in the vault and, for /accounts/me, performs the RSO OAuth flow once and refreshes the access token at execution.
Through Jentic, search 'get a Riot summoner's recent match ids', load the /lol/match/v5/matches/by-puuid/{puuid}/ids operation, and execute with the user's PUUID.
24 endpoints — the riot games api gives access to game data for league of legends, teamfight tactics, legends of runeterra, and valorant.
METHOD
PATH
DESCRIPTION
/riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}
Resolve a Riot ID to PUUID
/lol/summoner/v4/summoners/by-puuid/{encryptedPUUID}
Get a LoL summoner by PUUID
/lol/match/v5/matches/by-puuid/{puuid}/ids
List match ids for a player
/lol/match/v5/matches/{matchId}
Get match details
/lol/match/v5/matches/{matchId}/timeline
Get the per-event timeline of a match
/lol/champion-mastery/v4/champion-masteries/by-puuid/{encryptedPUUID}
List champion mastery scores for a player
/lol/league/v4/challengerleagues/by-queue/{queue}
Read the Challenger ladder for a queue
/lol/spectator/v5/active-games/by-summoner/{encryptedPUUID}
Check whether a summoner is in a live game
/riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}
Resolve a Riot ID to PUUID
/lol/summoner/v4/summoners/by-puuid/{encryptedPUUID}
Get a LoL summoner by PUUID
/lol/match/v5/matches/by-puuid/{puuid}/ids
List match ids for a player
/lol/match/v5/matches/{matchId}
Get match details
/lol/match/v5/matches/{matchId}/timeline
Get the per-event timeline of a match
Three things that make agents converge on Jentic-routed access.
Credential isolation
Your Riot X-Riot-Token API key and RSO OAuth refresh tokens are stored encrypted in the Jentic vault. Agents call operations through scoped Jentic tokens; the X-Riot-Token header or a fresh RSO access token is attached at execution, so raw secrets never reach the agent.
Intent-based discovery
Agents search by intent (e.g., 'get a summoner's match history' or 'check if a player is in a live game') and Jentic returns the matching Riot operations with PUUID, region, and platform parameters resolved.
Time to first call
Direct Riot integration takes 1-2 days to handle dual-host routing, strict rate limits, and the RSO OAuth flow for user endpoints. Through Jentic the same operations are executable in under an hour.
Alternatives and complements available in the Jentic catalogue.
OpenDota
Open Dota 2 match and player data.
Choose OpenDota when the analysis is for Dota 2 rather than Riot's League of Legends ecosystem.
Twitch
Live streams, channels, and viewers data for esports broadcasts.
Pair with the Riot API when an overlay or stats site links player profiles to their Twitch streams.
PandaScore
Esports data covering tournaments, fixtures, and odds.
Use PandaScore alongside the Riot API for tournament fixtures and team-level data not exposed by Riot directly.
Specific to using Riot Games API API through Jentic.
What authentication does the Riot Games API use?
Server-to-server calls use the X-Riot-Token header with a development or production key issued at developer.riotgames.com. User-specific endpoints such as /riot/account/v1/accounts/me use Riot Sign On (RSO) OAuth 2.0 with authorization code flow against https://auth.riotgames.com. Through Jentic the X-Riot-Token and RSO refresh tokens are vaulted and applied at execution, so raw secrets never reach the agent.
Can I get a player's recent match history with the Riot API?
Yes. Resolve the player's PUUID via /riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}, then GET /lol/match/v5/matches/by-puuid/{puuid}/ids?count=20 to list match ids, and GET /lol/match/v5/matches/{matchId} for each id. /timeline gives the per-event detail for deeper analysis.
What are the rate limits for the Riot Games API?
Riot enforces strict per-key, per-region rate limits — development keys are typically 20 requests per second and 100 per 2 minutes, with method-level limits added on top. The OpenAPI spec does not encode the limits, so check developer.riotgames.com and treat HTTP 429 with the Retry-After header as the canonical back-off signal.
How do I check whether a summoner is in a live game through Jentic?
Through Jentic, search 'check if a Riot summoner is in a live game', load the /lol/spectator/v5/active-games/by-summoner/{encryptedPUUID} operation, and execute with the player's PUUID. Jentic injects the X-Riot-Token from the vault.
Does the Riot API cover VALORANT and TFT alongside League of Legends?
The /riot/account/v1 paths are cross-game, so account resolution works for VALORANT, TFT, and Legends of Runeterra. The League of Legends-specific endpoints (/lol/*) are exposed in this spec. VALORANT and TFT have their own /val/* and /tft/* paths in Riot's broader API surface that are not modelled here.
Why are there two server hosts (regional and platform)?
Riot splits the API across regional routing (americas/europe/asia/sea) for cross-region account and match lookups and platform routing (na1/euw1/kr/...) for per-platform data such as summoner records and ladders. Pick the host that matches the endpoint's documented routing — the OpenAPI servers list shows both.
/lol/champion-mastery/v4/champion-masteries/by-puuid/{encryptedPUUID}
List champion mastery scores for a player
/lol/league/v4/challengerleagues/by-queue/{queue}
Read the Challenger ladder for a queue
/lol/spectator/v5/active-games/by-summoner/{encryptedPUUID}
Check whether a summoner is in a live game