Skip to main content

Unofficial Python wrapper for the Brawl Stars API.

Project description

NovaBrawlStarsApi

A Python library to easily interact with the Brawl Stars API and fetch player information.

Features

  • Retrieve detailed player information
  • Supports multiple player tags
  • Easy Python integration
  • Secure API key management with .env

Installation

You can install NovaBrawlStarsApi via pip:

pip install novabrawlstars

Or clone the repo and installation dependencies manually:

git clone https://github.com/NovaFenice/NovaBrawlStarsApi.git
cd NovaBrawlStarsApi

Usage

How to get players info

from novabrawlstars.client import NovaBrawlStars
import os
import asyncio
from dotenv import load_dotenv

load_dotenv()

async def main():
    api_bs = os.getenv("api_bs") # Your Brawl Stars API token
    tag_p1 = os.getenv("tag_p1") # Brawl Stars Player tag (es. #12345678 or 12345678)
    nb = NovaBrawlStars(api_bs) # Initialize the Brawl Stars API client
    
    async with nb as client:
        player = await client.get_player(tag_p1)  # Get a Player object from the API

    await nb.close() # Close the HTTP client session

if __name__ == "__main__":
    asyncio.run(main()) # Run the main function

How to get battlelog info

from novabrawlstars.client import NovaBrawlStars
import os
import asyncio
from dotenv import load_dotenv

load_dotenv()

async def main():
    api_bs = os.getenv("api_bs") # Your Brawl Stars API token
    tag_p1 = os.getenv("tag_p1") # Brawl Stars Player tag (es. #12345678 or 12345678)
    nb = NovaBrawlStars(api_bs) # Initialize the Brawl Stars API client
    
    async with nb as client:
        player_battlelog = await client.get_battlelog(tag_p1)  # Get a BattleLogListType object from the API

    await nb.close() # Close the HTTP client session

if __name__ == "__main__":
    asyncio.run(main()) # Run the main function

How to get club info

from novabrawlstars.client import NovaBrawlStars
import os
import asyncio
from dotenv import load_dotenv

load_dotenv()

async def main():
    api_bs = os.getenv("api_bs") # Your Brawl Stars API token
    tag_p1 = os.getenv("tag_p1") # Brawl Stars Player tag (es. #12345678 or 12345678)
    nb = NovaBrawlStars(api_bs) # Initialize the Brawl Stars API client
    
    async with nb as client:
        player = await client.get_player(tag_p1)  # Get a BattleLogListType object from the API
        club = await client.get_player_club(player.club.tag) # Get a Club object passing the player 

    await nb.close() # Close the HTTP client session

if __name__ == "__main__":
    asyncio.run(main()) # Run the main function

How to get club members info using pagination

from novabrawlstars.client import NovaBrawlStars
import os
import asyncio
from dotenv import load_dotenv

load_dotenv()

async def main():
    api_bs = os.getenv("api_bs") # Your Brawl Stars API token
    tag_p1 = os.getenv("tag_p1") # Brawl Stars Player tag (es. #12345678 or 12345678)

    nb = NovaBrawlStars(api_bs) # Initialize the Brawl Stars API client

    async with nb as client:
        player = await client.get_player(tag_p1) # Get a Player object from the API
        club_members = await client.get_club_members(player.club.tag, limit=5) # Get Club Members with pagination
        after = club_members.paging.cursors.after # Get the 'after' cursor for pagination
        refetched_after_member = await client.get_club_members(player.club.tag, after=after, limit=5) # Refetch Club Members using the 'after' cursor
        refetched_before_member = await client.get_club_members(player.club.tag, before=club_members.paging.cursors.before, limit=5) # Refetch Club Members using the 'before' cursor
    
    await nb.close() # Close the HTTP client session

if __name__ == "__main__":
    asyncio.run(main()) # Run the main function

Notes

  • Make sure to replace the player tags and API token.
  • Supports both numeric and #-prefixed tags.

Donate Me 💖

If you like this project and want to support its development, you can donate:

Every contribution helps me maintain and improve the library! Thank you for your support! 🙏

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

novabrawlstars-0.1.7.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

novabrawlstars-0.1.7-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file novabrawlstars-0.1.7.tar.gz.

File metadata

  • Download URL: novabrawlstars-0.1.7.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for novabrawlstars-0.1.7.tar.gz
Algorithm Hash digest
SHA256 b7d342d838a3c9d16d9bf4a6accb6e2dd8fdf460d25c942d5795ab726b12e442
MD5 9049bc1a79c6ac756c07fbc5d710d9fd
BLAKE2b-256 b2c7677568698641526d252ed2b5af746123dea9f8bef75a109d37a6ab0b3b8e

See more details on using hashes here.

File details

Details for the file novabrawlstars-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: novabrawlstars-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for novabrawlstars-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 08fc9b36701df3bcd8d0696e9b39317beec89c61e4ebd7852af586dea68f680c
MD5 b726fc7c9dfd0f7f7704ff11206a4611
BLAKE2b-256 1f40b29fb308e8b098bc9953887f667843b96383c9dca83c99b5c756802b36b9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page