Skip to main content

Python library for ConnectLife API

Used by devices from Hisense, Gorenje, ASKO & ATAG and ETNA Connect.

The goal of this library is to support a native Home Assistant integration for devices that uses the ConnectLife API.

The code is based on Connectlife API proxy / MQTT Home Assistant integration (MIT license).

Software is provided as is - use at your own risk. There is probably no way to harm your physical devices, but there is no guarantee that you don't experience other problems, for instance locking your ConnectLife account.

Licensed under GPLv3.

To test out the library (users in Russia/CIS may need to pass the --trir option):

pip install connectlife
python -m connectlife.dump --username <username> [--password '<password>'] [--trir]

Omit password to be prompted for it instead. Make sure to always use single quotes around passwords with special characters.

This will log in to the ConnectLife API using the provided username and password, and write a JSON file with all returned fields for each appliance that is registered with the account. Pass --format dd to instead write a mapping file YAML skeleton to be used with connectlife-ha.

Note: the property set a device reports is not authoritative. A device may report properties it does not actually support (and may omit ones its feature code defines), so two units with the same device type/feature code can report different properties. Treat dumps as a starting point for a mapping, not ground truth — cross-check controls against the device or the ConnectLife app.

To instead dump each appliance's energy statistics (both the air_duct_energy and energyConsumptionCurve endpoints), use --query energy:

python -m connectlife.dump --username <username> --query energy

To dump each appliance's per-device static data (the query_static_data endpoint, keyed by puid), use --query static:

python -m connectlife.dump --username <username> --query static

Because it's keyed by the device's puid, the response can differ between two physical models that report the same device type/feature code. The response echoes the puid, so the dump redacts the puid, wifi_id and device_id — but the schema is gateway-defined and may contain other identifiers, so review each file before sharing. (For the per-feature-code property list, use --query property-list below.)

To fetch the property list for a specific device type and feature code (any code, not just ones on your account), use --query property-list:

python -m connectlife.dump --username <username> \
    --query property-list --device-type-code <type-code> --device-feature-code <feature-code>

The Home Assistant integration is currently in discovery phase. Please contribute your device dumps to help the development.

Test server

To use the test server to support developing the Home Assistant integration, clone this repo and see DEVELOPMENT.md:

Metadata

Release files for connectlife 0.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for connectlife 0.11.0
File Size Uploaded Provenance
connectlife-0.11.0.tar.gz 169.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for connectlife 0.11.0
File Interpreter ABI Platform
connectlife-0.11.0-py3-none-any.whl Python 3 none any Details

Total release size: 219.1 kB

Release files / connectlife-0.11.0.tar.gz

Download URL connectlife-0.11.0.tar.gz
Size 169.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1af6be11d82110f3d242a2d85c4c5e51113496b80006e782b00402b773792c32
BLAKE2b-256 checksum
How to use checksums
49baeae0d0eefc0b746f79a3003e9c3dcc01beb7bdd5a218609d62d1b3bdf9d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.8.23

Release files / connectlife-0.11.0-py3-none-any.whl

Download URL connectlife-0.11.0-py3-none-any.whl
Size 49.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0cfa2e97e8c72f95a2701b58125ef6040eb1ed1e762025f3969e377c41b13d6f
BLAKE2b-256 checksum
How to use checksums
c0a445e60198a7cee59a74eb5d0f4fdcad26f7022768085cbad60ebd8c40a320
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.8.23

Security for connectlife 0.11.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.11.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page