https://github.com/rbw/pysysair
Systemair API Bindings for Python
https://github.com/rbw/pysysair
Last synced: 3 months ago
JSON representation
Systemair API Bindings for Python
- Host: GitHub
- URL: https://github.com/rbw/pysysair
- Owner: rbw
- License: mit
- Created: 2024-02-10T22:46:57.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-12T17:44:30.000Z (over 2 years ago)
- Last Synced: 2025-10-09T06:25:10.486Z (8 months ago)
- Language: Python
- Homepage:
- Size: 204 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[Python Systemair]
#### Description
This software offers a streamlined Python interface for interacting with Systemair SAVE ventilation units through the Systemair Homesolutions Cloud Platform.
#### Technology
Built atop asyncio, the Python GraphQL Client leverages ariadne-codegen for schema introspection. This facilitates easy updates in response to API changes, a necessary feature given Systemair's limited public API documentation.
#### Authentication
The Systemair GraphQL API utilizes OIDC. Despite its advantages, it lacks user-friendly options for managing integrations, which restricts the OAuth2 Flows available. Nonetheless, it supports the password grant option, allowing users to exchange email-password credentials for tokens to interact with their GraphQL service.
#### Installing
$ pip install pysysair
#### Usage (Important!)
To integrate `pysysair` into your project, ensure you are registered at https://homesolutions.systemair.com with your ventilation systems linked to your account. Also, your must update your password at https://sso.systemair.com/auth/realms/iot/login-actions/authenticate?client_id=account-console to enable OAuth2 password grant functionality.
See [Examples](/examples) to get started.
#### Status
WIP: Currently in early development, this project is not yet complete with all intended features.
#### Author
Robert W \<1263192+rbw@users.noreply.github.com\>