Skip to main content

Python package to connect to the blizzard API.

Project description

Python BlizzAPI

PyPI Python Versions PyPI - Downloads GitHub Issues or Pull Requests

Lines Of Code Codecov GitHub Actions Workflow Status

standard-readme compliant license

This Python package is a user-friendly interface for the Blizzard API. It simplifies the process of retrieving data from Blizzard's API, allowing developers and enthusiasts to seamlessly access and interact with game-related information.

Table of Contents

Features

Comprehensive API Coverage

Access a wide range of game data, including player profiles, achievements, character information and guild information as documented in the official Blizzard API Documenation.

Oauth2 Integration

Authenticate using Blizzard's OAuth2 system to ensure reliable access to private and public data.

Ease of Use

With clean and intuitive methods, developers can fetch data without deep diving into Blizzard's API documentation.

Data Format

Conveniently structured JSON responses make it easy to integrate with applications.

Supported APIs

API Status
World Of Warcraft (Retail) Supported (Game Data/Profile APIs)
World Of Warcraft (Classic) Supported (Game Data/Profile APIs)
World of Warcraft (Classic Era) Supported (Game Data/Profile APIs)
Hearthstone Unplanned
StarCraft 2 Unplanned
Diablo 3 Unplanned
Diablo 4 Unsupported (No Blizzard API)
Overwatch 2 Unsupported (No Blizzard API)

Install

# PyPI
pip install blizzapi

or

uv add blizzapi

Blizzard API Client ID/Secret

You must request API access from blizzard in order to use this module.

Request API Access

Dependencies

Python 3.10 or greater

Usage

WoW Classic Era

from blizzapi import ClassicEraClient
client = ClassicEraClient(client_id=XXX, client_secret=YYY)

result = client.connected_realm_search(fields={"status.type": "UP"})
result = client.character_profile(realmSlug="doomhowl", characterName="thetusk")

WoW Retail

from blizzapi import RetailClient
client = RetailClient(client_id=XXX, client_secret=YYY)

result = client.wow_token_index()

Development

Virtual Environment Setup

Helpful notes on how to set up a virtual enviroment for developing python applications using VS Code.

Show Instructions
  1. Ensure python and uv are installed on PC. uv Instructions

  2. Open "Folder" in VS Code

  3. Change the Default Terminal in VS Code

    1. Press CTRL + SHIFT + P (on Windows) or CMD + SHIFT + P (on macOS)
    2. Select 'Terminal: Select Default Profile'
    3. Choose 'Command Prompt' on Windows or 'bash' on macOS
  4. Create Virtual Environment

    1. Press CTRL + SHIFT + ` to open a Terminal
    2. Enter 'uv venv'
    3. Enter 'source .venv/bin/activate'
    4. Verify the prompt begins with '(.venv)'
  5. Select Python Interpreter

    1. Press CTRL + SHIFT + P (on Windows) or CMD + SHIFT + P (on macOS)
    2. Select 'Python: Select Interpreter'
    3. Choose the .venv python binary
  6. Install the dependenies

    1. Enter 'uv sync'

Contributing

PRs accepted.

If editing the Readme, please conform to the standard-readme specification.

Bug Reports and Feature Requests

Please use the issue tracker to report any bugs or request new features.

Contributors

License

MIT © Nick Stuer

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

blizzapi-1.0.2.tar.gz (45.9 kB view details)

Uploaded Source

Built Distribution

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

blizzapi-1.0.2-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file blizzapi-1.0.2.tar.gz.

File metadata

  • Download URL: blizzapi-1.0.2.tar.gz
  • Upload date:
  • Size: 45.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.3

File hashes

Hashes for blizzapi-1.0.2.tar.gz
Algorithm Hash digest
SHA256 1875bf9221b321e6db040c04ffd66122454bbba58727be76bfe5345c71da1577
MD5 8c2eccc0ee9579010b97de95ffb53ec3
BLAKE2b-256 61d46e1c551962929d5913cdcd13b85d791e9fc66843ee3d629243eb69cd8fca

See more details on using hashes here.

File details

Details for the file blizzapi-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: blizzapi-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.3

File hashes

Hashes for blizzapi-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b746c3cc9ee1be153e3484cc8d806f39514037ce8ee6abce709911404d2d8047
MD5 a88e5897f052ddad90c5299bf6bccc7a
BLAKE2b-256 3536b034ef23711a6933ec11c4c0b1024f5d6444aab7ac4da8ba2ca1e1630fd2

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