The Riot Games API: Transforms

The Riot Games API: Transforms

  • August 3, 2019
Table of Contents

The Riot Games API: Transforms

Hello all, Leigh Estes, aka RiotSchmick, here. I’m a software engineer at Riot Games working on the Riot Developer Experience team. Our responsibilities include providing the edge infrastructure that supports both internal and external developers.

I previously wrote a series on the infrastructure that supports our public API product. I’m excited to revisit this series to tell you more about a new part of our infrastructure – the feature we call transforms. I’ll outline the reasons that we felt transforms were a valuable feature to invest in and how we implemented them.

I’ll also dive into specific use cases for transforms that have added significant value. As mentioned in our previous articles, one of the original reasons we decided to build a public API was to prevent scraping of platform services. We needed to get it up and running as quickly as possible, because the scraping of the platform was putting a heavy load on the platform servers.

That additional load was affecting players’ ability to play games in certain regions. To build a public API product that external parties would use in lieu of scraping, we had to pull data from various unrelated services in order to provide the same data that players could scrape themselves. We found that all of these unrelated services used different conventions for request parameters, response data, paths, etc.

For example, across these services, we found the same concept referred to variably as “platform,” “shard,” “platformId,” “location,” and “region.” In addition, some services used REST conventions, some used RPC conventions, and some used a blend of the two.

Source: riotgames.com

Tags :
Share :
comments powered by Disqus

Related Posts

Netflix Play API: Building an Evolutionary Architecture

Netflix Play API: Building an Evolutionary Architecture

At QCon SF, Suudhan Rangarajan presented ‘Netflix Play API: Why We Built an Evolutionary Architecture’. Key takeaways from the talk included: services that have a single identity/responsibility are easier to maintain and upgrade; engineers should spend time identifying core decisions that need to be made when building a service, and determine whether these are ‘Type 1’ or ‘Type 2’ decisions which require thorough deliberation or rapid experimentation, respectively; and designing an ‘evolutionary architecture’, using tools like fitness functions, provides many benefits. Rangarajan, senior software engineer at Netflix, began the presentation by talking about two key business milestones within Netflix in 2016 that also had a large engineering impact.

Read More
Open Banking

Open Banking

Anca Zaharia and Jason Maude focus on the successes and pitfalls Starling Bank encountered in building Open Banking. They cover topics such as the OAuth security flow, the permissions-controlled API, obtaining permissions for third party actions, and verifying payees between banks.

Read More
I’m Not A Robot!

I’m Not A Robot!

There is no one way to secure your API that fits all situations. But, you can learn the schemes, study how the biggest social networks are dealing with it and find out the industry standard; then apply it to your project in the way you see fit. At the end of this article, you’ll have a clear understanding of the different schemes.

Read More