unifi-discovery
Discover Unifi Devices
What it is and what it does
Unifi Discovery is a Python library for finding Unifi devices on a network. It uses async I/O via aiohttp and network routing information via pyroute2 to scan for and enumerate available Unifi hardware. The package is in pre-alpha development status and targets Python 3.11 through 3.14.
The library is designed for developers building network management or monitoring tools that need to locate Unifi devices programmatically. It provides an async-first interface suitable for integration into larger network discovery or automation workflows.
Use it for:
- Automatically detect available Unifi devices when setting up a network management dashboard
- Build a network inventory tool that scans for and catalogs Unifi hardware on startup
- Integrate device discovery into a monitoring system that tracks Unifi device availability
- Create an async network scanner that discovers Unifi devices without blocking other operations
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Discovers Unifi devices on a network using async I/O, returning information about available Unifi hardware.
Yes, with conditions. The package is actively maintained and has low install friction, but it is in pre-alpha status (Development Status :: 2), so expect API changes and incomplete features. Install if you need Unifi device discovery in a network tool and can tolerate early-stage software; avoid if you need production-grade stability.
Install
unifi-discovery on PyPI
pip
pip install unifi-discoveryuv
uv add unifi-discoverypoetry
poetry add unifi-discoveryInstalling unifi-discovery
Before you install
Low install friction with a pure Python wheel and only two runtime dependencies (aiohttp and pyroute2). Actively maintained with a recent commit on 2026-08-10.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.
Quickstart
pip install unifi-discovery
import unifi_discovery
# See aioscanner.py example in project repository for usage
Requires Python 3.11 or later (supports 3.11, 3.12, 3.13, 3.14); pyroute2 may require system-level network access
Verify before relying
- What specific Unifi device types or models are supported by this discovery mechanism
- Whether the package requires elevated network-level privileges or specific system permissions
- Performance characteristics and scalability limits for large networks
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (<4.0,>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — aiohttp, pyroute2 |
| Maintenance | actively maintained — 61 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 80,165/month — #14,312 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: unifi_discovery-1.5.0-py3-none-any.whl
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
bluetooth-adaptersEnumerates and locates Bluetooth adapters on a…
permissive · top 15,000 on PyPI
ibeacon-bleParses and decodes iBeacon BLE (Bluetooth Low…
permissive · top 15,000 on PyPI
aioouiPerforms asynchronous lookups of…
permissive · top 15,000 on PyPI
uiprotectProvides an async Python API and CLI for…
permissive · top 15,000 on PyPI
python-discoveryDiscovers Python interpreters installed on your…
permissive · top 1,000 on PyPI
aiounifiAsynchronous Python library for communicating…
permissive · top 15,000 on PyPI
aiousbwatcherWatches for USB devices being plugged in and…
permissive · top 15,000 on PyPI
py-unifi-accessAsync Python client for UniFi Access local API…
permissive · top 15,000 on PyPI
async-upnp-clientAsync UPnP client library for discovering,…
permissive · top 15,000 on PyPI
uart-devicesProvides a Python interface to interact with…
permissive · top 15,000 on PyPI