Skip to main content

An async API client for HYXi Cloud.

Project description

hyxi-cloud-api

Security Shield PyPI version CI/CD Pipeline Python Versions OpenSSF Baseline

An asynchronous Python client for interacting with the HYXI Cloud API.

This library was primarily built to power the HYXI Cloud Home Assistant Integration, but it can be used in any Python 3.11+ project to fetch telemetry data from HYXI solar inverters and battery systems.

📦 Installation

You can install the package directly from PyPI:

pip install hyxi-cloud-api

🚀 Quick Start

This library uses aiohttp for non-blocking network requests. You will need to provide your Developer API credentials (AK/SK), along with an active aiohttp.ClientSession.

[!NOTE] The HYXI Open API requires a separate developer account registered at open.hyxicloud.com. If your developer email is different from your main HYXI app account, you must Share your Plant from the app to your developer email address to access your data.

import asyncio
import aiohttp
from hyxi_cloud_api import HyxiApiClient

async def main():
    # Replace with your actual HYXi Cloud credentials
    ACCESS_KEY = "your_access_key"
    SECRET_KEY = "your_secret_key"
    BASE_URL = "https://open.hyxicloud.com"

    async with aiohttp.ClientSession() as session:
        # 1. Initialize the client
        client = HyxiApiClient(
            access_key=ACCESS_KEY,
            secret_key=SECRET_KEY,
            base_url=BASE_URL,
            session=session
        )

        # 2. Fetch device data
        try:
            device_data = await client.get_all_device_data()
            print("Successfully fetched HYXi data:")
            print(device_data)
        except Exception as e:
            print(f"Error communicating with HYXi Cloud: {e}")

if __name__ == "__main__":
    asyncio.run(main())

🛠️ Requirements

  • Python 3.11 or newer
  • aiohttp >= 3.13.3

🔐 Privacy & Debug Logging

When debug logging is enabled, this library automatically masks sensitive identifiers before writing them to the log — no manual redaction needed.

Field Behaviour
Serial numbers (deviceSn, parentSn, batSn) Middle characters replaced with X — length preserved for cross-device tracing, e.g. 106XXXXXXXX016
Plant IDs (plantId) Same X-padding format
Home/site address (plantAddress) Fully redacted → [REDACTED]
IMEI (gprsImei) X-padded

Masking is deterministic, so parent/child device relationships remain traceable across log lines.

⚠️ Disclaimer

This is an unofficial, community-driven project. It is not affiliated with, endorsed by, or connected to HYXiPower in any official capacity. Use this software at your own risk.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyxi_cloud_api-1.1.0.tar.gz (38.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hyxi_cloud_api-1.1.0-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file hyxi_cloud_api-1.1.0.tar.gz.

File metadata

  • Download URL: hyxi_cloud_api-1.1.0.tar.gz
  • Upload date:
  • Size: 38.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hyxi_cloud_api-1.1.0.tar.gz
Algorithm Hash digest
SHA256 cc22a067d2802c0b961c5b47d288179a92de1ed51c96b47e952c620fd9aa9433
MD5 d9248c06735a8163c3f19be2520daa24
BLAKE2b-256 16b08ddf40dc45af6d6e1dce6925a57df4858eb8efce935dda8c3421a189629b

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyxi_cloud_api-1.1.0.tar.gz:

Publisher: ci-cd.yml on Veldkornet/hyxi-cloud-api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hyxi_cloud_api-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: hyxi_cloud_api-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hyxi_cloud_api-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd5adac709a559a9a81830ec411ba35ef6e16618f1b5389b76a484de6205e80e
MD5 54d1dad9a3d2172e73efdae8ab73bf58
BLAKE2b-256 1b85edf67c961668da7a712a2b058c7c660f2fe17c328590f0f2efc877fb8b6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyxi_cloud_api-1.1.0-py3-none-any.whl:

Publisher: ci-cd.yml on Veldkornet/hyxi-cloud-api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page