{"id":34103632,"url":"https://github.com/lostcol0ny/blizzardapi2","last_synced_at":"2026-03-11T02:39:04.058Z","repository":{"id":248946800,"uuid":"830272344","full_name":"lostcol0ny/blizzardapi2","owner":"lostcol0ny","description":"blizzardapi2 is a Python client library for Blizzard's APIs.","archived":false,"fork":false,"pushed_at":"2025-12-28T02:11:24.000Z","size":451,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-30T03:53:40.923Z","etag":null,"topics":["api","battlenet","blizzard","diablo3","hearthstone","python","starcraft2","wow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lostcol0ny.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-18T00:37:29.000Z","updated_at":"2025-12-28T02:11:28.000Z","dependencies_parsed_at":"2024-07-18T03:24:42.291Z","dependency_job_id":"3488d87e-7942-45cf-a471-0e44da90b46d","html_url":"https://github.com/lostcol0ny/blizzardapi2","commit_stats":null,"previous_names":["lostcol0ny/python-blizzardapi2"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/lostcol0ny/blizzardapi2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lostcol0ny%2Fblizzardapi2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lostcol0ny%2Fblizzardapi2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lostcol0ny%2Fblizzardapi2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lostcol0ny%2Fblizzardapi2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lostcol0ny","download_url":"https://codeload.github.com/lostcol0ny/blizzardapi2/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lostcol0ny%2Fblizzardapi2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30367817,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T21:41:54.280Z","status":"online","status_checked_at":"2026-03-11T02:00:07.027Z","response_time":84,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","battlenet","blizzard","diablo3","hearthstone","python","starcraft2","wow"],"created_at":"2025-12-14T17:46:47.733Z","updated_at":"2026-03-11T02:39:04.030Z","avatar_url":"https://github.com/lostcol0ny.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blizzard API 2\n\n[![PyPI version](https://badge.fury.io/py/blizzardapi2.svg)](https://badge.fury.io/py/blizzardapi2)\n[![Python Versions](https://img.shields.io/pypi/pyversions/blizzardapi2.svg)](https://pypi.org/project/blizzardapi2/)\n[![Downloads](https://img.shields.io/pypi/dm/blizzardapi2.svg)](https://pypi.org/project/blizzardapi2/)\n[![Build Status](https://github.com/lostcol0ny/python-blizzardapi2/actions/workflows/python-package.yml/badge.svg)](https://github.com/lostcol0ny/python-blizzardapi2/actions/workflows/python-package.yml)\n\n![GitHub](https://img.shields.io/github/license/lostcol0ny/python-blizzardapi2)[![Dependabot](https://github.com/lostcol0ny/blizzardapi2/actions/workflows/dependabot/dependabot-updates/badge.svg)](https://github.com/lostcol0ny/blizzardapi2/actions/workflows/dependabot/dependabot-updates)[![CodeQL](https://github.com/lostcol0ny/python-blizzardapi2/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/lostcol0ny/python-blizzardapi2/actions/workflows/github-code-scanning/codeql)[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\nblizzardapi2 is a client library for Blizzard's APIs. It's a fork of [the original library](https://github.com/trevorphillipscoding/python-blizzardapi/).\n\nCurrent supported features include:\n\n- Battle.net User\n- WoW Profile\n- WoW Game Data\n- WoW Classic Game Data\n- Diablo 3 Community\n- Diablo 3 Game Data\n- Hearthstone Game Data\n- Starcraft 2 Community\n- Starcraft 2 Game Data\n\nModern features:\n\n- Full type hints support\n- Async/await support for better performance\n- Enum-based region and locale validation\n- Structured response types using dataclasses\n- Improved error handling and logging\n\nTo gain access to Blizzard's API please register [here](https://develop.battle.net/access/) to obtain a client id and client secret.\n\nFor more information on Blizzard's API visit:\n\n[Official Documentation](https://develop.battle.net/documentation)  \n[Official API Forum](https://us.forums.blizzard.com/en/blizzard/c/api-discussion)\n\n# Requirements\n\nPython (3.11+)\n\n# Installing\n\n`pip install blizzardapi2`\n\n# Examples\n\n**Basic Usage**\n\n```python\nfrom blizzardapi2 import BlizzardApi\nfrom blizzardapi2.types import Locale, Region\n\napi_client = BlizzardApi(\"client_id\", \"client_secret\")\n\n# Unprotected API endpoint\ncategories_index = api_client.wow.game_data.get_achievement_categories_index(\n    Region.US,\n    Locale.EN_US\n)\n\n# Protected API endpoint\nsummary = api_client.wow.profile.get_account_profile_summary(\n    Region.US,\n    Locale.EN_US,\n    \"access_token\"\n)\n\n# Wow Classic endpoint\nconnected_realms_index = api_client.wow.game_data.get_connected_realms_index(\n    Region.US,\n    Locale.EN_US,\n    is_classic=True\n)\n```\n\n**Async Usage**\n\n```python\nimport asyncio\nfrom blizzardapi2 import BlizzardApi\nfrom blizzardapi2.types import Locale, Region\n\nasync def main():\n    api_client = BlizzardApi(\"client_id\", \"client_secret\")\n\n    # Async API calls\n    profile = await api_client.wow.profile.get_account_profile_summary(\n        Region.US,\n        Locale.EN_US,\n        \"access_token\"\n    )\n\n    # Multiple concurrent requests\n    tasks = [\n        api_client.wow.profile.get_character_profile_summary(\n            Region.US,\n            Locale.EN_US,\n            \"realm-slug\",\n            \"character-name\"\n        ),\n        api_client.wow.profile.get_character_achievements_summary(\n            Region.US,\n            Locale.EN_US,\n            \"realm-slug\",\n            \"character-name\"\n        )\n    ]\n    results = await asyncio.gather(*tasks)\n\nasyncio.run(main())\n```\n\n# Access token vs Client ID/Client Secret\n\nYou can pass in a `client_id` and `client_secret` and use almost any endpoint except for a few that require an `access_token` obtained via OAuth authorization code flow. You can find more information at https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow.\n\nHere is the list of endpoints, specified by Blizzard, that require an OAuth token:\n\n```\nGET /oauth/userinfo\nGET /profile/user/wow\nGET /profile/user/wow/protected-character/{realm-id}-{character-id}\nGET /profile/user/wow/collections\nGET /profile/user/wow/collections/pets\nGET /profile/user/wow/collections/mounts\n```\n\n# Documentation\n\nFor detailed documentation on each game's API, see the following README files:\n\n- [WoW API Documentation](docs/wow/README.md)\n- [Diablo 3 API Documentation](docs/diablo3/README.md)\n- [Hearthstone API Documentation](docs/hearthstone/README.md)\n- [Starcraft 2 API Documentation](docs/starcraft2/README.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flostcol0ny%2Fblizzardapi2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flostcol0ny%2Fblizzardapi2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flostcol0ny%2Fblizzardapi2/lists"}