Registry / http-networking / wyzeapy

wyzeapy

JSON →
library0.6.0pypypi✓ verified 84d ago

An asynchronous Python library for interacting with Wyze home automation devices (cameras, sensors, locks, etc.) via the Wyze API. Current version 0.5.33, requires Python >=3.11. Active development with frequent releases.

pip install wyzeapy
INSTALL
IMPORT
SIG · WYZEAPY
W
wyzeapy
http-networkingpythonv0.6.0
Install
5.2s avg
Import
776ms
Disk
39MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.5.20 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.826s · 38.9MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 5.2s · import 0.726s · 42MB
39MB installed
● package 39MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Wyzeapy
from wyzeapy import Wyzeapy
from wyzeapy.client import Wyzeapy
Old import path changed in v0.4.0
Client
from wyzeapy import Client
from wyzeapy.client import Client
Client class moved to top-level in v0.5.0

Initialize Wyzeapy client and list available cameras.

import asyncio from wyzeapy import Wyzeapy async def main(): client = await Wyzeapy.create(email='your_email', password='your_password') cameras = await client.get_cameras() for cam in cameras: print(cam.nickname) asyncio.run(main())
Debug
Known issues
breakingWyzeapy.create() now requires email and password as arguments (previously used environment variables WYZE_EMAIL and WYZE_PASSWORD).
fix
Pass credentials directly: await Wyzeapy.create(email=..., password=...)
affects: >=0.5.0
gotchaAll API calls are asynchronous and must be awaited. Failing to await will return a coroutine object, not the actual result.
fix
Ensure you use 'await' when calling any method that returns a coroutine.
affects: all
deprecatedThe 'get_devices()' method is deprecated in favor of type-specific methods like get_cameras(), get_locks(), get_sensors().
fix
Use the type-specific getter methods instead of get_devices().
affects: >=0.4.0
Errors
Common errors & fixes
wyzeapy.exceptions.WyzeApiError: Invalid credentials
Email or password is incorrect, or Wyze API requires two-factor authentication (2FA).
fix
Verify credentials and if 2FA is enabled, use keypair-based authentication or handle the 2FA flow programmatically (see docs).
RuntimeError: asyncio.run() cannot be called from a running event loop
Running asyncio.run() inside an environment that already has an event loop (e.g., Jupyter notebook).
fix
Use 'await' directly in async environments. In Jupyter, import nest_asyncio and apply nest_asyncio.apply().
ModuleNotFoundError: No module named 'wyzeapy'
The library is not installed or installed in a different Python environment.
fix
Run 'pip install wyzeapy' in the correct Python environment (check with 'which python' or 'python --version').
Upgrade
Version history
0.6.0latest on PyPI · released Jun 7, 2026
Audit
Dependencies
aiohttprequiredAsync HTTP client used for API calls
asynciorequiredCore async library (stdlib)
typing_extensionsrequiredExtended type hints
Agent activity
49 hits · last 30 days
node
42
Resources
wyzeapy — pip install wyzeapy · libregistry