Skip to main content

A python library for interacting with the Hubitat API

Project description

pyhubitat

image image image

A python library for interacting with the Hubitat API

Highlights

This package is new and rapidly developing. It currently exposes only the Hubitat "Maker API" which is limited to the functionality of the devices, not the hub. The official Maker API docs can be found here. Endpoints exposed include:

  • Get All Devices (/devices)
  • Get All Devices with Full Details (/devices/all)
  • Get Device Info (/devices/[device ID])
  • Get Device Event History (/device/[device ID]/events)
  • Get Device Commands (/device/[device ID]/commands)
  • Get Device Capabilities (/device/[device ID]/capabilities)
  • Send Device Command (/device/[device ID]/[Command]/[Secondary Value])

Installation

pip install pyhubitat

Usage

Initialization

from pyhubitat import MakerAPI
import pprint

HUB_TOKEN = os.environ['HUBITAT_TOKEN']
HUB_URL_EXAMPLE = 'https://192.168.1.39/apps/api/24'  # Follow the generic format of 'https://[hub-ip-address-or-hostname]/apps/api/[app-id]'

ph = MakerAPI(HUB_TOKEN, HUB_URL_EXAMPLE)

Get Devices

devices = ph.list_devices()
pprint.pprint(devices)

Send Command

response1 = ph.send_command(5, "on")
response2 = ph.send_command(6, "setLevel", 50)

Note about TLS/SSL

The Hubitat hub uses a self-signed root certificate for https and I see no reasonable way to add your own. Despite this, it is still recommended that you enable login auth on the hub and use the https API url since your API token is sent with every request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyhubitat, version 0.0.3
Filename, size File type Python version Upload date Hashes
Filename, size pyhubitat-0.0.3.tar.gz (15.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page