Riot Games API Guide: How to Access League of Legends Data for Free

27-12-2025

Introduction

In this guide, you'll learn how to use the Riot Games API to access League of Legends data from scratch. By the end, you'll be able to retrieve your own League of Legends profile data and use it as a foundation for building websites, dashboards, analytics projects, or anything else you can come up with!

This article walks you through the entire setup process, including creating a Riot Games developer account, installing the required software, and making your first successful API requests.

Note: This guide was written in December 2025. Riot Games may update or change parts of their APIs over time. If something no longer works as described, feel free to reach out so I can keep this guide up to date.

Hope you enjoy it!

Setting everything up

Create a developer-profile at riot games

The first step in this guide is to create a developer profile at Riot Games. This is required because, in order to access the APIs Riot makes available, you need a valid API key associated with your account.

Start by visiting the Riot Games Developer website:
https://developer.riotgames.com/ 

This is where you'll set up your developer profile and manage your API keys. If you don't already have a Riot Games account, you'll need to create one and sign in before continuing.

During the profile creation process, Riot will ask how you intend to use their APIs. Make sure to select the correct usage type. For this guide, choose Personal use, since the API will only be used for learning, training, and experimenting with League of Legends data.

Once your profile is created, you'll be issued a development API key. This key is required for every API request you make and should be kept private. Development keys usually have rate limits and an expiration date, so if your key expires, you can generate a new one from the developer dashboard.

Install Software Used in This Guide

In this guide, I'll only use Postman. However, if you wish to integrate the API into a project, you can use any IDE or programming language to call the endpoints.

Postman is not strictly required, but I highly recommend it. It's a powerful and helpful tool when working with APIs. With Postman, we can experiment with different API requests, test endpoints, and inspect responses before integrating them into our website or application. Once we have a request working correctly, we can reuse the same URL and logic, which can be used in any project you desire.

You can download Postman here: https://www.postman.com/ 

Starting the project

Calling Your First Endpoint in Postman

First, open Postman. In the top-left menu, click New and select HTTP. An empty request will open in the middle of the screen.

Next, select the request type as GET, since we're only fetching data.

Beside the request type, there's a text field where we'll paste the URL we want to fetch. On the Riot Games Developer website, there's a menu item called APIs. Click on it, or go directly to: https://developer.riotgames.com/apis 

Once the page is open, you'll see a list of endpoints that are free to use. In this guide, we'll start by calling the ACCOUNT-V1 endpoint, because we need a PUUID to fetch data from some of the other available endpoints. This endpoint allows us to fetch a player's PUUID by using their in-game name and tag. Before calling it, we need the correct base URL.

If you expand this endpoint on the ACCOUNT-V1 page and scroll down, you'll see a section where you can enter your own in-game name and tag. After executing the request, Riot will show you the response along with the Request URI, which we can copy and paste into Postman.

Make sure to select the correct region you're based in. If you receive a 401 Unauthorized status code, it's likely that your API key has expired. In that case, go to your developer dashboard and generate a new key.

You'll also see a response body that includes the PUUID.

For now, copy the Request URI and paste it into the Postman request we created earlier.

Your request should look similar to this (with your own in-game name, tag, and correct region if you're not Europe-based):

The query params that was created, you have the key/value-pair with the API-key and the value being the key from your riot games developer dashboard. Once you have this, click the 'Send'-button and you should get a response that looks kinda like this, in a JSON structure:

{

"puuid": "PUUID",

"gameName": "in-game-name",

"tagLine": "tag-number"

}

This a JSON-structured response. The most important part of this JSON in your case, is the PUUID, which is the ID of the user you searched for, which we will need in later responses.

But congratulations, you have now utilized one of riots APIs for free!

Calling the second endpoint in Postman

First of all, start by saving th PUUID you got from the previous response as we will need this for this next endpoint.

We can now fetch matchIds from the users from previous request, and these matchIds we can later use to fetch match details on individually matches.

Go to the APIS pages on the riot developer website and look for the API: MATCH-V5. This API contains the endpoint: /lol/match/v5/matches/by-puuid/{puuid}/ids. This endpoint have one required paramter, which is the PUUID of the user we want the matchIds from, but as you can see on the developer website, there is more optional paramters to filter your search, for example you have the ability to search by start and count, where you can filter the number of matchIds you want to get in return, which we will use in this case. On this page, enter the PUUID you got in the previous request and enter 0 in the start parameter and 5 in the count parameter. Execute the request and inspect the response you got. You should know have 5 matchIds in the response.

In here you will once again see the request URI, which you can copy and paste into Postman (alternatively, save the previous request and create a new http GET request and copy the url into that one). In postman, the url should now look something like this:

All you need to do here is verify you have the correct API-key and the correct PUUID. Once you click send, the JSON response should look something like this:

[ "EUW1_xxxxx", "EUW1_xxxxxx", "EUW1_xxxxxxx", "EUW1_xxxxxxxx", "EUW1_xxxxxxxxx"]

These match IDs you can now save, as these are the games you have recently played. And now the fun comes, because we can use these match IDS to find a lot of information regarding the individually games

Calling the third endpoint in Postman

Now that we have the matchIds, we want to get the information on one single game at a time. Now is the time to call the third and last API call in this guide. The API we wish to find, can be found on Riots developer portal under MATCH-V5. In here you can find the endpoint /lol/match/v5/matches/{matchId}. This endpoint only require us to give it the match id and your API-key and then you will get a huge JSON responds on all the details regarding the game. All these information you can use as you wish for your website or analytical project, whatever you wish. This is what it looks like in Postman:

The match-id should of course be changed to match one of the match ids from the response from the second endpoint. 

This is how we can make use of the APIs that are available from Riot Games. Below, I've included a .zip file containing a small example project that demonstrates how this could be used on a website. The project is intentionally simple and consists of just three files: one HTML file, one JavaScript file, and one CSS file. Feel free to use or adapt it however you like.