RiotGames / developer-relations

Riot Games Developer Ecosystem Bug Reporting
http://developer.riotgames.com
746 stars 44 forks source link

[DOC] Missing SEA regional routing value #394

Closed simivar closed 1 year ago

simivar commented 4 years ago

Bug Description
When reading documentation about League of Legends API we can see a table "Regional Routing Values":

Region Host
AMERICAS americas.api.riotgames.com
ASIA asia.api.riotgames.com
EUROPE europe.api.riotgames.com

Problem Description
When going into the documentation of Lor Ranked v1 API you can execute a request against SEA region which is missing from the documentation.

When going into the documentation of Account v1 API you can't execute a request against SEA region.

Expected Result
The same regions documented in every part of docs.

Developer Impact
It is misleading as to what regions are available for APIs and it's hard to create a general library for connecting with API.

iann838 commented 4 years ago

You DO NOT expect LOR regions to be documented on LOL docs, it makes totally no sense, and

Account v1 API you can't execute a request against SEA region.

This is totally false, you can execute against ASIA region just fine. If the regions are missing on those other docs, that is another story.

simivar commented 4 years ago

True, so there is one more issue: LOR regions are not at all documented.

Also, I don't think ASIA and SEA regions are the same as for Lor Ranked v1 API those two are separate entities listed in documentation.

I think that it would be a great addition if all APIs use the same list of regions going with the logic that less exceptions and different values across different endpoits means easier life for developers. Maybe that's just me.

MingweiSamuel commented 4 years ago

https://github.com/RiotGames/developer-relations/issues/296

RiotTuxedo commented 4 years ago

Most of this confusion is because the docs haven't been updated to reflect the current state of the API. I'm trying to get the docs updated ASAP, but other priorities keep jumping in front of this.

A high level summary goes like this.

There are two kinds of routing values; platform/shard routing values and regional routing values. Unfortunately, some of these overlap. Example time.

For the entirety of the Riot Games API, there are three regional routing values: americas, europe, and asia. These are used for global services or game agnostic services (services that serve multiple games).

Riot Games

These are APIs that aren't specific to any game, but rather Riot Games as a developer. The account-v1 API is an example of this. Accounts are global and are used for multiple games. As such, we use the regional routing values for account-v1. The data from each region is identical, so you should use the region that is closest to your services (if your product is hosted in NA use americas, if your product is in Europe use europe).

League of Legends

There are 11 platform routing values: BR1, EUN1, EUW1, JP1, KR, LA1, LA2, NA1, OC1, RU, TR1. The tournament-v4 API is a League of Legends global service. Which specifically means handles tournaments in all regions and geographically is located in North America. Thus it's available through the americas regional routing value. The tft-match-v4 API is a game agnostic service. It's available through all three regional routing values; americas, europe, and asia.

Legends of Runeterra

There are 4 shard routing values: americas, europe, asia, and sea (south east asia). There are currently no global services for Legends of Runeterra. The lor-match-v4 API is also a game agnostic service, but the locations of this service line up with the shards for Legends of Runeterra.

VALORANT

There are 6 shard routing values: ap, br, eu, kr, latam, na There are currently no global services for VALORANT.

Eventually all this information will make it into the official documentation. For now, I hope this clarifies any questions. I'll leave this issue open until the docs are updated.

ddcmendoza commented 3 years ago

Most of this confusion is because the docs haven't been updated to reflect the current state of the API. I'm trying to get the docs updated ASAP, but other priorities keep jumping in front of this.

A high level summary goes like this.

There are two kinds of routing values; platform/shard routing values and regional routing values. Unfortunately, some of these overlap. Example time.

For the entirety of the Riot Games API, there are three regional routing values: americas, europe, and asia. These are used for global services or game agnostic services (services that serve multiple games).

Riot Games

These are APIs that aren't specific to any game, but rather Riot Games as a developer. The account-v1 API is an example of this. Accounts are global and are used for multiple games. As such, we use the regional routing values for account-v1. The data from each region is identical, so you should use the region that is closest to your services (if your product is hosted in NA use americas, if your product is in Europe use europe).

League of Legends

There are 11 platform routing values: BR1, EUN1, EUW1, JP1, KR, LA1, LA2, NA1, OC1, RU, TR1. The tournament-v4 API is a League of Legends global service. Which specifically means handles tournaments in all regions and geographically is located in North America. Thus it's available through the americas regional routing value. The tft-match-v4 API is a game agnostic service. It's available through all three regional routing values; americas, europe, and asia.

Legends of Runeterra

There are 4 shard routing values: americas, europe, asia, and sea (south east asia). There are currently no global services for Legends of Runeterra. The lor-match-v4 API is also a game agnostic service, but the locations of this service line up with the shards for Legends of Runeterra.

VALORANT

There are 6 shard routing values: ap, br, eu, kr, latam, na There are currently no global services for VALORANT.

Eventually all this information will make it into the official documentation. For now, I hope this clarifies any questions. I'll leave this issue open until the docs are updated.

hello, I'm playing on SEA and using my account to test some endpoints (specifically the lor-match endpoints) and of course asia endpoints would just give me an empty list. So how do I check my own account for the lor-match endpoints? Thank you.

Apologies if my post is confusing, I'm still kinda new to software development.

tisbells commented 1 year ago

Closing out old issues. The SEA routing value serves the APAC shard (previously was ASIA and SEA) and this is documented in the endpoint. Feel free to reopen or comment if you feel this is in error.