aioamazondevices
Python library to control Amazon devices
Decision gist · record as of 2026-08-14
Yes, if you need programmatic Alexa device control in Python. Active maintenance, low install friction, no known vulnerabilities, and permissive licensing make it a solid choice. Verify that the library covers your specific device types and that you're comfortable storing Amazon credentials locally or in environment variables.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.12 or later.
- Amazon account credentials must be provided; authentication flow may require handling MFA or session tokens.
- Low friction install with six common async/parsing dependencies.
License · maintenance · safety
Apache-2.0 (permissive) — Apache-2.0 permissive license allows commercial and private use with minimal restrictions.
last release 2026-07-29 (16 days) · last repo commit 2026-08-14 · 55 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 76,988 downloads/mo, #14,564 on PyPI
Alternatives
Verify before relying
pip install aioamazondevices
import asyncio
from aioamazondevices import AmazonDevices
async def main():
devices = AmazonDevices(email="user@example.com", password="pass")
await devices.login()
device_list = await devices.get_devices()
print(device_list)
asyncio.run(main())- Whether the library supports all current Amazon device types or has gaps in device coverage
- Authentication flow details and whether it requires Amazon account credentials stored locally
- Rate limiting or throttling behavior when controlling multiple devices or routines
- Whether the API wrapper is reverse-engineered or officially supported by Amazon
What it is and what it does
aioamazondevices is an async Python library that lets you programmatically control Amazon Alexa devices—including Echo speakers, smart displays, and device groups—and trigger routines. It wraps Amazon's web API to expose device state, volume, playback, announcements, and routine execution as Python coroutines. The library depends on aiohttp, httpx, beautifulsoup4, orjson, langcodes, and python-dateutil to handle HTTP requests, HTML parsing, JSON serialization, and date handling.
You authenticate with your Amazon account credentials, then query device lists, send commands (play audio, adjust volume, make announcements), and execute routines. The library is designed for home automation, integration with other async Python frameworks, and scripting Alexa interactions without the official Alexa Skills Kit. It's actively maintained and supports Python 3.12, 3.13, and 3.14.
Use it for
- Automate Alexa device control in home automation systems or async Python applications
- Build scripts to trigger routines or send announcements across multiple Echo devices
- Query device state and metadata (volume, playback status) for monitoring or logging
- Integrate Alexa control into larger async event-driven systems or dashboards
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need programmatic Alexa device control in Python.
Active maintenance, low install friction, no known vulnerabilities, and permissive licensing make it a solid choice. Verify that the library covers your specific device types and that you're comfortable storing Amazon credentials locally or in environment variables.
Install
aioamazondevices on PyPI
Before you install
Low friction install with six common async/parsing dependencies. Active maintenance with a release 16 days ago and commits through August 2026. Targets Python 3.12+.
Requires Python 3.12 or later. Amazon account credentials must be provided; authentication flow may require handling MFA or session tokens.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions.
Quickstart
pip install aioamazondevices
import asyncio
from aioamazondevices import AmazonDevices
async def main():
devices = AmazonDevices(email="user@example.com", password="pass")
await devices.login()
device_list = await devices.get_devices()
print(device_list)
asyncio.run(main())
Verify before relying
- Whether the library supports all current Amazon device types or has gaps in device coverage
- Authentication flow details and whether it requires Amazon account credentials stored locally
- Rate limiting or throttling behavior when controlling multiple devices or routines
- Whether the API wrapper is reverse-engineered or officially supported by Amazon
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.12 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 6 packagesaiohttpbeautifulsoup4httpxlangcodesorjsonpython-dateutil |
| Maintenance | Actively maintained 16 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 76,988 / month, #14,564 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Software Development :: Libraries |
Evidence: aioamazondevices-14.2.2-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “amazon alexa device control”
- aioamazondevicesAsync Python library for controlling and querying Amazon Alexa…
- AlexaPyalexapy provides programmatic control of Amazon Echo and Alexa…
- amazon-braket-schemasProvides serialization, deserialization, and schema definitions for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also aiocomelit · aiovodafone · AlexaPy · aiovlc · anova-wifi · pyenphase · aioairzone-cloud · aioqsw · govee-ble · aiooui