LoL transfer API

LoL roster moves, player transfers, and org changes as API data.

Track who moved, where they went, when it happened, and which team or player page should update.

Recent transfers
Player transfer history
Team transfer history
Roster move context

API response preview

Roster moves by player, team, and date

JSON

Useful endpoints

/api/v1/lol/transfers

Recent transfers

/api/v1/lol/transfers/player/{playerId}

Player moves

/api/v1/lol/transfers/team/{slug}

Team moves

Run the request

X-API-Key
curl "https://api.citoapi.com/api/v1/lol/transfers" \
  -H "X-API-Key: $CITO_API_KEY"
{
  "transfers": [
    {
      "playerName": "Example",
      "fromTeam": "old-team",
      "toTeam": "new-team",
      "date": "2026-05-10",
      "type": "joined"
    }
  ]
}

Primary endpoint: /api/v1/lol/transfers

Track who moved, where they went, when it happened, and which team or player page should update.

Recent transfersPlayer transfer historyTeam transfer historyRoster move context

Endpoint chain

Start with /api/v1/lol/transfers, 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/transfers

Roster moves by player, team, and date.

Recent transfers

/api/v1/lol/transfers

Use this first when the page needs roster moves by player, team, and date.

Player moves

/api/v1/lol/transfers/player/{playerId}

Player moves fills in the detail around the primary response.

Team moves

/api/v1/lol/transfers/team/{slug}

Team moves fills in the detail around the primary response.

Returned data

Track who moved, where they went, when it happened, and which team or player page should update.

Best first request

Call /api/v1/lol/transfers 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/transfers. 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.

Transfer trackers

Track player movement by team, player, date, and roster status.

Offseason hubs

Track roster moves in one place during the weeks when fans check daily.

Roster alert bots

Notify users when a player joins, leaves, or changes teams.

Org timelines

Show every known move for a team without rewriting historical pages.

Player profile history

Add team movement to a player profile beside stats, earnings, and match history.

Newsroom tools

Give writers a quick source for recent moves, old teams, and roster context.

Keep roster pages current

Use transfer rows to update team pages, player profiles, offseason trackers, roster alerts, and editorial tools without manually checking every org.

Query by team or player

Start from the full transfer feed, then drill into a single player or team when your UI needs a filtered timeline.