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.5.tar.gz (40.7 kB view details)

Uploaded Source

Built Distribution

weheat-2024.9.5-py3-none-any.whl (57.4 kB view details)

Uploaded Python 3

File details

Details for the file weheat-2024.9.5.tar.gz.

File metadata

  • Download URL: weheat-2024.9.5.tar.gz
  • Upload date:
  • Size: 40.7 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.5.tar.gz
Algorithm Hash digest
SHA256 18efe3595fcf4e65f9b8abac21fa90d79f7670dda2aa4b0931c43653b676dcbd
MD5 a79ab9faa1ff7aa923edccb6367f648b
BLAKE2b-256 a1c03a9e3692d144a12a29ff9bf39cca6f29d849cb7fff0eaaf9190d283be5f4

See more details on using hashes here.

File details

Details for the file weheat-2024.9.5-py3-none-any.whl.

File metadata

  • Download URL: weheat-2024.9.5-py3-none-any.whl
  • Upload date:
  • Size: 57.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for weheat-2024.9.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f44712cf94dfdd48cf99814d19588426b8b3ef9c7c88475c5cd688a03e98c654
MD5 55573c7601d406b39302960cedb623c2
BLAKE2b-256 3d03eef65b55b9f3c86e75c09c77d36402b720295773a0cad4404737dcc44fb4

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