LoL schedule API
Live LoL schedules, match times, and team lineups. One API call.
Get today's matches, upcoming schedule, and live state. Filter by league. No scraping required.
API response preview
Today's matches, upcoming schedule, and live state
Useful endpoints
/api/v1/lol/schedule/todayToday's pro matches
/api/v1/lol/schedule/upcomingUpcoming matches
/api/v1/lol/leagues/{leagueId}/scheduleLeague schedule
Run the request
X-API-Keycurl "https://api.citoapi.com/api/v1/lol/schedule/today?league=lck" \ -H "X-API-Key: $CITO_API_KEY"
{
"date": "2026-05-16",
"league": "lck",
"matches": [
{
"matchId": "lck-2026-0516-gen-t1",
"state": "upcoming",
"startTime": "2026-05-16T10:00:00.000Z",
"team1": { "slug": "gen", "name": "Gen.G" },
"team2": { "slug": "t1", "name": "T1" }
}
]
}Primary endpoint: /api/v1/lol/schedule/today
Get today's matches, upcoming schedule, and live state. Filter by league. No scraping required.
Endpoint chain
Start with /api/v1/lol/schedule/today, 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.
/api/v1/lol/schedule/todayToday's matches, upcoming schedule, and live state.
Today's pro matches
/api/v1/lol/schedule/todayUse this first when the page needs today's matches, upcoming schedule, and live state.
Upcoming matches
/api/v1/lol/schedule/upcomingUpcoming matches fills in the detail around the primary response.
League schedule
/api/v1/lol/leagues/{leagueId}/scheduleLeague schedule fills in the detail around the primary response.
Returned data
Get today's matches, upcoming schedule, and live state. Filter by league. No scraping required.
Best first request
Call /api/v1/lol/schedule/today 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.
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.
| Feature | Cito API | Riot API | PandaScore |
|---|---|---|---|
| Price | Free testing, Starter $25/mo, Builder $50/mo | Free, rate limited; production approval varies | Usually sales/custom pricing |
| Ranked account data | Not the primary product; use Riot for direct account workflows | Yes | Not the core LoL ranked source |
| Pro esports live | Yes | Fragmented across official surfaces | Yes |
| Player earnings | Yes | No | Provider-dependent |
| Org/transfer history | Yes | Current GCD affiliation/contract data, not full history | Provider-dependent |
| Unified REST API | Yes | Multiple products and routing models | Yes |
| Instant signup | Yes | Developer key yes; production can require approval | Often 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/schedule/today. Add supporting endpoints only when your page needs more context.
/api/v1/lol/players/{playerId}/earningsCareer prize pool earnings with tournament-by-tournament rows.
/api/v1/lol/players/{playerId}/earnings/summaryPlayer earnings totals, event counts, placements, and tracked history.
/api/v1/lol/players/{playerId}/teamsTeam history for org changes, roles, and date ranges.
/api/v1/lol/teams/{slug}/roster/historyHistorical rosters with roster membership periods.
/api/v1/lol/transfersRecent transfer activity across tracked LoL teams and players.
/api/v1/lol/teams/{slug}/earningsOrganization-level earnings and tournament results where tracked.
/api/v1/lol/liveActive League of Legends esports matches and live state.
/api/v1/lol/schedule/todayToday's LoL esports schedule for match-day apps.
/api/v1/lol/games/{gameId}/statsGame-level player stats after source publication.
/api/v1/lol/webhooks/eventsSupported LoL webhook events for paid plans.
Use cases
Built for League of Legends apps developers actually launch.
Match calendars
Build schedule views, countdown timers, and match reminders.
Discord schedule commands
Bot commands for live scores, upcoming matches, and player stats.
Fantasy lock timers
Know exactly when lineups lock for fantasy slates.
Team pages
Current roster, recent matches, and win streaks.
Tournament hubs
Brackets, standings, and match results in one view.
Daily match emails
Morning digest of today's pro matches.
High-intent schedule data
Schedule requests are usually product-critical: bots need daily commands, match centers need countdowns, fantasy apps need lock times, and calendars need clean upcoming match rows.
Designed for fallbacks
Use schedule endpoints with live and recent match endpoints so your app can show upcoming, live, and completed states without leaving users on an empty page.
Pricing
Start free. Upgrade when your LoL product needs room to grow.
Free testing includes 500 requests/month. Starter handles early products at $25/month. Builder is the $50/month tier for earnings, org history, transfers, webhooks, and higher-volume LoL apps.