Install & Compatibility
Where this runs
tested against v1.15.1 · 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
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.706s · 21.5MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 2.1s · import 0.614s · 22MB
20MB installed
● package 20MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
FritzConnection
✓ from fritzconnection import FritzConnection
✗ from fritzconnection.core import FritzConnection
Direct import from package top-level is correct; core submodule is internal.
FritzHosts
✓ from fritzconnection.lib.fritzhosts import FritzHosts
✗ from fritzconnection import FritzHosts
Service classes are in fritzconnection.lib subpackage.
FritzStatus
✓ from fritzconnection.lib.fritzstatus import FritzStatus
✗ from fritzconnection.status import FritzStatus
Correct module is fritzconnection.lib.fritzstatus.
Connect to FRITZ!Box and get device info.
from fritzconnection import FritzConnection
# Replace with your FRITZ!Box address, user, and password
IP = '192.168.178.1'
USER = 'admin'
PASSWORD = 'your_password'
fc = FritzConnection(address=IP, user=USER, password=PASSWORD)
print(fc.call_action('DeviceInfo:1', 'GetInfo'))
fritzconnection --version
Errors
Common errors & fixes
ImportError: cannot import name 'FritzStatus' from 'fritzconnection'
FritzStatus was moved to fritzconnection.lib.fritzstatus after version 1.0.0.
fixfrom fritzconnection.lib.fritzstatus import FritzStatus
fritzconnection.core.FritzConnectionException: 401 UNAUTHORIZED
Wrong username or password for FRITZ!Box.
fixVerify credentials in FRITZ!Box settings. Default user is 'admin' with a custom password.
Upgrade
Version history
1.15.1latest on PyPI · released Jan 26, 2026
Audit
Dependencies
No dependency data recorded yet.