aioruckus
Python API to interact with Ruckus Unleashed and ZoneDirector devices
What it is and what it does
aioruckus is an async Python client for the Ruckus Unleashed and ZoneDirector wireless controller AJAX API. It lets you query device configuration (APs, WLANs, client lists, mesh topology, system info) and perform administrative actions (enable/disable WLANs, block/unblock clients, restart APs, manage WLAN groups) programmatically. The library wraps HTTP calls to the controller's web service and parses XML responses into Python objects.
The package is built on aiohttp for async HTTP, cryptography for secure communication, and xmltodict for XML parsing. It also supports reading backed-up Ruckus configuration files directly without network access. All API calls are async context-manager based, so you must use asyncio to call them—there is no synchronous interface.
Use it for:
- Automate wireless network monitoring and alerting by querying AP stats, client counts, and system alarms on a schedule.
- Build a custom dashboard or integration layer that pulls live WLAN and client data from Ruckus controllers into your monitoring stack.
- Programmatically manage WLAN groups, SSIDs, and security settings across multiple Ruckus devices in a deployment.
- Block or unblock client devices and manage rogue AP detection as part of a larger network security workflow.
- Parse and audit Ruckus backup files to extract configuration details without connecting to a live device.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Async Python client library for querying and controlling Ruckus Unleashed and ZoneDirector wireless devices via their AJAX Web Service interface, and for reading backed-up configuration files.
Yes, if you need to integrate Ruckus Unleashed or ZoneDirector devices into a Python automation or monitoring workflow. The package is actively maintained, has no known vulnerabilities, installs cleanly, and covers a broad API surface for both read and write operations. The Python 3.12+ requirement is the main constraint; verify your environment supports it before installing.
Install
aioruckus on PyPI
pip
pip install aioruckusuv
uv add aioruckuspoetry
poetry add aioruckusInstalling aioruckus
Before you install
Low install friction with a pure-Python wheel and three common async dependencies (aiohttp, cryptography, xmltodict). Actively maintained with a recent release; requires Python 3.12 or later.
License in practice
Licensed under 0BSD (permissive), so you can use, modify, and distribute the package with minimal restrictions.
Quickstart
pip install aioruckus
from aioruckus import AjaxSession
import asyncio
async def example():
async with AjaxSession.async_create("host", "user", "pass") as session:
aps = await session.api.get_aps()
print(aps)
asyncio.run(example())
Requires Python 3.12 or later and an accessible Ruckus Unleashed or ZoneDirector device (version 9.10+).
Verify before relying
- Whether the package works with ZoneDirector versions between 9.10 and the latest tested version.
- Performance characteristics when querying large numbers of clients or events across many APs.
Package facts
| License | 0BSD (permissive) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — aiohttp, cryptography, xmltodict |
| Maintenance | actively maintained — 38 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 76,923/month — #14,577 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: aioruckus-0.46.3-py3-none-any.whl
Tags
More Networking packages
h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
psutilpsutil retrieves real-time information about…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
uvloopuvloop is a drop-in replacement for Python's…
permissive · top 1,000 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
pyzmqPyZMQ provides Python bindings for ZeroMQ…
permissive · top 1,000 on PyPI
aioairzone-cloudAsync Python library for controlling Airzone…
permissive · top 15,000 on PyPI
aioqswAsync Python library for controlling QNAP QSW…
permissive · top 15,000 on PyPI
pywemoDiscovers and controls Belkin WeMo smart home…
permissive · top 15,000 on PyPI
switchbot-apiAn async Python library for controlling…
permissive · top 15,000 on PyPI
nmclinmcli is a Python wrapper for the…
permissive · top 15,000 on PyPI
pyobjc-framework-CoreWLANProvides Python bindings to macOS's CoreWLAN…
permissive · top 15,000 on PyPI
wiimwiim provides a Python API to discover,…
permissive · top 15,000 on PyPI
pyRFXtrxA Python library that communicates with RFXtrx…
copyleft · top 15,000 on PyPI
assemblyline-uiProvides REST APIs, WebSocket endpoints, and a…
permissive · top 15,000 on PyPI
ixnetwork-restpyA Python client library for automating…
permissive · top 15,000 on PyPI