Dev Blog: The Riot API

Riot·12/16/2014, 11:26:36 PM·0 votes·145,716 views

Hey guys, J. “Riot Sargonas” Eckert of the Developer Relations Team, here to chat with you about the place of 3rd party websites and applications in the League of Legends ecosystem. This has been a frequent topic of discussion amongst the community in the past year, and hopefully I can provide some insight into our vision for supporting developers in providing added value to both League of Legends and players, while at the same time protecting the integrity of the game and most importantly the player experience. Whether it comes in the form of moving 3rd parties off of scraping live services over the API for stability reasons, talking directly with 3rd parties to change the functionality of the apps to be more player focused, working internally to limit the effectiveness of cheating tools, or countless other initiatives, those goals will always be the driving factor.


Developing for League

As League and its community grows, so do the programs and websites created by third parties looking to add to the player experience. Sometimes these ventures provide fresh, fun ways to enhance the League experience, while other times they cross the threshold into providing unfair advantages that upset the competitive balance and integrity of the game, and in some cases harm the overall player experience. Our constant challenge in Developer Relations is to encourage and support positive growth, while trying to mitigate and protect against applications that cause a negative player experience.

With the League experience, there are opportunities that Riot can and should deliver to players, and ones that players should explore and build themselves. When it comes to ways that other players can help build on, there are all sorts of awesome ideas for expanding the League of Legends experience that are worth supporting, so let’s talk a bit about how help do this.


Supporting developers

When it comes to experiences that anyone can help craft for players, we want to do everything we can to empower passionate members of the community. To do that, we’ve created a suite of developer tools, including the Riot API. Over the course of the last year we’ve continually updated the API and Developer Portal with new features, with 50+ updates alone in the first 10 months, aimed at creating a robust toolset for great community contributions, and larger third party sites. So far more than 65,000 developers have created accounts that offer basic tool access suitable for testing, and we’ve approved around 1000 production keys that provide full-scale access. We’ve also put together policies and guidelines to help shape development using these tools in player-focused directions. The whole purpose of this is to see the community use these tools to create meaningful additions to the League experience, even in areas Riot hasn’t gotten to yet. But we also want to make sure they do so with the same player-focused approach Riot uses.


What works, and what doesn’t

So what kind of experiences are we trying to foster? Every day we’re surprised with new and innovative things created by the community. And that’s really the point - we want players to be creative and cook up stuff we’ve never even imagined. The fact is, there are tens of thousands of players for every Rioter, so the math is simply in players’ favor when it comes to thinking up new ideas! Player creations like Ward Score and LSI provide some creative methods for players to engage with League in new ways or even level up their play. As a personal experience, I thought I had my warding bases covered until I looked myself up on Ward Score and found out I was actually in the bottom 5% of my peers. Now I’m in the top 98% and my ability to be an effective contributor on my teams has improved (well, in that area). These are the sorts of things we love seeing the community create, and we want to do whatever we can to help you make more of the same!

Offering an environment friendly to third-party development isn’t without its pitfalls. From time to time things pop up that we (often aided by the community) identify as not necessarily player focused, or harmful to game balance and fair play. When this happens, our first step is to engage the developer in question and attempt to guide them in productive directions where they can create value in line with our goals for League. Sometimes this works, sometimes not, and in the worst cases they may even ignore us and require us to take further steps to protect the player experience, such as revoking API keys or making use of such applications by players to be a TOS violation. At the end of the day though, our motives are always the same: player experience always comes before anything else, such as visibility for an up and coming developer, or the success (or failure) of a third party business trying to break into the industry. Our goal isn't to police applications with a heavy hand, but rather to ensure applications are aligned with our vision for player experience. We want to see these groups providing these experiences succeed, but not at the cost of the players.

