Skip to content

Commit 0eb2590

Browse files
committed
Add team stat endpoints
1 parent 08f34c0 commit 0eb2590

File tree

1 file changed

+52
-4
lines changed

1 file changed

+52
-4
lines changed

octanegg/api.py

+52-4
Original file line numberDiff line numberDiff line change
@@ -188,10 +188,10 @@ def get_game_records(self, event: Optional[str] = None, stage: Optional[int] = N
188188
return results
189189

190190
def get_series_records(self, event: Optional[str] = None, stage: Optional[int] = None, match: Optional[str] = None,
191-
qualifier: Optional[bool] = None, tier: Optional[str] = None, region: Optional[str] = None,
192-
mode: Optional[int] = None, group: Optional[str] = None, before: Optional[str] = None,
193-
after: Optional[str] = None, best_of: Optional[str] = None, player: Optional[str] = None,
194-
team: Optional[str] = None) -> list:
191+
qualifier: Optional[bool] = None, tier: Optional[str] = None, region: Optional[str] = None,
192+
mode: Optional[int] = None, group: Optional[str] = None, before: Optional[str] = None,
193+
after: Optional[str] = None, best_of: Optional[str] = None, player: Optional[str] = None,
194+
team: Optional[str] = None) -> list:
195195
endpoint = f'{API_BASE_URL}/records/series'
196196
param_names = {'event', 'stage', 'match', 'qualifier', 'tier', 'region', 'mode', 'group',
197197
'before', 'after', 'player', 'team'}
@@ -265,3 +265,51 @@ def get_player_stats_by_event(self, stat: str, event: Optional[str] = None, stag
265265

266266
results = self._get_results(endpoint, params).get('stats')
267267
return results
268+
269+
def get_team_stats(self, stat: str, event: Optional[str] = None, stage: Optional[int] = None,
270+
match: Optional[str] = None, qualifier: Optional[bool] = None,
271+
winner: Optional[bool] = None, nationality: Optional[str] = None, tier: Optional[str] = None,
272+
region: Optional[str] = None, mode: Optional[int] = None, group: Optional[str] = None,
273+
before: Optional[str] = None, after: Optional[str] = None, best_of: Optional[int] = None,
274+
team: Optional[str] = None) -> list:
275+
endpoint = f'{API_BASE_URL}/stats/teams'
276+
param_names = {'stat', 'event', 'stage', 'match', 'qualifier', 'winner', 'nationality', 'tier', 'region',
277+
'mode', 'group', 'before', 'after', 'team'}
278+
params = {'bestOf': best_of}
279+
params |= {k: v for k, v in locals().items() if (k in param_names) and (v is not None)}
280+
281+
results = self._get_results(endpoint, params).get('stats')
282+
return results
283+
284+
def get_team_stats_by_opponents(self, stat: str, event: Optional[str] = None, stage: Optional[int] = None,
285+
match: Optional[str] = None, qualifier: Optional[bool] = None,
286+
winner: Optional[bool] = None, nationality: Optional[str] = None,
287+
tier: Optional[str] = None, region: Optional[str] = None,
288+
mode: Optional[int] = None, group: Optional[str] = None,
289+
before: Optional[str] = None, after: Optional[str] = None,
290+
best_of: Optional[int] = None,
291+
team: Optional[str] = None) -> list:
292+
endpoint = f'{API_BASE_URL}/stats/teams/opponents'
293+
param_names = {'stat', 'event', 'stage', 'match', 'qualifier', 'winner', 'nationality', 'tier', 'region',
294+
'mode', 'group', 'before', 'after', 'team'}
295+
params = {'bestOf': best_of}
296+
params |= {k: v for k, v in locals().items() if (k in param_names) and (v is not None)}
297+
298+
results = self._get_results(endpoint, params).get('stats')
299+
return results
300+
301+
def get_team_stats_by_event(self, stat: str, event: Optional[str] = None, stage: Optional[int] = None,
302+
match: Optional[str] = None, qualifier: Optional[bool] = None,
303+
winner: Optional[bool] = None, nationality: Optional[str] = None,
304+
tier: Optional[str] = None, region: Optional[str] = None, mode: Optional[int] = None,
305+
group: Optional[str] = None, before: Optional[str] = None,
306+
after: Optional[str] = None, best_of: Optional[int] = None,
307+
team: Optional[str] = None) -> list:
308+
endpoint = f'{API_BASE_URL}/stats/teams/events'
309+
param_names = {'stat', 'event', 'stage', 'match', 'qualifier', 'winner', 'nationality', 'tier', 'region',
310+
'mode', 'group', 'before', 'after', 'team'}
311+
params = {'bestOf': best_of}
312+
params |= {k: v for k, v in locals().items() if (k in param_names) and (v is not None)}
313+
314+
results = self._get_results(endpoint, params).get('stats')
315+
return results

0 commit comments

Comments
 (0)