Skip to main content

Weheat Backend client

Project description

Weheat backend client

This is a client for the Weheat backend. It is automatically generated from the OpenAPI specification.

Requirements.

Python 3.7+

Installation & Usage

You can install directly using:

pip install weheat

Then import the package:

import weheat

Getting Started

After installation, you can now use the client to interact with the Weheat backend.

import datetime
from keycloak import KeycloakOpenID  # install with pip install python-keycloak
from weheat import ApiClient, Configuration, HeatPumpApi, HeatPumpLogApi, EnergyLogApi

# input your information here
auth_url = 'https://auth.weheat.nl/auth/'
api_url = 'https://api.weheat.nl'
realm_name = 'Weheat'
my_client_id = 'WeheatCommunityAPI'  # client ID and secret provided by Weheat
my_client_secret = ''
username = ''  # username and password used for the online portal
password = ''
my_heat_pump_id = ''  # your heat pump UUID

# Get the access token from keycloak
keycloak_open_id = KeycloakOpenID(server_url=auth_url,
                                  client_id=my_client_id,
                                  realm_name=realm_name,
                                  client_secret_key=my_client_secret)

token_response = keycloak_open_id.token(username, password)
keycloak_open_id.logout(token_response['refresh_token'])

# Create the cinfiguration object
config = Configuration(host=api_url, access_token=token_response['access_token'])

# with the client the APIs can be accessed
with ApiClient(configuration=config) as client:
    # Getting all heat pumps that the user has access to
    response = HeatPumpApi(client).api_v1_heat_pumps_get_with_http_info()

    if response.status_code == 200:
        print(f'My heat pump: {response.data}')

    # Getting the latest log of the heat pump
    response = HeatPumpLogApi(client).api_v1_heat_pumps_heat_pump_id_logs_latest_get_with_http_info(
        heat_pump_id=my_heat_pump_id)

    if response.status_code == 200:
        print(f'My heat pump logs: {response.data}')

    # Getting the energy logs of the heat pump in a specific period
    # interval can be  "Minute", "FiveMinute", "FifteenMinute", "Hour", "Day", "Week", "Month", "Year"
    response = EnergyLogApi(client).api_v1_energy_logs_heat_pump_id_get_with_http_info(heat_pump_id=my_heat_pump_id,
                                                                                       start_time=datetime.datetime(
                                                                                           2024, 6,
                                                                                           22, 0, 0,
                                                                                           0),
                                                                                       end_time=datetime.datetime(2024,
                                                                                                                  6, 22,
                                                                                                                  15, 0,
                                                                                                                  0),
                                                                                       interval='Hour')

    if response.status_code == 200:
        print(f'My energy logs: {response.data}')

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

weheat-2024.9.10rc1.tar.gz (41.0 kB view details)

Uploaded Source

Built Distribution

weheat-2024.9.10rc1-py3-none-any.whl (57.8 kB view details)

Uploaded Python 3

File details

Details for the file weheat-2024.9.10rc1.tar.gz.

File metadata

  • Download URL: weheat-2024.9.10rc1.tar.gz
  • Upload date:
  • Size: 41.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for weheat-2024.9.10rc1.tar.gz
Algorithm Hash digest
SHA256 4cac1fd27f7cefdda640473131b9dfa8c32fcc230ec669cd25d3de98ca281934
MD5 2777beb451d424382261e6087818b1ab
BLAKE2b-256 369d9bc08a6ecaaeb8305b11fcd52887c0197b6e346cdf969335e45e0a6471e8

See more details on using hashes here.

File details

Details for the file weheat-2024.9.10rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for weheat-2024.9.10rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 f764c9ee5979d7f7182549b8f857148b7730c6225e6e8a977db2b1af592a472a
MD5 b1328f1af63b3a1bd3d3be802f5c3942
BLAKE2b-256 788d9a9b4058a71d995ab2cf050e9b94573f55a81a4b51cb722ea292eef471a5

See more details on using hashes here.

Supported by

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