AsusRouter
AsusRouter is an API wrapper for communication with ASUSWRT-powered routers using HTTP(S) protocols. The library supports both the stock AsusWRT firmware and AsusWRT-Merlin.
Up till now, it is mostly used for the custom AsusRouter Home Assistant integration and from recently by the core Home Assistant AsusWRT integration. But I am always open to making it suitable for any other use.
Installation
Installation of the latest release is available from PyPI:
pip install asusrouter
Usage
Once installed, you can import the AsusRouter class from the module. Example shows the default parameters except for host, username and password.
import aiohttp
import asyncio
from asusrouter import AsusRouter, AsusData
# Create a new event loop
loop = asyncio.new_event_loop()
# Create aiohttp session
session = aiohttp.ClientSession(loop=loop)
router = AsusRouter( #required - both IP and URL supported
hostname="router.my.address", #required
username="admin", #required
password="password", #required
use_ssl=True, #optional
session=session, #optional
)
# Connect to the router
loop.run_until_complete(router.async_connect())
# Now you can use the router object to call methods
data = loop.run_until_complete(router.async_get_data(AsusData.NETWORK))
print(data)
# Remember to disconnect and close the session when you're done
loop.run_until_complete(router.async_disconnect())
loop.run_until_complete(session.close())
Supported devices
AsusRouter supports virtually every AsusWRT-powered device.
[!TIP]
Version388.10of AsusWRT-Merlin firmware is officially NOT supported due to the issues with HTTP daemon crashes. Use versions>=388.10_2or<=388.9_2.
WiFi 7 | 802.11be
| Model | Status | Tested firmware | Find it on Amazon1 |
|---|---|---|---|
| GT-BE19000 | 💛 Expected to work | find it | |
| GT-BE98 | 💚 Confirmed | Stock:102_34372 |
find it |
| GT-BE98 Pro | 💛 Expected to work | find it | |
| RT-BE58U | 💛 Expected to work | find it | |
| RT-BE88U | 💛 Expected to work | find it | |
| RT-BE92U | 💛 Expected to work | find it | |
| RT-BE96U | 💛 Expected to work | find it | |
| TUF-BE3600 | 💛 Expected to work | find it | |
| TUF-BE6500 | 💛 Expected to work | find it | |
| ZenWiFi BD4 | 💛 Expected to work | find it | |
| ZenWiFi BQ16 | 💛 Expected to work | find it | |
| ZenWiFi BQ16 Pro | 💛 Expected to work | find it | |
| ZenWiFi BT10 | 💛 Expected to work | find it |
WiFi 6e | 802.11axe
| Model | Status | Tested firmware | Find it on Amazon1 |
|---|---|---|---|
| GT-AXE11000 | 💛 Expected to work | find it | |
| GT-AXE16000 | 💚 Confirmed | Stock:388.21617388.7_beta1_rog388.7_0_rog |
find it |
| RT-AXE7800 | 💚 Confirmed | Stock:388_22068 |
find it |
| ZenWiFi ET8 | 💚 Confirmed | Stock:388.23759 |
find it |
| ZenWiFi ET9 | 💛 Expected to work | find it | |
| ZenWiFi Pro ET12 | 💚 Confirmed | Stock:388.23013 |
find it |
WiFi 6 | 802.11ax
| Model | Status | Tested firmware | Find it on Amazon1 |
|---|---|---|---|
| DSL-AX82U | 💚 Confirmed | Merlin:386.07_0-gnuton0_beta2 |
find it |
| GT-AX11000 | 💚 Confirmed | Merlin:386.7_2388.1_0388.4_0388.7_0_rog |
find it |
| GT-AX11000 Pro | 💚 Confirmed | Stock:388.24198388.7_0_rog |
find it |
| GT-AX6000 | 💛 Expected to work | Merlin:388.7_beta1 |
find it |
| GT6 | 💛 Expected to work | find it | |
| RP-AX56 | 💚 Confirmed | find it | |
| RT-AX3000P | 💛 Expected to work | find it | |
| RT-AX52 | 💛 Expected to work | find it | |
| RT-AX53U | 💚 Confirmed | Stock:386.69061 |
find it |
| RT-AX5400 | 💛 Expected to work | find it | |
| RT-AX55 | 💚 Confirmed | Stock:386.50410386.52041 |
find it |
| RT-AX56U | 💚 Confirmed | Merlin:386.7_2388.1_0388.2_2 |
find it |
| RT-AX57 | 💛 Expected to work | find it | |
| RT-AX57 Go | 💛 Expected to work | find it | |
| RT-AX57M | 💛 Expected to work | find it | |
| RT-AX58U | 💚 Confirmed | Stock:386.49674388.22237386.7_2388.1_0388.4_0388.7.0 |
find it |
| RT-AX59U | 💛 Expected to work | find it | |
| RT-AX68U | 💚 Confirmed | Stock:388.21732 |
find it |
| RT-AX82U | 💚 Confirmed | Stock:386.48664386.49674388.8_4-gnuton1 |
find it |
| RT-AX86S | 💚 Confirmed | Stock:386.46061386.48260386.49447388.22525386.7_2 |
find it |
| RT-AX86U | 💚 Confirmed | Stock:386.46061386.48260386.49447388.22525386.7_2388.4_0388.7_beta1 |
find it |
| RT-AX86U Pro | 💚 Confirmed | Stock:388.23565 |
find it |
| RT-AX88U | 💚 Confirmed | Stock:386.45934386.48631388.24198386.5_2386.8_0388.1_0388.2_0388.4_0388.7_0 |
find it |
| RT-AX88U Pro | 💚 Confirmed | Merlin:388.4_0 |
find it |
| RT-AX89X | 💚 Confirmed | find it | |
| RT-AX92U | 💚 Confirmed | Stock:386.46061 |
find it |
| TUF-AX3000 V2 | 💚 Confirmed | Stock:388.23785 |
find it |
| TUF-AX4200 | 💛 Expected to work | find it | |
| TUF-AX5400 | 💚 Confirmed | Stock:386.50224388.21224388.22525388.23285388.24121388.4_0 |
find it |
| TUF-AX6000 | 💚 Confirmed | Stock:388.32432 |
find it |
| ZenWiFi AX (XT8) | 💚 Confirmed | Stock:386.48706388.23285386.7_2-gnuton1 |
find it |
| ZenWiFi AX Hybrid (XP4) | 💛 Expected to work | find it | |
| ZenWiFi AX Mini (XD4) | 💚 Confirmed | Stock:386.48790386.49599 |
find it |
| ZenWiFi Pro XT12 | 💚 Confirmed | Stock:388.22127 |
find it |
| ZenWiFi XD4 Plus | 💛 Expected to work | find it | |
| ZenWiFi XD4S | 💛 Expected to work | find it | |
| ZenWiFi XD5 | 💚 Confirmed | Stock:388.23949 |
find it |
| ZenWiFi XD6 | 💚 Confirmed | Stock:388.21380 |
find it |
| ZenWiFi XD6S | 💚 Confirmed | Stock:388.21380 |
find it |
| ZenWiFi XT9 | 💚 Confirmed | Stock:388_23285 |
find it |
WiFi 5 | 802.11ac
| Model | Status | Tested firmware | Find it on Amazon1 |
|---|---|---|---|
| 4G-AC55U | 💚 Confirmed | Stock:380.8102 |
find it |
| BRT-AC828 | 💚 Confirmed | Stock:382_70348 |
find it |
| DSL-AC68U | 💚 Confirmed | Stock:386.47534386.50117386.4-gnuton2386.7_2-gnuton1 |
find it |
| RT-AC51U | 💚 Confirmed | Stock:380.8591 |
find it |
| RT-AC52U B1 | 💚 Confirmed | find it | |
| RT-AC5300 | 💚 Confirmed | Merlin:386.7_2 |
find it |
| RT-AC57U V3 | 💚 Confirmed | Stock:386.21649 |
find it |
| RT-AC58U | 💚 Confirmed | find it | |
| RT-AC66U | 💚 Confirmed | Merlin:380.70_0 |
find it |
| RT-AC66U B1 | 💚 Confirmed | Stock:386.51255 |
find it |
| RT-AC68U | 💚 Confirmed | Stock:386.49703386.5_2386.7_0 |
find it |
| RT-AC85P | 💚 Confirmed | Stock:382.52516 |
find it |
| RT-AC86U | 💚 Confirmed | Stock:386.48260386.49709386.7_0386.7_2386.9_0 |
find it |
| RT-AC87U | 💚 Confirmed | Merlin:384.13_10 |
find it |
| RT-AC88U | 💚 Confirmed | Stock:386.48260386.5_0386.7_beta1386.12_2 |
find it |
| RT-ACRH17 | 💚 Confirmed | Stock:382.52517 |
find it |
| ZenWiFi AC Mini(CD6) | 💛 Expected to work | find it |
WiFi 4 | 802.11n
| Model | Status | Tested firmware | Find it on Amazon1 |
|---|---|---|---|
| RT-N66U | 💚 Confirmed | find it |
Support the library
Issues and Pull requests
If you have found an issue working with the library or just want to ask for a new feature, please fill in a new issue.
You are also welcome to submit pull requests to the repository!
Check it with your device
Testing the library with different devices would help a lot in the development process. Unfortunately, currently, I have only one device available, so your help would be much appreciated.
Other support
This library is a free-time project. If you like it, you can support me by buying a coffee.
Metadata
Release files for asusrouter 1.21.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| asusrouter-1.21.3.tar.gz | 130.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| asusrouter-1.21.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 262.3 kB
Release files / asusrouter-1.21.3.tar.gz
| Download URL | asusrouter-1.21.3.tar.gz |
|---|---|
| Size | 130.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
584063b48f2e2da2b0bb1f6bcf61abf4d77aa3450a8895ad64223babe6b21140
|
|
BLAKE2b-256 checksum How to use checksums |
4bf6008706e00edb15697f3ac810f991d8791eeea21bd51deab4b41dc735326f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 9, 2025.
Transparency logRelease files / asusrouter-1.21.3-py3-none-any.whl
| Download URL | asusrouter-1.21.3-py3-none-any.whl |
|---|---|
| Size | 132.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d08f302e64e9585a2c14ba1f7df06b730d8bd99a59663a0f36a16f5743f9d5f0
|
|
BLAKE2b-256 checksum How to use checksums |
695064f14c7baa4b72bc8a01889a12d44f32a759f730ed460b48b6375dae5efa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 9, 2025.
Transparency log