Read These Thoroughly
Our goal is to provide developers with a set of tools to create products that will lead to a better player experience. We try as much as possible to not guide or hinder the creative process. While we remain as hands off as possible, we do, at times, need to step in to ensure products don’t have a negative impact to players. Please note, we don’t give individual products a stamp of approval, but rather ensure they don’t conflict with our player-focused policies.
The goal is to enrich the League of Legends community and provide a better player experience. If your product might lead to a negative player experience please talk to us before it’s too late! There are some things that we're flexible on, but there are also some things we take a hard stance on.
- Break the law
- Use any of our official logos
- Refer to your product to be in a partnership or approved by Riot Games
- Publish a product that doesn't properly secure your API key
- Utilize a Development or Interim API key to run a product accessible by the community (Development and Interim API keys are to be used to create a prototype that we can review before the product is made public)
- Utilize a single Production API key to run multiple products (each product must submit an application and be reviewed separately)
- Compromise the integrity of the game or create an unfair advantage for players
- Charge money for your app or provide exclusive access, in whole or in part, to specific users
- Make negative assumptions about players or a game and suggest actions based on those negative assumptions. Stick to the facts. Let the player interpret those facts and draw their own conclusions.
- Shame players based on any metric including their recent performance. You may honor or glorify players, but we don't allow assumptions that could lead to negative preconceptions of a player.
- Provide alternate channels to report or evaluate other players
- Create alternatives for official skill ranking systems, such as Ranked Leagues (Prohibited alternatives include MMR or ELO calculators)
- Utilize methods to connect to other League of Legends systems, such as League chat, that haven't been included in the third party tools. (Except where otherwise noted in any official exceptions, if any.)
- Scrape data from undocumented endpoints or any other sources outside of the provided Riot API Endpoints and other documented Third Party Developer Tools. (Except where otherwise noted in any official exceptions, if any.)
- Build or design any tools or components designed to look like the native League of Legends or Riot Games branding and designs, both in-game and out.
If you have an idea that you think might fall within a gray area feel free ask us in your product's application. Make sure to include a description and the goal behind your product, and then post your question as a Message within the Dev Portal. We’ll be happy to provide you with feedback and work with you to achieve your goal without conflicting with policies we have in place to protect the player experience.
- Think outside the box
- Think of ways for players to evaluate and improve their own gameplay
- Think of ways to connect players with their friends
- Blow our minds (it’s encouraged)
- Feel free to use any of our art assets from the game (but NOT any official Logos)
Unless we’ve given you prior written consent, you can’t use any of our logos (including the Riot Games logo, the League of Legends logo, or esports logos) anywhere on your product or any website, advertising material, video or other publication.
We Don't Endorse Your Product
If you share your Product with others, then you need to include the following notice so it is easy for people to see, such as on the app/web page where your product can be downloaded:
[The title of your Product] isn’t endorsed by Riot Games and doesn’t reflect the views or opinions of Riot Games or anyone officially involved in producing or managing League of Legends. League of Legends and Riot Games are trademarks or registered trademarks of Riot Games, Inc. League of Legends © Riot Games, Inc.
- You are responsible to ensure a fair and balanced system for matchmaking teams.
- All features of your product must be freely available to every tournament participant.
- A tournament must have a minimum of 20 active participants, regardless of team size (1v1, 3v3, 5v5 etc).
- Teams must progress through the tournament by playing directly against their opponents. It must be a traditional style tournament (elimination, round robin, etc) and not direct challenges or ladder systems.
- Anything related to wagering, betting, gambling, or any other use of real money outside of a nominal entry fee is not permitted. No exceptions.
Custom currencies with a monetary value are strictly forbidden. Entry fees or buy-ins must be displayed in a fiat currency, to provide clarity to the participants, and then distributed amongst the winning teams at the end of the tournament based on placements.
A fiat currency is a currency backed by a government regulation or law.
Any time money gets involved we take things very seriously. We've seen a considerable amount of shady behavior with regard to the Tournaments API and as such this is not an area we're likely to be understanding. We understand the overwhelming benefit that community tournaments have created for players, but any deviation from these policies is likely to be handled strictly. If you have any questions ask before implementing a feature that may conflict with these policies.
Remember, don't share your account information with anyone, including your API key!
For your login credentials, take the same precautions as you would with your League of Legends account.
Regarding your API key, this key is tied to your League of Legends account and will be used for your application. If someone has access to your key, they can potentially use it for their own purposes, leaving you without one or with a severely diminished rate limit – even entering your key into another application can be dangerous! You should also make sure that you are using SSL/HTTPS when accessing the APIs so that your key is kept safe. You don’t want anyone else consuming your traffic and making it impossible for you to build your app. Protect your key so that everyone can see the awesome things you build!
Note that embedding a key in a distributed client application, like a desktop or mobile application, means that your key can be compromised. Even secure storage or encrypted keys on a client can be breached. The only way to ensure your API key remains safe is to have the client application access your own server, which then makes the appropriate request to the API using HTTPS. Even in the worst case scenario, if someone does manage to get your key from your server, through a man-in-the-middle or other type of attack, you can easily regenerate your key and update it in your server. If you have a key distributed across numerous client applications, you won't be able to do that without breaking all of the clients.
For similar reasons, generally you should not commit your API key to your code base, especially if you plan on building a distributed binary from that code base. Even if your code base is for a server application, we recommend reading your API key from a configuration file running on the server, rather than committing it to the code base. This practice limits your exposure to only the boxes that the server is running on, allows you to easily swap out keys without having to rebuild and redeploy, and prevents accidental sharing of your keys if you ever open source or otherwise share parts of your code.
Note that for teams working together on an application, there will be an obvious need to share an API key for your application. Our intention is not to discourage sharing along these lines, but rather sharing with people outside of your organization or who are working on other products.
Sometimes people post their API keys on the forums when they are asking for help or giving code examples. Please note that if you do this, we will edit the post to remove the key and then regenerate your key on your account.
As you might expect, any time money gets involved we take things very seriously. In any case where you're unsure about whether or not you're breaking our monetization policy you should default to excluding the feature in question, or speak with us directly before proceeding. The Riot Games API is provided as a tool for community creators to create a product that can be freely enjoyed by all players, it is not meant as a core means to generate revenue. We will always put the player's interests first and if we feel a product is taking advantage of players we'll move swiftly to have it removed. We do however have exceptions for advertisements (outlined further below) and some exceptions for Tournament entry fees (outlined in our Tournaments Policy section).
With that said, we are always looking for ways to support content creators who work on products that benefit the community, and we know it’s difficult to run these sometimes costly products at scale without income. We also understand that developers want to recoup the time and energy it takes to build and maintain these products. As such there are a few methods which allow developers to offset those costs, which we're fine with.
When in doubt, we will always be willing to have a discussion about what it is you wish to do, and how we can help you find a way to do it within our policies, or even make special exceptions for developer whom we think are driving significant player value. Simply reach out to us via Messaging in the Dev Portal to start a conversation!
We're fine with products passively collecting revenue from users via advertisements. From our perspective this is the preferred method of monetization to offset the cost of developer's products.
Paid Removal of Advertisements
We know it's sometimes difficult to create a tasteful, unobtrusive native experience with advertisements. This is part of the reason why the mobile industry has gravitated toward the paid removal of ads. As such, after contacting us first, we'll allow developers to support their products with the paid removal of advertisements.
Developers who are granted permission to monetize their product will be required to provide the same functionality and experience in their products with and without advertisements. For mobile and desktop products, the removal of advertisements is an action that needs to be executed within the application itself. We will not be allowing two separate versions of the product. The app itself must be free, with the option to remove advertisements as an in-app purchase.
In order to offer the paid removal of advertisements you must:
- Contact us via an App Note within your product's application
- Provide us with a visualization of your product with and without advertisements
- Accept the additional monetization terms within your product's application
Products that offer the paid removal of advertisements without contacting us first will be in violation of our policies and risk having their API key disabled.
We don't have any policies specifically prohibiting donations at this time, but we specifically reserve the right to require any form of monetization (including donations) be removed from a product. This is usually a judgment made on a case by case basis so honor the spirit of the rules which are meant to ensure every player can freely enjoy your product. Don't create an environment where users feel pressured to spend money (refer to the Crowdfunding section for more context).
Cryptocurrency or Blockchain
We do not allow any use of Riot Games data in products that use crypto currencies or use blockchain in any form.
We specifically disallow these platforms because by their very nature they grant benefits to those who have contributed. This is something we simply cannot support. If you have individuals that would like to contribute to your product out of the kindness of their heart that's fine but they can't be granted any special benefits. From our perspective, benefits for donors creates a dynamic that is too easily abused. Players can easily be pressured to donate if they want to gain access to specific features (which should never be the case). Additionally, developers can start to solely invest their time in developing donate-to-access features that provide no benefit to the rest of the community. The Riot Games API is free, publicly accessible, and was created to enrich the experience of the entire community.
Code of Conduct
Drive Constructive Feedback
"A problem well stated is a problem half solved." - Charles Kettering
Feedback is an important force in the decision making process of Riot Games. If you want to make your voice heard, taking the time to let us know how you're feeling about the API is a good place to start. When you give feedback, make sure you take a holistic approach. If you only give negative feedback, you may find that the changes you influence detract from what you initially enjoyed. Moreover, people are simply more likely to listen if you present yourself in a calm, well thought out manner.
That being said, don't be afraid to tell us if you feel strongly, and why. Try to be straightforward, specific, and always try to make your feedback direct and concise.
Facilitate Civil Discussion
"To disagree, one doesn't have to be disagreeable." - Barry Goldwater
As we mentioned earlier, we want you to give feedback, but being part of the community doesn't stop there. Whether you're in Discord, AnswerHub, Twitter, or elsewhere, there are plenty of people to talk to, and plenty of topics to discuss. Whether you're discussing API changes, rate limiting, or just talking about esports, we encourage you to share your thoughts with other community members.
When you choose to participate in a discussion with the rest of the community always try to be receptive to another player's point of view. If you keep an open mind, you'll be surprised what valuable information you can glean from your fellow players. Also, be mindful of how you present your point of view. If a player feels strongly on a subject, don't get caught up trying to have the last word. Just state your side and exit the conversation gracefully rather than give them the opportunity to pick a fight.
Leave No Newbie Behind!
"Be an opener of doors for such as come after thee." - Ralph Waldo Emerson
We all started somewhere, and if we're going to do justice to the people who helped us move up the ladder, we have to start by paying homage to our roots. If you see a developer struggling, or who clearly doesn't grasp the fundamentals of the API, try offering some constructive advice. If you do so in a civil and friendly manner it's likely that they will be receptive. Oftentimes they'll be downright grateful that somebody took the time to let them know how to improve.
Never get frustrated by an inexperienced developers questions. At some point you were just as green as they were. Have a little patience, and try and help the person. At the same time don't be discouraged if they aren't receptive. Some small percentage of the community will get hung up on the notion that they don't need anybody's help, and, no matter how politely you try to lend a hand, they won't want to hear it. That's no reason to give up on the rest of them!
Lead By Example
"Leadership is practiced not so much in words as in attitude and in actions." - Harold S. Geneen
If you share our vision of a game where players exercise good sportsmanship, help each other improve and form lasting friendships, then you've got to start living the dream before anybody else is willing to do so. It's all well and good to say you're on board for the revolution, but if you don't first make yourself a paragon of model behavior no one is going to be fooled. Nobody's asking you to be perfect, but we do want you to, whenever possible, strive to uphold the same standards of behavior that you expect everyone else to maintain.
These actions may result in removal from Riot Games Developer Community channels, and are explicitly forbidden in the Riot Games Developer Community:
- Offensive comments related to gender, gender identity and expression, sexual orientation, disability, mental illness, physical appearance, body size, race, or religion
- Unwelcome comments regarding a person’s lifestyle choices and practices
- NSFW content
- Threats of violence
- Incitement of violence towards any individual, including encouraging a person to commit suicide or to engage in self-harm
- Deliberate intimidation
- Sustained disruption of discussion
- Unwelcome sexual attention
- Continued one-on-one communication after requests to cease
- Publication of private communication without consent
- Pretending to be another user, using their name as your own
- No offensive usernames/nicknames/icons
- Consistently disruptive behavior
If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact the appropriate channel administrators. They will review your concern and take appropriate action.
We will respect confidentiality requests for the purpose of protecting victims of abuse. At our discretion, we may publicly name a person about whom we’ve received harassment complaints, or privately warn third parties about them. We will not name harassment victims without their affirmative consent.
The topics discussed below represent Riot’s policies as they stand right now. Our policies evolve and change as the community and our understanding of it grows. This page will be updated whenever any policies relevant to the API change. Violating any of the policies below can result in revocation of your access to the public API.
Ranked VS. Unranked Games
Last Updated: August 18th, 2017
We no longer have any policies dictating that ranked and unranked games should be treated any differently by third party developers.
Custom Ladders or Challenges
Last Updated: August 18th, 2017
Custom ladders and challenges have become common for unranked games, but have the potential to warp gameplay. Products should not host ladders or ranking systems that may alter or detract from the objective of the game. Custom ladders or ranking systems may be created as long as they aren’t replacements for official Riot systems. If aspects of a product alter gameplay or act as a replacement for an official system we may ask that the system, or product, be discontinued.
Products should never suggest custom challenges or contests to be carried out in a matchmade game unless they are communicated and accepted by all members of the participating team. Destroying the Nexus should always remain the primary intent of the game. A challenge or contest whose goal is anything other than achieving a victory is strictly forbidden. If a custom challenge or contest leads to dissatisfaction, frustration, or anger amongst teammates we may ask that the challenge, contest, system, or product be discontinued.
As always, if you think your product contains an edge case and you’re not sure if it will come into conflict with our policies, please reach out to us via the messages in the Dev Portal.
Last Updated: August 18th, 2017
Feel free to dissect players’ ranked and unranked match history to provide the community with detailed insights. Developers may display aggregated statistics to provide win rates, KDA, or other measures of their performance, however queues used to aggregate these stats must be clearly identified. For example, if you wanted to display a player’s Fiora stats you’d need to identify which queues you used to determine their win rate, KDA, etc. If you’re showing stats for a player’s recent games, you must indicate the stats were generated from every queue. The priority here is providing a clear context for a player’s stats.
Clearly identifying queues used to aggregate stats also applies when comparing aggregated stats between players. We never allow shaming based on a player’s performance which is reflected in our General Policies (above). You may choose to honor or glorify a player based on their performance, but we don’t allow for products to make assumptions that could lead to negative preconceptions about a player (i.e., tilted, toxic, feeder, etc.).
As always, if you think your product contains an edge case and you’re not sure if it will come into conflict with our policies, please reach out to us via the messages within your application.