Metadata-Version: 2.4
Name: uhooapi
Version: 1.0.0
Summary: A python client for uHoo APIs
Author-email: Joshua Monta <joshsmonta@gmail.com>
Project-URL: Homepage, https://github.com/getuhoo/uhooapi
Project-URL: Bug Tracker, https://github.com/getuhoo/uhooapi/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.13
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohttp==3.13.2
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: pytest-aiohttp>=1.0.0; extra == "dev"
Requires-Dist: pytest-mock>=3.10.0; extra == "dev"
Requires-Dist: aioresponses>=0.7.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Dynamic: license-file

# uhooapi - Python Client for uHoo API

[![PyPI version](https://img.shields.io/pypi/v/uhooapi.svg)](https://pypi.org/project/uhooapi/)
[![Python versions](https://img.shields.io/pypi/pyversions/uhooapi.svg)](https://pypi.org/project/uhooapi/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Code style: Ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)

A modern, asynchronous Python client for the uHoo air quality API. This library provides an intuitive, type-safe interface to access your uHoo device data, manage devices, and retrieve real-time air quality metrics with automatic token management and comprehensive error handling.

## ✨ Features

- **🚀 Async/Await Native**: Built on `aiohttp` for high-performance, non-blocking API calls
- **🔐 Automatic Token Management**: Handles authentication, token refresh, and retry logic automatically
- **📝 Full Type Annotations**: Complete type hints for better IDE support and reliability
- **🎯 Production Ready**: 100% test coverage with comprehensive unit and integration tests
- **🔄 Smart Error Handling**: Custom exceptions with automatic retry for 401/403 errors
- **📊 Complete Sensor Coverage**: Access to all uHoo metrics (temperature, humidity, CO₂, PM2.5, virus index, etc.)
- **⚡ Efficient Data Processing**: Automatic averaging and rounding of sensor readings

## 📦 Installation

### From PyPI (Recommended)
```bash
pip install uhooapi
```
