Metadata-Version: 2.4
Name: beatbot-cloud
Version: 0.3.0
Summary: Asynchronous Python client for the Beatbot cloud API
Author: Beatbot Robotics
License-Expression: Apache-2.0
Project-URL: Homepage, https://www.beatbot.com
Project-URL: Repository, https://github.com/Beatbot-Robotics/beatbot-cloud-python
Project-URL: Issues, https://github.com/Beatbot-Robotics/beatbot-cloud-python/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: AsyncIO
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohttp>=3.11.0
Provides-Extra: test
Requires-Dist: coverage[toml]>=7.6; extra == "test"
Requires-Dist: pytest>=8.3; extra == "test"
Requires-Dist: pytest-asyncio>=0.24; extra == "test"
Requires-Dist: ruff>=0.15; extra == "test"
Dynamic: license-file

# beatbot-cloud

`beatbot-cloud` is the asynchronous Python client for Beatbot cloud accounts.
It provides region-aware REST access, typed device models, and a WebSocket event
transport without depending on Home Assistant.

```python
from beatbot_cloud import BeatbotClient

client = BeatbotClient(region="na", requester=oauth_request)
devices = await client.get_devices()
```

The caller owns authentication. `requester` is an async callable compatible
with `aiohttp.ClientSession.request`; it may add or refresh OAuth credentials
before forwarding the request.

## Development

```bash
python -m pip install -e '.[test]'
pytest
ruff check .
ruff format --check .
python -m build
```

