API Reference¶
Client¶
-
class
brawlstats.
Client
(token, session=None, timeout=30, is_async=False, **options)[source]¶ A sync/async client class that lets you access the Brawl Stars API
Parameters: - token (str) – The API Key that you can get from https://developer.brawlstars.com
- session (Union[requests.Session, aiohttp.ClientSession], optional) – Use a current session or a make new one, by default None
- timeout (int, optional) – How long to wait in seconds before shutting down requests, by default 30
- is_async (bool, optional) – Setting this to
True
makes the client async, by default False - loop (asyncio.window_events._WindowsSelectorEventLoop, optional) – The event loop to use for asynchronous operations, by default None
- connector (aiohttp.TCPConnector, optional) – Pass a TCPConnector into the client (aiohttp), by default None
- debug (bool, optional) – Whether or not to log info for debugging, by default False
- prevent_ratelimit (bool, optional) – Whether or not to wait between requests to prevent being ratelimited, by default False
- base_url (str, optional) – Sets a different base URL to make request to, by default None
-
get_battle_logs
(tag: brawlstats.utils.bstag, use_cache=True) → brawlstats.models.BattleLog[source]¶ Gets a player’s battle logs.
Parameters: - tag (str) – A valid player tag. Valid characters: 0289PYLQGRJCUV
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A player battle object with all of its attributes.
Return type:
-
get_brawlers
(use_cache=True) → brawlstats.models.Brawlers[source]¶ Gets available brawlers and information about them.
Parameters: use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True Returns: A list of available brawlers and information about them. Return type: Brawlers
-
get_club
(tag: brawlstats.utils.bstag, use_cache=True) → brawlstats.models.Club[source]¶ Gets a club’s stats.
Parameters: - tag (str) – A valid club tag. Valid characters: 0289PYLQGRJCUV
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A club object with all of its attributes.
Return type:
-
get_club_members
(tag: brawlstats.utils.bstag, use_cache=True) → brawlstats.models.Members[source]¶ Gets the members of a club.
Parameters: - tag (str) – A valid club tag. Valid characters: 0289PYLQGRJCUV
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A list of the members in a club.
Return type:
-
get_constants
(key: str = None, use_cache=True) → brawlstats.models.Constants[source]¶ Gets Brawl Stars constants extracted from the app.
Parameters: - key (str, optional) – Any key to get specific data, by default None
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: Data containing some Brawl Stars constants.
Return type:
-
get_player
(tag: brawlstats.utils.bstag, use_cache=True) → brawlstats.models.Player[source]¶ Gets a player’s stats.
Parameters: - tag (str) – A valid player tag. Valid characters: 0289PYLQGRJCUV
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A player object with all of its attributes.
Return type:
-
get_profile
(tag: brawlstats.utils.bstag, use_cache=True) → brawlstats.models.Player¶ Gets a player’s stats.
Parameters: - tag (str) – A valid player tag. Valid characters: 0289PYLQGRJCUV
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A player object with all of its attributes.
Return type:
-
get_rankings
(*, ranking: str, region: str = None, limit: int = 200, brawler: Union[str, int] = None, use_cache=True) → brawlstats.models.Ranking[source]¶ Gets the top count players/clubs/brawlers.
Parameters: - ranking (str) – The type of ranking. Must be “players”, “clubs”, “brawlers”.
- region (str, optional) – The region to retrieve from. Must be a 2 letter country code, by default None
- limit (int, optional) – The number of top players or clubs to fetch, by default 200
- brawler (Union[str, int], optional) – The brawler name or ID, by default None
- use_cache (bool, optional) – Whether to use the internal 3 minutes cache, by default True
Returns: A player or club ranking that contains a list of players or clubs.
Return type: Raises: ValueError
– The brawler name or ID is invalid.ValueError
– rankings is not “players”, “clubs”, or “brawlers”ValueError
– limit is not between 1 and 200, inclusive.
Data Models¶
-
class
brawlstats.models.
Player
(*args, **kwargs)[source]¶ A player object with all of its attributes.
-
class
brawlstats.models.
Ranking
(client, data)[source]¶ A player or club ranking that contains a list of players or clubs.
-
class
brawlstats.models.
BattleLog
(client, data)[source]¶ A player battle object with all of its attributes.
Attributes of Data Models¶
Note: These are subject to change at any time. Visit https://developer.brawlstars.com/#/documentation to view up-to-date information on the API.
Player¶
A full player object (all its statistics)
Attributes:
Name | Type |
---|---|
tag |
str |
name |
str |
name_color |
str |
trophies |
int |
highest_trophies |
int |
power_play_points |
int |
highest_power_play_points |
int |
exp_level |
int |
exp_points |
int |
is_qualified_from_championship_challenge |
bool |
x3vs3_victories |
int |
team_victories |
int |
solo_victories |
int |
duo_victories |
int |
best_robo_rumble_time |
int |
best_time_as_big_brawler |
int |
club.tag |
str |
club.name |
str |
brawlers |
List[Brawler] |
Club¶
A full club object to get a club’s statistics. In order to get this, you must get it from the client or a player object.
Attributes:
Name | Type |
---|---|
tag |
str |
name |
str |
description |
str |
type |
str |
trophies |
int |
required_trophies |
int |
members |
List[Member] |
Members¶
Returns a list of club members. Get this by accessing Club.members or Club.get_members()
members = club.members
print(members[0].name, members[0].role) # prints best player's name and role (sorted by trophies)
Attributes:
Name | Type |
---|---|
tag |
str |
name |
str |
name_color |
str |
role |
str |
trophies |
int |
Ranking¶
Returns a list of top players, clubs, or brawlers. To access this, do ranking[index]
Player/Brawler attributes:
Name | Type |
---|---|
tag |
str |
name |
str |
name_color |
str |
trophies |
int |
rank |
int |
club.name |
str |
Club attributes:
Name | Type |
---|---|
tag |
str |
name |
str |
trophies |
int |
rank |
int |
member_count |
int |
Brawler¶
Returns a brawler object with the following attributes. You can retrieve
a profile’s brawler info by getting Profile.brawlers
brawlers = profile.brawlers
top_brawler = brawlers[0] # first index in list = highest trophies
print(top_brawler.name, top_brawler.trophies) # prints best brawler's name and trophies
Attributes:
Name | Type |
---|---|
id |
int |
name |
str |
power |
int |
rank |
int |
trophies |
int |
highest_trophies |
int |
star_powers |
List[SP] |
Battle Logs¶
Returns a list of objects with this structure:
Attributes:
{
"battleTime":"20190706T151526.000Z",
"event":{
"id":15000126,
"mode":"duoShowdown",
"map":"Royal Runway"
},
"battle":{
"mode":"duoShowdown",
"type":"ranked",
"rank":1,
"trophyChange":9,
"teams":[
[
{
"tag":"#Y2QPGG",
"name":"Lex_YouTube",
"brawler":{
"id":16000005,
"name":"SPIKE",
"power":10,
"trophies":495
}
},
{
"tag":"#8Q229LJY",
"name":"Brandon",
"brawler":{
"id":16000003,
"name":"BROCK",
"power":10,
"trophies":495
}
},
{
"tag":"#29RGL0QJ0",
"name":"smallwhitepeen1",
"brawler":{
"id":16000007,
"name":"JESSIE",
"power":7,
"trophies":486
}
}
],
[
{
"tag":"#CYLVL8LY",
"name":"TST|ROYER™",
"brawler":{
"id":16000019,
"name":"PENNY",
"power":8,
"trophies":541
}
},
{
"tag":"#8P2URCR0",
"name":"ANOTHER",
"brawler":{
"id":16000023,
"name":"LEON",
"power":8,
"trophies":559
}
},
{
"tag":"#8LRY92QP",
"name":"Marshmello",
"brawler":{
"id":16000021,
"name":"GENE",
"power":7,
"trophies":448
}
}
]
]
}
}
Brawlers¶
Returns list of available brawlers and information about them with this structure:
Attributes:
[
Brawler
]