We are especially protective of League’s core gameplay experience. We believe the best possible player experience comes from a fully featured competitive toolkit available as soon as you download and install the game. You should never feel the need to first go to a third-party website and download a suite of mods that are required in order to keep up with everyone else. Hence our key policy - “Nothing external should interfere with players’ experience from the moment they press ‘Play’ to the end of match screen.” This usually comes into play with programs that provide gameplay information or functionality not obtainable through normal game interactions (e.g.., everything from specialized overlays, hacks, etc.), which we take a consistently firm stance against in order to preserve a level playing field for all players.


Protecting the landscape

Third-party development in an ecosystem as expansive as League’s is difficult to stay on top of, no doubt about it, and even harder to predict. We can’t see or anticipate every project in development, and sometimes can’t reach out to help developers better align their work with player interests until an app comes to our attention. When we do interact with developers, however, we always seek to respond in whatever way best serves the interests of the entire player base. We are actively trying to foster ALL positive growth in this area, from small independent developers to actual businesses, but we put the players first and are always going to hold player interests above companies simply out to make money. On the flip side, we appreciate your patience as we seek to address the new circumstances and challenges brought about about by the continuing evolution of the third-party scene.

Lastly, it’s important to point out that we never officially support any third-party work. While we may provide tools to empower outside development, the results aren’t an official part of the League of Legends experience and we can’t provide support in resolving issues stemming from them. We’re unable to vet the code of every third party, and can’t adequately test all variations of their applications with our game across the myriad of user setups out there. There is always a risk that external applications may cause game (or system) stability, contain malicious code, or a variety of other potential issues. We always advise you to take the proper steps to protect your account security and computer stability above all else (and to especially *never* share your account credentials with any Third Parties), and forego the use of any programs or applications that cause you concern.



TL;DR - We’ll always take the steps needed to protect players and the integrity of the core game experience. At the same time, we want to help foster growth within and around the League of Legends community by empowering players and outside developers to create experiences that enhance your experience in meaningful, positive ways. The key to this is maintaining a dialogue with players around new stuff in the scene, so we will continue to engage with the community to learn your thoughts on issues like these, and welcome feedback in the comments below. The rest of the team (StillRampant and Riot Tuxedo) and I will be hanging out to answer any questions you might have for the next few hours.

521 Comments

Thurisaz1/8/2015, 8:12:36 PM91 votes

Damn, lost my chance for first.

ArcaneMusic1/8/2015, 8:19:36 PM22 votes

Hmm, I have a ward score of 1539 :D Take that, other supports. item 2043

LegitDaveStrider1/8/2015, 8:27:21 PM18 votes

I really love the idea of players having the chance to change the game so much.
Rather than most games where the community only changes the game mostly through feedback, this gives those who love the game and have the necessary skill sets the ability to do far more for the game they hold dear. Rito please =)

Lord Imrhial1/8/2015, 9:16:52 PM10 votes

Yay! The API Team finally got a spotlight! :D

Keep it up guys and gals, or should I say guys and Schmick (Sorry if there are more ladies!!! Caitlyn )

jellybiscut1/8/2015, 8:35:21 PM9 votes

why dont yall (please excuse southern slang) create your own site instead of allowing 3rd party so that way you have complete control instead of doing multiple patches to your available data for them if this is a stupid question please downvote for waste of time.

Toraso1/8/2015, 8:20:16 PM7 votes

Nice update; helps remind everyone that you do your best in a world of over a million Lol players. Hope you guys have a great Lunar Revel planned!

LilStacey871/8/2015, 8:41:55 PM4 votes

Im not sure exactly what a 3rd party program is. I read the whole thing and was still a little lost lol. (Doing the Goku head scratch)

4dmiral1/8/2015, 8:17:19 PM3 votes

I think the API is great—will there ever be a way to gather historical data from league? The API is awesome for live data or tools/apps that need current info, but what's the best way to get historical or aggregate data about games played, items used, etc? Does that exist?

Dantilq1/8/2015, 8:57:10 PM2 votes

I was disappointed by the API, I wanted to make mods, my own game modes, make my own champion and stuff like that, not third party statistics tools :(