Metadata-Version: 2.1
Name: hd2api.py
Version: 0.0.1.15
Summary: An API wrapper for the Helldivers 2 Community and official APIs
Author-email: Crosswave Omega <taucetivse@gmail.com>
Project-URL: Documentation, https://hd2apipy.readthedocs.io/en/latest/
Project-URL: Source, https://github.com/CrosswaveOmega/hd2api.py
Project-URL: Tracker, https://github.com/CrosswaveOmega/hd2api.py/issues
Keywords: helldivers2,api
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.8.1
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pydantic>=2.9.2
Requires-Dist: httpx>=0.27.2
Provides-Extra: spark
Requires-Dist: pyspark>=3.5.3; extra == "spark"
Provides-Extra: test
Requires-Dist: bandit[toml]==1.8.0; extra == "test"
Requires-Dist: black==24.10.0; extra == "test"
Requires-Dist: check-manifest==0.50; extra == "test"
Requires-Dist: flake8-bugbear==24.10.31; extra == "test"
Requires-Dist: flake8-docstrings; extra == "test"
Requires-Dist: flake8-formatter_junit_xml; extra == "test"
Requires-Dist: flake8; extra == "test"
Requires-Dist: flake8-pyproject; extra == "test"
Requires-Dist: pre-commit==4.0.1; extra == "test"
Requires-Dist: pylint==3.3.2; extra == "test"
Requires-Dist: pylint_junit; extra == "test"
Requires-Dist: pytest-cov==6.0.0; extra == "test"
Requires-Dist: pytest-mock<3.14.0; extra == "test"
Requires-Dist: pytest-runner; extra == "test"
Requires-Dist: pytest==8.3.4; extra == "test"
Requires-Dist: pytest-github-actions-annotate-failures; extra == "test"
Requires-Dist: shellcheck-py==0.10.0.1; extra == "test"
Requires-Dist: pytest-asyncio==0.24.0; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx>=7.0.0; extra == "docs"
Requires-Dist: autodoc_pydantic==2.2.0; extra == "docs"

# Helldivers 2 Python API Wrapper
[![PyPI](https://img.shields.io/pypi/v/hd2api.py)](https://pypi.org/project/hd2api.py/)
[![Documentation Status](https://readthedocs.org/projects/hd2apipy/badge/?version=latest)](https://hd2apipy.readthedocs.io/?badge=latest)

This is an asyncronous api frontend library for the Helldivers 2 API and many of it's community wrappers.

Get the latest game state from Helldivers 2,
and transform the raw data into collated
data objects complete with important planet effects,
the latest biome and enviornmental hazards,
and more.

Still currently in development, expect frequent updates
as the static data required by the package to
build the collated objects can change in between patches to Helldivers 2.

All returned objects are Pydantic Models,
which allow them to be quickly dumped and loaded
from/to json strings.

Please note, this API Wrapper was designed to
primarily work with the asyncio module.

Requirements:

- httpx
- pydantic

This front end supports:

- The community api.
  https://github.com/helldivers-2/api

- The diveharder api.
  https://github.com/helldivers-2/diveharder_api.py/

- Arrowhead's official API.

### current stable installation

```
 pip install -U hd2api.py
```

### current latest installation

```
 pip install -U git+https://github.com/CrosswaveOmega/hd2api.py.git
```

### Basic usage

```python
import asyncio
from hd2api import GetApiRawAll, APIConfig, build_planet_2
async def main():
    apiconfig=APIConfig()
    allval=await GetApiRawAll(apiconfig)
    print(allval.status)
    planet=build_planet_2(64,allval, apiconfig.staticdata())
    print(planet)


asyncio.run(main)
```
