Metadata-Version: 2.4
Name: sigenergy-cloud
Version: 0.1.1
Summary: Async Python client for the Sigenergy Cloud app API
Author: sigenergy-cloud contributors
Maintainer-email: Daniel Schlaug <daniel@schlaug.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/solidfox/sigenergy-cloud
Project-URL: Issues, https://github.com/solidfox/sigenergy-cloud/issues
Project-URL: Source, https://github.com/solidfox/sigenergy-cloud
Keywords: sigenergy,home-assistant,asyncio,energy,solar,evse
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: AsyncIO
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Home Automation
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohttp>=3.9.0
Requires-Dist: pycryptodome>=3.19.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Requires-Dist: aioresponses>=0.7; extra == "dev"
Requires-Dist: python-dotenv>=1.0; extra == "dev"
Requires-Dist: build>=1.2; extra == "dev"
Dynamic: license-file

# sigenergy-cloud

Async Python client for the Sigenergy Cloud app API.

This package is a minimal async wrapper around the private Sigenergy Cloud app
API. It is built for Home Assistant style integrations that need to read and
control Sigenergy stations, batteries, and DC chargers.

## Install

```bash
python -m pip install sigenergy-cloud
```

## Example

```python
from sigenergy_cloud import SigenergyCloudClient

client = SigenergyCloudClient("user@example.com", "password", region="eu")
await client.connect()

flow = await client.energy_flow()
mode = await client.current_operational_mode()
chargers = client.dc_sns

await client.close()
```

## Shape

- Use `SigenergyCloudClient` for cloud calls.
- Call `connect()` once before reading data or changing settings.
- The client keeps the station ID and charger serial numbers after connecting.
- Simple settings use small typed value objects.
- Vendor response payloads are returned as dictionaries where the API shape is
  still being mapped.

## Regions

| Region | Base URL |
| --- | --- |
| `eu` | `https://api-eu.sigencloud.com/` |
| `cn` | `https://api-cn.sigencloud.com/` |
| `apac` | `https://api-apac.sigencloud.com/` |
| `us` | `https://api-us.sigencloud.com/` |
