A list of Champion ID's in League of Legends
Champion Ids (or sometimes called keys) are part of the League of Legends API. Usually, you should parse them with a champion.json file or something similar, but here is a list for a quick check.
Under the list there is a script you can use to decode champion Ids to champion data yourself.
Champion Ids - Patch 13.10
- Aatrox (Aatrox): 266
- Ahri (Ahri): 103
- Akali (Akali): 84
- Akshan (Akshan): 166
- Alistar (Alistar): 12
- Amumu (Amumu): 32
- Anivia (Anivia): 34
- Annie (Annie): 1
- Aphelios (Aphelios): 523
- Ashe (Ashe): 22
- Aurelion Sol (AurelionSol): 136
- Azir (Azir): 268
- Bard (Bard): 432
- Bel'Veth (Belveth): 200
- Blitzcrank (Blitzcrank): 53
- Brand (Brand): 63
- Braum (Braum): 201
- Caitlyn (Caitlyn): 51
- Camille (Camille): 164
- Cassiopeia (Cassiopeia): 69
- Cho'Gath (Chogath): 31
- Corki (Corki): 42
- Darius (Darius): 122
- Diana (Diana): 131
- Draven (Draven): 119
- Dr. Mundo (DrMundo): 36
- Ekko (Ekko): 245
- Elise (Elise): 60
- Evelynn (Evelynn): 28
- Ezreal (Ezreal): 81
- Fiddlesticks (Fiddlesticks): 9
- Fiora (Fiora): 114
- Fizz (Fizz): 105
- Galio (Galio): 3
- Gangplank (Gangplank): 41
- Garen (Garen): 86
- Gnar (Gnar): 150
- Gragas (Gragas): 79
- Graves (Graves): 104
- Gwen (Gwen): 887
- Hecarim (Hecarim): 120
- Heimerdinger (Heimerdinger): 74
- Illaoi (Illaoi): 420
- Irelia (Irelia): 39
- Ivern (Ivern): 427
- Janna (Janna): 40
- Jarvan IV (JarvanIV): 59
- Jax (Jax): 24
- Jayce (Jayce): 126
- Jhin (Jhin): 202
- Jinx (Jinx): 222
- Kai'Sa (Kaisa): 145
- Kalista (Kalista): 429
- Karma (Karma): 43
- Karthus (Karthus): 30
- Kassadin (Kassadin): 38
- Katarina (Katarina): 55
- Kayle (Kayle): 10
- Kayn (Kayn): 141
- Kennen (Kennen): 85
- Kha'Zix (Khazix): 121
- Kindred (Kindred): 203
- Kled (Kled): 240
- Kog'Maw (KogMaw): 96
- K'Sante (KSante): 897
- LeBlanc (Leblanc): 7
- Lee Sin (LeeSin): 64
- Leona (Leona): 89
- Lillia (Lillia): 876
- Lissandra (Lissandra): 127
- Lucian (Lucian): 236
- Lulu (Lulu): 117
- Lux (Lux): 99
- Malphite (Malphite): 54
- Malzahar (Malzahar): 90
- Maokai (Maokai): 57
- Master Yi (MasterYi): 11
- Milio (Milio): 902
- Miss Fortune (MissFortune): 21
- Wukong (MonkeyKing): 62
- Mordekaiser (Mordekaiser): 82
- Morgana (Morgana): 25
- Nami (Nami): 267
- Nasus (Nasus): 75
- Nautilus (Nautilus): 111
- Neeko (Neeko): 518
- Nidalee (Nidalee): 76
- Nilah (Nilah): 895
- Nocturne (Nocturne): 56
- Nunu & Willump (Nunu): 20
- Olaf (Olaf): 2
- Orianna (Orianna): 61
- Ornn (Ornn): 516
- Pantheon (Pantheon): 80
- Poppy (Poppy): 78
- Pyke (Pyke): 555
- Qiyana (Qiyana): 246
- Quinn (Quinn): 133
- Rakan (Rakan): 497
- Rammus (Rammus): 33
- Rek'Sai (RekSai): 421
- Rell (Rell): 526
- Renata Glasc (Renata): 888
- Renekton (Renekton): 58
- Rengar (Rengar): 107
- Riven (Riven): 92
- Rumble (Rumble): 68
- Ryze (Ryze): 13
- Samira (Samira): 360
- Sejuani (Sejuani): 113
- Senna (Senna): 235
- Seraphine (Seraphine): 147
- Sett (Sett): 875
- Shaco (Shaco): 35
- Shen (Shen): 98
- Shyvana (Shyvana): 102
- Singed (Singed): 27
- Sion (Sion): 14
- Sivir (Sivir): 15
- Skarner (Skarner): 72
- Sona (Sona): 37
- Soraka (Soraka): 16
- Swain (Swain): 50
- Sylas (Sylas): 517
- Syndra (Syndra): 134
- Tahm Kench (TahmKench): 223
- Taliyah (Taliyah): 163
- Talon (Talon): 91
- Taric (Taric): 44
- Teemo (Teemo): 17
- Thresh (Thresh): 412
- Tristana (Tristana): 18
- Trundle (Trundle): 48
- Tryndamere (Tryndamere): 23
- Twisted Fate (TwistedFate): 4
- Twitch (Twitch): 29
- Udyr (Udyr): 77
- Urgot (Urgot): 6
- Varus (Varus): 110
- Vayne (Vayne): 67
- Veigar (Veigar): 45
- Vel'Koz (Velkoz): 161
- Vex (Vex): 711
- Vi (Vi): 254
- Viego (Viego): 234
- Viktor (Viktor): 112
- Vladimir (Vladimir): 8
- Volibear (Volibear): 106
- Warwick (Warwick): 19
- Xayah (Xayah): 498
- Xerath (Xerath): 101
- Xin Zhao (XinZhao): 5
- Yasuo (Yasuo): 157
- Yone (Yone): 777
- Yorick (Yorick): 83
- Yuumi (Yuumi): 350
- Zac (Zac): 154
- Zed (Zed): 238
- Zeri (Zeri): 221
- Ziggs (Ziggs): 115
- Zilean (Zilean): 26
- Zoe (Zoe): 142
- Zyra (Zyra): 143
Tutorial
You need this script as the Riot Games or better the League of Legends API only outputs the Id of a champion rather than the name. Even tho this changed in match-v5, there are still several APIs not supporting this new feature and it is quite easy for you to get the full champion data using this method.
PHP
A tutorial for PHP is also on YouTube.
<?php
// fetch all patches
$versions = file_get_contents('https://ddragon.leagueoflegends.com/api/versions.json');
$versions = json_decode($versions, true);
$latest = $versions[0]; // get the latest patch
// get a list of champions for en_US for the latest patch
$json = file_get_contents('https://ddragon.leagueoflegends.com/cdn/'.$latest.'/data/en_US/champion.json');
$json = json_decode($json, true);
$list = $json['data'];
function getChampionInfo($id = 1) {
global $list;
foreach ($list as $key => $value) {
if($list[$key]['key'] == $id) {
return $list[$key];
}
}
return false;
}
// Example
echo getChampionInfo(45)["name"] // outputs "Veigar"
?>
JavaScript
There is a nice GitHub Gist which even allows you to change your language: gist.github.com/Querijn/5fe4b9f65a1236b98ead0bc39ab155ad. Otherwise, here is a "simplified" Javascript solution:
let championJson = {};
async function getLatestDDragon() {
if(Object.keys(championJson).length > 0) {return champinoJson;}
const versions = await fetch("https://ddragon.leagueoflegends.com/api/versions.json");
const latest = await versions.json()[0];
const ddragon = await fetch(`https://ddragon.leagueoflegends.com/cdn/${latest}/data/en_US/champion.json`);
const champions = await ddragon.json()["data"];
championJson = champions;
return champions;
}
async function getChampionByKey(key) {
const champions = await getLatestDDragon();
for (var championName in champions) {
if (!champions.hasOwnProperty(championName)) {continue;}
if(champions[championName]["key"] === key) {
return champions[championName]
}
}
return false;
}
console.log(await getChampionByKey(45)); // outputs Array<Veigar>

