riotskillissue 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- riotskillissue/__init__.py +5 -0
- riotskillissue/api/__init__.py +0 -0
- riotskillissue/api/client_mixin.py +131 -0
- riotskillissue/api/endpoints/account.py +188 -0
- riotskillissue/api/endpoints/champion-mastery.py +143 -0
- riotskillissue/api/endpoints/champion.py +40 -0
- riotskillissue/api/endpoints/champion_mastery.py +154 -0
- riotskillissue/api/endpoints/clash.py +176 -0
- riotskillissue/api/endpoints/league-exp.py +54 -0
- riotskillissue/api/endpoints/league.py +226 -0
- riotskillissue/api/endpoints/league_exp.py +56 -0
- riotskillissue/api/endpoints/lol-challenges.py +197 -0
- riotskillissue/api/endpoints/lol-rso-match.py +124 -0
- riotskillissue/api/endpoints/lol-status.py +38 -0
- riotskillissue/api/endpoints/lol_challenges.py +214 -0
- riotskillissue/api/endpoints/lol_rso_match.py +132 -0
- riotskillissue/api/endpoints/lol_status.py +40 -0
- riotskillissue/api/endpoints/lor-deck.py +65 -0
- riotskillissue/api/endpoints/lor-inventory.py +38 -0
- riotskillissue/api/endpoints/lor-match.py +73 -0
- riotskillissue/api/endpoints/lor-ranked.py +38 -0
- riotskillissue/api/endpoints/lor-status.py +38 -0
- riotskillissue/api/endpoints/lor_deck.py +70 -0
- riotskillissue/api/endpoints/lor_inventory.py +40 -0
- riotskillissue/api/endpoints/lor_match.py +78 -0
- riotskillissue/api/endpoints/lor_ranked.py +40 -0
- riotskillissue/api/endpoints/lor_status.py +40 -0
- riotskillissue/api/endpoints/match.py +170 -0
- riotskillissue/api/endpoints/riftbound-content.py +42 -0
- riotskillissue/api/endpoints/riftbound_content.py +44 -0
- riotskillissue/api/endpoints/spectator-tft.py +42 -0
- riotskillissue/api/endpoints/spectator.py +44 -0
- riotskillissue/api/endpoints/spectator_tft.py +44 -0
- riotskillissue/api/endpoints/summoner.py +74 -0
- riotskillissue/api/endpoints/tft-league.py +240 -0
- riotskillissue/api/endpoints/tft-match.py +89 -0
- riotskillissue/api/endpoints/tft-status.py +38 -0
- riotskillissue/api/endpoints/tft-summoner.py +69 -0
- riotskillissue/api/endpoints/tft_league.py +260 -0
- riotskillissue/api/endpoints/tft_match.py +94 -0
- riotskillissue/api/endpoints/tft_status.py +40 -0
- riotskillissue/api/endpoints/tft_summoner.py +74 -0
- riotskillissue/api/endpoints/tournament-stub.py +162 -0
- riotskillissue/api/endpoints/tournament.py +243 -0
- riotskillissue/api/endpoints/tournament_stub.py +176 -0
- riotskillissue/api/endpoints/val-console-match.py +108 -0
- riotskillissue/api/endpoints/val-console-ranked.py +54 -0
- riotskillissue/api/endpoints/val-content.py +42 -0
- riotskillissue/api/endpoints/val-match.py +104 -0
- riotskillissue/api/endpoints/val-ranked.py +50 -0
- riotskillissue/api/endpoints/val-status.py +38 -0
- riotskillissue/api/endpoints/val_console_match.py +116 -0
- riotskillissue/api/endpoints/val_console_ranked.py +56 -0
- riotskillissue/api/endpoints/val_content.py +44 -0
- riotskillissue/api/endpoints/val_match.py +112 -0
- riotskillissue/api/endpoints/val_ranked.py +52 -0
- riotskillissue/api/endpoints/val_status.py +40 -0
- riotskillissue/api/models.py +4295 -0
- riotskillissue/auth.py +76 -0
- riotskillissue/cli.py +84 -0
- riotskillissue/core/cache.py +60 -0
- riotskillissue/core/client.py +47 -0
- riotskillissue/core/config.py +19 -0
- riotskillissue/core/http.py +144 -0
- riotskillissue/core/pagination.py +63 -0
- riotskillissue/core/ratelimit.py +185 -0
- riotskillissue/core/types.py +57 -0
- riotskillissue/core/utils.py +25 -0
- riotskillissue/static.py +71 -0
- riotskillissue/testing.py +46 -0
- riotskillissue-0.1.0.dist-info/METADATA +29 -0
- riotskillissue-0.1.0.dist-info/RECORD +75 -0
- riotskillissue-0.1.0.dist-info/WHEEL +4 -0
- riotskillissue-0.1.0.dist-info/entry_points.txt +2 -0
- riotskillissue-0.1.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
# Generated Code. Do not edit.
|
|
2
|
+
from typing import Optional, List, Dict, Any
|
|
3
|
+
from riotskillissue.core.http import HttpClient
|
|
4
|
+
from riotskillissue.api.models import *
|
|
5
|
+
|
|
6
|
+
class ClashApi:
|
|
7
|
+
def __init__(self, http: HttpClient):
|
|
8
|
+
self.http = http
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
async def get_players_by_puuid(
|
|
12
|
+
self,
|
|
13
|
+
region: str,
|
|
14
|
+
|
|
15
|
+
puuid: str,
|
|
16
|
+
|
|
17
|
+
) -> List[clash_v1_PlayerDto]:
|
|
18
|
+
"""
|
|
19
|
+
Get players by puuid
|
|
20
|
+
"""
|
|
21
|
+
path = "/lol/clash/v1/players/by-puuid/{puuid}"
|
|
22
|
+
# Replace path params
|
|
23
|
+
|
|
24
|
+
path = path.replace("{" + "puuid" + "}", str(puuid))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# Query params
|
|
28
|
+
params = {
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
# Filter None
|
|
32
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
33
|
+
|
|
34
|
+
response = await self.http.request(
|
|
35
|
+
method="GET",
|
|
36
|
+
url=path,
|
|
37
|
+
region_or_platform=region,
|
|
38
|
+
params=params
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
from pydantic import TypeAdapter
|
|
42
|
+
return TypeAdapter(List[clash_v1_PlayerDto]).validate_python(response.json())
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
async def get_team_by_id(
|
|
46
|
+
self,
|
|
47
|
+
region: str,
|
|
48
|
+
|
|
49
|
+
teamId: str,
|
|
50
|
+
|
|
51
|
+
) -> clash_v1_TeamDto:
|
|
52
|
+
"""
|
|
53
|
+
Get team by ID.
|
|
54
|
+
"""
|
|
55
|
+
path = "/lol/clash/v1/teams/{teamId}"
|
|
56
|
+
# Replace path params
|
|
57
|
+
|
|
58
|
+
path = path.replace("{" + "teamId" + "}", str(teamId))
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
# Query params
|
|
62
|
+
params = {
|
|
63
|
+
|
|
64
|
+
}
|
|
65
|
+
# Filter None
|
|
66
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
67
|
+
|
|
68
|
+
response = await self.http.request(
|
|
69
|
+
method="GET",
|
|
70
|
+
url=path,
|
|
71
|
+
region_or_platform=region,
|
|
72
|
+
params=params
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
from pydantic import TypeAdapter
|
|
76
|
+
return TypeAdapter(clash_v1_TeamDto).validate_python(response.json())
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
async def get_tournaments(
|
|
80
|
+
self,
|
|
81
|
+
region: str,
|
|
82
|
+
|
|
83
|
+
) -> List[clash_v1_TournamentDto]:
|
|
84
|
+
"""
|
|
85
|
+
Get all active or upcoming tournaments.
|
|
86
|
+
"""
|
|
87
|
+
path = "/lol/clash/v1/tournaments"
|
|
88
|
+
# Replace path params
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
# Query params
|
|
92
|
+
params = {
|
|
93
|
+
|
|
94
|
+
}
|
|
95
|
+
# Filter None
|
|
96
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
97
|
+
|
|
98
|
+
response = await self.http.request(
|
|
99
|
+
method="GET",
|
|
100
|
+
url=path,
|
|
101
|
+
region_or_platform=region,
|
|
102
|
+
params=params
|
|
103
|
+
)
|
|
104
|
+
|
|
105
|
+
from pydantic import TypeAdapter
|
|
106
|
+
return TypeAdapter(List[clash_v1_TournamentDto]).validate_python(response.json())
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
async def get_tournament_by_team(
|
|
110
|
+
self,
|
|
111
|
+
region: str,
|
|
112
|
+
|
|
113
|
+
teamId: str,
|
|
114
|
+
|
|
115
|
+
) -> clash_v1_TournamentDto:
|
|
116
|
+
"""
|
|
117
|
+
Get tournament by team ID.
|
|
118
|
+
"""
|
|
119
|
+
path = "/lol/clash/v1/tournaments/by-team/{teamId}"
|
|
120
|
+
# Replace path params
|
|
121
|
+
|
|
122
|
+
path = path.replace("{" + "teamId" + "}", str(teamId))
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
# Query params
|
|
126
|
+
params = {
|
|
127
|
+
|
|
128
|
+
}
|
|
129
|
+
# Filter None
|
|
130
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
131
|
+
|
|
132
|
+
response = await self.http.request(
|
|
133
|
+
method="GET",
|
|
134
|
+
url=path,
|
|
135
|
+
region_or_platform=region,
|
|
136
|
+
params=params
|
|
137
|
+
)
|
|
138
|
+
|
|
139
|
+
from pydantic import TypeAdapter
|
|
140
|
+
return TypeAdapter(clash_v1_TournamentDto).validate_python(response.json())
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
async def get_tournament_by_id(
|
|
144
|
+
self,
|
|
145
|
+
region: str,
|
|
146
|
+
|
|
147
|
+
tournamentId: int,
|
|
148
|
+
|
|
149
|
+
) -> clash_v1_TournamentDto:
|
|
150
|
+
"""
|
|
151
|
+
Get tournament by ID.
|
|
152
|
+
"""
|
|
153
|
+
path = "/lol/clash/v1/tournaments/{tournamentId}"
|
|
154
|
+
# Replace path params
|
|
155
|
+
|
|
156
|
+
path = path.replace("{" + "tournamentId" + "}", str(tournamentId))
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
# Query params
|
|
160
|
+
params = {
|
|
161
|
+
|
|
162
|
+
}
|
|
163
|
+
# Filter None
|
|
164
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
165
|
+
|
|
166
|
+
response = await self.http.request(
|
|
167
|
+
method="GET",
|
|
168
|
+
url=path,
|
|
169
|
+
region_or_platform=region,
|
|
170
|
+
params=params
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
from pydantic import TypeAdapter
|
|
174
|
+
return TypeAdapter(clash_v1_TournamentDto).validate_python(response.json())
|
|
175
|
+
|
|
176
|
+
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Generated Code. Do not edit.
|
|
2
|
+
from typing import Optional, List, Dict, Any
|
|
3
|
+
from riot.core.http import HttpClient
|
|
4
|
+
from riot.core.types import Region, Platform
|
|
5
|
+
from riot.api.models import *
|
|
6
|
+
|
|
7
|
+
class League-expApi:
|
|
8
|
+
def __init__(self, http: HttpClient):
|
|
9
|
+
self.http = http
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
async def get_league_entries(
|
|
13
|
+
self,
|
|
14
|
+
region: str,
|
|
15
|
+
|
|
16
|
+
queue: str,
|
|
17
|
+
|
|
18
|
+
tier: str,
|
|
19
|
+
|
|
20
|
+
division: str,
|
|
21
|
+
|
|
22
|
+
page: int = None,
|
|
23
|
+
|
|
24
|
+
) -> List[league-exp-v4.LeagueEntryDTO]:
|
|
25
|
+
"""
|
|
26
|
+
Get all the league entries.
|
|
27
|
+
"""
|
|
28
|
+
path = "/lol/league-exp/v4/entries/{queue}/{tier}/{division}"
|
|
29
|
+
# Replace path params
|
|
30
|
+
|
|
31
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
32
|
+
|
|
33
|
+
path = path.replace("{" + "tier" + "}", str(tier))
|
|
34
|
+
|
|
35
|
+
path = path.replace("{" + "division" + "}", str(division))
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# Query params
|
|
39
|
+
params = {
|
|
40
|
+
|
|
41
|
+
"page": page,
|
|
42
|
+
|
|
43
|
+
}
|
|
44
|
+
# Filter None
|
|
45
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
46
|
+
|
|
47
|
+
response = await self.http.request(
|
|
48
|
+
method="GET",
|
|
49
|
+
url=path,
|
|
50
|
+
region_or_platform=region,
|
|
51
|
+
params=params
|
|
52
|
+
)
|
|
53
|
+
return response.json()
|
|
54
|
+
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# Generated Code. Do not edit.
|
|
2
|
+
from typing import Optional, List, Dict, Any
|
|
3
|
+
from riotskillissue.core.http import HttpClient
|
|
4
|
+
from riotskillissue.api.models import *
|
|
5
|
+
|
|
6
|
+
class LeagueApi:
|
|
7
|
+
def __init__(self, http: HttpClient):
|
|
8
|
+
self.http = http
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
async def get_challenger_league(
|
|
12
|
+
self,
|
|
13
|
+
region: str,
|
|
14
|
+
|
|
15
|
+
queue: str,
|
|
16
|
+
|
|
17
|
+
) -> league_v4_LeagueListDTO:
|
|
18
|
+
"""
|
|
19
|
+
Get the challenger league for given queue.
|
|
20
|
+
"""
|
|
21
|
+
path = "/lol/league/v4/challengerleagues/by-queue/{queue}"
|
|
22
|
+
# Replace path params
|
|
23
|
+
|
|
24
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# Query params
|
|
28
|
+
params = {
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
# Filter None
|
|
32
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
33
|
+
|
|
34
|
+
response = await self.http.request(
|
|
35
|
+
method="GET",
|
|
36
|
+
url=path,
|
|
37
|
+
region_or_platform=region,
|
|
38
|
+
params=params
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
from pydantic import TypeAdapter
|
|
42
|
+
return TypeAdapter(league_v4_LeagueListDTO).validate_python(response.json())
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
async def get_league_entries_by_puuid(
|
|
46
|
+
self,
|
|
47
|
+
region: str,
|
|
48
|
+
|
|
49
|
+
encryptedPUUID: str,
|
|
50
|
+
|
|
51
|
+
) -> List[league_v4_LeagueEntryDTO]:
|
|
52
|
+
"""
|
|
53
|
+
Get league entries in all queues for a given puuid
|
|
54
|
+
"""
|
|
55
|
+
path = "/lol/league/v4/entries/by-puuid/{encryptedPUUID}"
|
|
56
|
+
# Replace path params
|
|
57
|
+
|
|
58
|
+
path = path.replace("{" + "encryptedPUUID" + "}", str(encryptedPUUID))
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
# Query params
|
|
62
|
+
params = {
|
|
63
|
+
|
|
64
|
+
}
|
|
65
|
+
# Filter None
|
|
66
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
67
|
+
|
|
68
|
+
response = await self.http.request(
|
|
69
|
+
method="GET",
|
|
70
|
+
url=path,
|
|
71
|
+
region_or_platform=region,
|
|
72
|
+
params=params
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
from pydantic import TypeAdapter
|
|
76
|
+
return TypeAdapter(List[league_v4_LeagueEntryDTO]).validate_python(response.json())
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
async def get_league_entries(
|
|
80
|
+
self,
|
|
81
|
+
region: str,
|
|
82
|
+
|
|
83
|
+
division: str,
|
|
84
|
+
|
|
85
|
+
queue: str,
|
|
86
|
+
|
|
87
|
+
tier: str,
|
|
88
|
+
|
|
89
|
+
page: int = None,
|
|
90
|
+
|
|
91
|
+
) -> List[league_v4_LeagueEntryDTO]:
|
|
92
|
+
"""
|
|
93
|
+
Get all the league entries.
|
|
94
|
+
"""
|
|
95
|
+
path = "/lol/league/v4/entries/{queue}/{tier}/{division}"
|
|
96
|
+
# Replace path params
|
|
97
|
+
|
|
98
|
+
path = path.replace("{" + "division" + "}", str(division))
|
|
99
|
+
|
|
100
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
101
|
+
|
|
102
|
+
path = path.replace("{" + "tier" + "}", str(tier))
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
# Query params
|
|
106
|
+
params = {
|
|
107
|
+
|
|
108
|
+
"page": page,
|
|
109
|
+
|
|
110
|
+
}
|
|
111
|
+
# Filter None
|
|
112
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
113
|
+
|
|
114
|
+
response = await self.http.request(
|
|
115
|
+
method="GET",
|
|
116
|
+
url=path,
|
|
117
|
+
region_or_platform=region,
|
|
118
|
+
params=params
|
|
119
|
+
)
|
|
120
|
+
|
|
121
|
+
from pydantic import TypeAdapter
|
|
122
|
+
return TypeAdapter(List[league_v4_LeagueEntryDTO]).validate_python(response.json())
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
async def get_grandmaster_league(
|
|
126
|
+
self,
|
|
127
|
+
region: str,
|
|
128
|
+
|
|
129
|
+
queue: str,
|
|
130
|
+
|
|
131
|
+
) -> league_v4_LeagueListDTO:
|
|
132
|
+
"""
|
|
133
|
+
Get the grandmaster league of a specific queue.
|
|
134
|
+
"""
|
|
135
|
+
path = "/lol/league/v4/grandmasterleagues/by-queue/{queue}"
|
|
136
|
+
# Replace path params
|
|
137
|
+
|
|
138
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
# Query params
|
|
142
|
+
params = {
|
|
143
|
+
|
|
144
|
+
}
|
|
145
|
+
# Filter None
|
|
146
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
147
|
+
|
|
148
|
+
response = await self.http.request(
|
|
149
|
+
method="GET",
|
|
150
|
+
url=path,
|
|
151
|
+
region_or_platform=region,
|
|
152
|
+
params=params
|
|
153
|
+
)
|
|
154
|
+
|
|
155
|
+
from pydantic import TypeAdapter
|
|
156
|
+
return TypeAdapter(league_v4_LeagueListDTO).validate_python(response.json())
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
async def get_league_by_id(
|
|
160
|
+
self,
|
|
161
|
+
region: str,
|
|
162
|
+
|
|
163
|
+
leagueId: str,
|
|
164
|
+
|
|
165
|
+
) -> league_v4_LeagueListDTO:
|
|
166
|
+
"""
|
|
167
|
+
Get league with given ID, including inactive entries.
|
|
168
|
+
"""
|
|
169
|
+
path = "/lol/league/v4/leagues/{leagueId}"
|
|
170
|
+
# Replace path params
|
|
171
|
+
|
|
172
|
+
path = path.replace("{" + "leagueId" + "}", str(leagueId))
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
# Query params
|
|
176
|
+
params = {
|
|
177
|
+
|
|
178
|
+
}
|
|
179
|
+
# Filter None
|
|
180
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
181
|
+
|
|
182
|
+
response = await self.http.request(
|
|
183
|
+
method="GET",
|
|
184
|
+
url=path,
|
|
185
|
+
region_or_platform=region,
|
|
186
|
+
params=params
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
from pydantic import TypeAdapter
|
|
190
|
+
return TypeAdapter(league_v4_LeagueListDTO).validate_python(response.json())
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
async def get_master_league(
|
|
194
|
+
self,
|
|
195
|
+
region: str,
|
|
196
|
+
|
|
197
|
+
queue: str,
|
|
198
|
+
|
|
199
|
+
) -> league_v4_LeagueListDTO:
|
|
200
|
+
"""
|
|
201
|
+
Get the master league for given queue.
|
|
202
|
+
"""
|
|
203
|
+
path = "/lol/league/v4/masterleagues/by-queue/{queue}"
|
|
204
|
+
# Replace path params
|
|
205
|
+
|
|
206
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
# Query params
|
|
210
|
+
params = {
|
|
211
|
+
|
|
212
|
+
}
|
|
213
|
+
# Filter None
|
|
214
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
215
|
+
|
|
216
|
+
response = await self.http.request(
|
|
217
|
+
method="GET",
|
|
218
|
+
url=path,
|
|
219
|
+
region_or_platform=region,
|
|
220
|
+
params=params
|
|
221
|
+
)
|
|
222
|
+
|
|
223
|
+
from pydantic import TypeAdapter
|
|
224
|
+
return TypeAdapter(league_v4_LeagueListDTO).validate_python(response.json())
|
|
225
|
+
|
|
226
|
+
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Generated Code. Do not edit.
|
|
2
|
+
from typing import Optional, List, Dict, Any
|
|
3
|
+
from riotskillissue.core.http import HttpClient
|
|
4
|
+
from riotskillissue.api.models import *
|
|
5
|
+
|
|
6
|
+
class League_expApi:
|
|
7
|
+
def __init__(self, http: HttpClient):
|
|
8
|
+
self.http = http
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
async def get_league_entries(
|
|
12
|
+
self,
|
|
13
|
+
region: str,
|
|
14
|
+
|
|
15
|
+
division: str,
|
|
16
|
+
|
|
17
|
+
queue: str,
|
|
18
|
+
|
|
19
|
+
tier: str,
|
|
20
|
+
|
|
21
|
+
page: int = None,
|
|
22
|
+
|
|
23
|
+
) -> List[league_exp_v4_LeagueEntryDTO]:
|
|
24
|
+
"""
|
|
25
|
+
Get all the league entries.
|
|
26
|
+
"""
|
|
27
|
+
path = "/lol/league-exp/v4/entries/{queue}/{tier}/{division}"
|
|
28
|
+
# Replace path params
|
|
29
|
+
|
|
30
|
+
path = path.replace("{" + "division" + "}", str(division))
|
|
31
|
+
|
|
32
|
+
path = path.replace("{" + "queue" + "}", str(queue))
|
|
33
|
+
|
|
34
|
+
path = path.replace("{" + "tier" + "}", str(tier))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
# Query params
|
|
38
|
+
params = {
|
|
39
|
+
|
|
40
|
+
"page": page,
|
|
41
|
+
|
|
42
|
+
}
|
|
43
|
+
# Filter None
|
|
44
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
45
|
+
|
|
46
|
+
response = await self.http.request(
|
|
47
|
+
method="GET",
|
|
48
|
+
url=path,
|
|
49
|
+
region_or_platform=region,
|
|
50
|
+
params=params
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
from pydantic import TypeAdapter
|
|
54
|
+
return TypeAdapter(List[league_exp_v4_LeagueEntryDTO]).validate_python(response.json())
|
|
55
|
+
|
|
56
|
+
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Generated Code. Do not edit.
|
|
2
|
+
from typing import Optional, List, Dict, Any
|
|
3
|
+
from riot.core.http import HttpClient
|
|
4
|
+
from riot.core.types import Region, Platform
|
|
5
|
+
from riot.api.models import *
|
|
6
|
+
|
|
7
|
+
class Lol-challengesApi:
|
|
8
|
+
def __init__(self, http: HttpClient):
|
|
9
|
+
self.http = http
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
async def get_all_challenge_configs(
|
|
13
|
+
self,
|
|
14
|
+
region: str,
|
|
15
|
+
|
|
16
|
+
) -> List[lol-challenges-v1.ChallengeConfigInfoDto]:
|
|
17
|
+
"""
|
|
18
|
+
List of all basic challenge configuration information (includes all translations for names and descriptions)
|
|
19
|
+
"""
|
|
20
|
+
path = "/lol/challenges/v1/challenges/config"
|
|
21
|
+
# Replace path params
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
# Query params
|
|
25
|
+
params = {
|
|
26
|
+
|
|
27
|
+
}
|
|
28
|
+
# Filter None
|
|
29
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
30
|
+
|
|
31
|
+
response = await self.http.request(
|
|
32
|
+
method="GET",
|
|
33
|
+
url=path,
|
|
34
|
+
region_or_platform=region,
|
|
35
|
+
params=params
|
|
36
|
+
)
|
|
37
|
+
return response.json()
|
|
38
|
+
|
|
39
|
+
async def get_all_challenge_percentiles(
|
|
40
|
+
self,
|
|
41
|
+
region: str,
|
|
42
|
+
|
|
43
|
+
) -> Dict[str, Dict[str, float]]:
|
|
44
|
+
"""
|
|
45
|
+
Map of level to percentile of players who have achieved it - keys: ChallengeId -> Season -> Level -> percentile of players who achieved it
|
|
46
|
+
"""
|
|
47
|
+
path = "/lol/challenges/v1/challenges/percentiles"
|
|
48
|
+
# Replace path params
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# Query params
|
|
52
|
+
params = {
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
# Filter None
|
|
56
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
57
|
+
|
|
58
|
+
response = await self.http.request(
|
|
59
|
+
method="GET",
|
|
60
|
+
url=path,
|
|
61
|
+
region_or_platform=region,
|
|
62
|
+
params=params
|
|
63
|
+
)
|
|
64
|
+
return response.json()
|
|
65
|
+
|
|
66
|
+
async def get_challenge_configs(
|
|
67
|
+
self,
|
|
68
|
+
region: str,
|
|
69
|
+
|
|
70
|
+
challengeId: int,
|
|
71
|
+
|
|
72
|
+
) -> lol-challenges-v1.ChallengeConfigInfoDto:
|
|
73
|
+
"""
|
|
74
|
+
Get challenge configuration (REST)
|
|
75
|
+
"""
|
|
76
|
+
path = "/lol/challenges/v1/challenges/{challengeId}/config"
|
|
77
|
+
# Replace path params
|
|
78
|
+
|
|
79
|
+
path = path.replace("{" + "challengeId" + "}", str(challengeId))
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
# Query params
|
|
83
|
+
params = {
|
|
84
|
+
|
|
85
|
+
}
|
|
86
|
+
# Filter None
|
|
87
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
88
|
+
|
|
89
|
+
response = await self.http.request(
|
|
90
|
+
method="GET",
|
|
91
|
+
url=path,
|
|
92
|
+
region_or_platform=region,
|
|
93
|
+
params=params
|
|
94
|
+
)
|
|
95
|
+
return response.json()
|
|
96
|
+
|
|
97
|
+
async def get_challenge_leaderboards(
|
|
98
|
+
self,
|
|
99
|
+
region: str,
|
|
100
|
+
|
|
101
|
+
level: str,
|
|
102
|
+
|
|
103
|
+
challengeId: int,
|
|
104
|
+
|
|
105
|
+
limit: int = None,
|
|
106
|
+
|
|
107
|
+
) -> List[lol-challenges-v1.ApexPlayerInfoDto]:
|
|
108
|
+
"""
|
|
109
|
+
Return top players for each level. Level must be MASTER, GRANDMASTER or CHALLENGER.
|
|
110
|
+
"""
|
|
111
|
+
path = "/lol/challenges/v1/challenges/{challengeId}/leaderboards/by-level/{level}"
|
|
112
|
+
# Replace path params
|
|
113
|
+
|
|
114
|
+
path = path.replace("{" + "level" + "}", str(level))
|
|
115
|
+
|
|
116
|
+
path = path.replace("{" + "challengeId" + "}", str(challengeId))
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
# Query params
|
|
120
|
+
params = {
|
|
121
|
+
|
|
122
|
+
"limit": limit,
|
|
123
|
+
|
|
124
|
+
}
|
|
125
|
+
# Filter None
|
|
126
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
127
|
+
|
|
128
|
+
response = await self.http.request(
|
|
129
|
+
method="GET",
|
|
130
|
+
url=path,
|
|
131
|
+
region_or_platform=region,
|
|
132
|
+
params=params
|
|
133
|
+
)
|
|
134
|
+
return response.json()
|
|
135
|
+
|
|
136
|
+
async def get_challenge_percentiles(
|
|
137
|
+
self,
|
|
138
|
+
region: str,
|
|
139
|
+
|
|
140
|
+
challengeId: int,
|
|
141
|
+
|
|
142
|
+
) -> Dict[str, float]:
|
|
143
|
+
"""
|
|
144
|
+
Map of level to percentile of players who have achieved it
|
|
145
|
+
"""
|
|
146
|
+
path = "/lol/challenges/v1/challenges/{challengeId}/percentiles"
|
|
147
|
+
# Replace path params
|
|
148
|
+
|
|
149
|
+
path = path.replace("{" + "challengeId" + "}", str(challengeId))
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
# Query params
|
|
153
|
+
params = {
|
|
154
|
+
|
|
155
|
+
}
|
|
156
|
+
# Filter None
|
|
157
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
158
|
+
|
|
159
|
+
response = await self.http.request(
|
|
160
|
+
method="GET",
|
|
161
|
+
url=path,
|
|
162
|
+
region_or_platform=region,
|
|
163
|
+
params=params
|
|
164
|
+
)
|
|
165
|
+
return response.json()
|
|
166
|
+
|
|
167
|
+
async def get_player_data(
|
|
168
|
+
self,
|
|
169
|
+
region: str,
|
|
170
|
+
|
|
171
|
+
puuid: str,
|
|
172
|
+
|
|
173
|
+
) -> lol-challenges-v1.PlayerInfoDto:
|
|
174
|
+
"""
|
|
175
|
+
Returns player information with list of all progressed challenges (REST)
|
|
176
|
+
"""
|
|
177
|
+
path = "/lol/challenges/v1/player-data/{puuid}"
|
|
178
|
+
# Replace path params
|
|
179
|
+
|
|
180
|
+
path = path.replace("{" + "puuid" + "}", str(puuid))
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
# Query params
|
|
184
|
+
params = {
|
|
185
|
+
|
|
186
|
+
}
|
|
187
|
+
# Filter None
|
|
188
|
+
params = {k: v for k, v in params.items() if v is not None}
|
|
189
|
+
|
|
190
|
+
response = await self.http.request(
|
|
191
|
+
method="GET",
|
|
192
|
+
url=path,
|
|
193
|
+
region_or_platform=region,
|
|
194
|
+
params=params
|
|
195
|
+
)
|
|
196
|
+
return response.json()
|
|
197
|
+
|