Registry / http-networking / wyzeapy

wyzeapy

JSON →
library0.6.0pypypi✓ verified 88d 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.9–3.13
musl
3.9–3.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.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.826s · 38.9MB
glibc
py 3.10–3.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
48 hits · last 30 days
node
42
Resources
wyzeapy — pip install wyzeapy · libregistry