Getting Started with Wyze SDK¶
A modern Python client for controlling Wyze devices.
Whether you’re building a custom app, or integrating into a third-party service like Home Assistant, Wyze Developer Kit for Python allows you to leverage the flexibility of Python to get your project up and running as quickly as possible.
Feature |
What its for |
Package |
Web Client |
Send data to or query data from Wyze using a variety of device-specific sub-clients. |
|
Bulb Client |
Control Wyze Bulb, Wyze Bulb Color, Wyze Bulb White, and Wyze Light Strip |
|
Entry Sensor Client |
Interact with Wyze Sense Entry Sensors |
|
Camera Client |
Control Wyze Cameras |
|
Event Client |
Manage Wyze alarm events |
|
Lock Client |
Control Wyze Lock and Wyze Lock Keypad |
|
Motion Sensor Client |
Interact with Wyze Sense Motion Sensors |
|
Plug Client |
Control Wyze Plug and Wyze Plug Outdoor |
|
Scale Client |
Control Wyze Scale |
|
Switch Client |
Control Wyze Switch |
|
Thermostat Client |
Control Wyze Thermostat and Wyze Room Sensor |
|
Vacuum Client |
Control Wyze Robot Vacuum |
|
Request Signature Verification |
Sign outgoing requests for the Wyze API servers. |
|
Models |
Pythonic class objects to model Wyze devices. |
|
Disclaimer: This repository is for non-destructive use only. WyzeLabs is a wonderful company providing excellent devices at a reasonable price. I ask that you do no harm and be civilized.
As this repository is entirely reverse-engineered, it may break at any time. If it does, I will fix it to the best of my ability.
Installation¶
This package supports Python 3.8 and higher. I recommend using PyPI to install Wyze SDK
pip install wyze_sdk
Of course, you can always pull the source code directly into your project:
git clone https://github.com/shauntarves/wyze-sdk.git
And then, save a few lines of code as ./test.py
.
# test.py
import sys
# Load the local source directly
sys.path.insert(1, "./wyze-sdk")
# Enable debug logging
import logging
logging.basicConfig(level=logging.DEBUG)
# Verify it works
import os
from wyze_sdk import Client
client = Client(email=os.environ['WYZE_EMAIL'], password=os.environ['WYZE_PASSWORD'])
api_response = client.api_test()
You can run the code this way.
python test.py
Getting Help¶
If you get stuck, I’m here to help. The following are the best ways to get assistance working through your issue:
GitHub Issue Tracker for questions, feature requests, bug reports and general discussion related to this package.