Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jolle/homebridge-adax-private
Homebridge plugin for Adax devices using the private API
https://github.com/jolle/homebridge-adax-private
Last synced: about 1 month ago
JSON representation
Homebridge plugin for Adax devices using the private API
- Host: GitHub
- URL: https://github.com/jolle/homebridge-adax-private
- Owner: jolle
- Created: 2022-04-14T15:39:45.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-12-31T20:37:52.000Z (almost 2 years ago)
- Last Synced: 2024-11-14T14:51:59.550Z (about 1 month ago)
- Language: TypeScript
- Homepage:
- Size: 139 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Homebridge Adax (Private API)
This plugin uses the private Adax API that is used in their mobile apps; this way it is possible to use devices that are shared with your account. The public API only shows devices that you own, not shared ones.
## Getting the private key
The private API uses a signature generated with a user-specific private key to authenticate requests. Additionally, the account ID (login ID) is present in many requests. To get the private key and account ID, visit `https://smart-apps-1.adax.no/sheater-client-api/oauth?type=[provider]` where the provider is one of these: `"facebook", "google", "twitter", "live", "linkedin", "yahoo", "apple"`. (Username-password authentication is handled by another endpoint.)
After following the redirect and logging in, you will be redirected back and a JSON response will be displayed, like this: `[{"errorTypeId":0},{"id":[account ID],"privateKey":"[private key]","termsAcceptDate":0,"hasDevices":true,"googleHomeLinked":false}]`. Copy the account ID and private key (without quotation marks) and paste them in the config.
## Devices = zones?
The Adax API recognizes the existence of individual, real devices but only provides temperature controlling and status indication on a per-zone basis. Thus, this plugin will treat each zone as a device, and as such you can not see the data from or control specific devices, only zones. A trick one can do is to only have one device per zone, effectively making the concept of "zones" and "devices" equivalent.