fritzconnection
raw JSON → 1.15.1 verified Fri May 01 auth: no python
Library to communicate with AVM FRITZ!Box devices. Current version 1.15.1, Python >=3.7. Updated irregularly.
pip install fritzconnection Common errors
error ImportError: cannot import name 'FritzStatus' from 'fritzconnection' ↓
cause FritzStatus was moved to fritzconnection.lib.fritzstatus after version 1.0.0.
fix
from fritzconnection.lib.fritzstatus import FritzStatus
error fritzconnection.core.FritzConnectionException: 401 UNAUTHORIZED ↓
cause Wrong username or password for FRITZ!Box.
fix
Verify credentials in FRITZ!Box settings. Default user is 'admin' with a custom password.
Warnings
gotcha Default credentials fail: FRITZ!Box default user is 'admin' with a device-specific password. Not 'admin'/'password'. ↓
fix Use the password set in FRITZ!Box settings (System > FRITZ!Box Users).
breaking In version 1.0.0, the library was refactored: service classes moved from root package to fritzconnection.lib. Old imports like 'from fritzconnection import FritzStatus' break. ↓
fix Use: from fritzconnection.lib.fritzstatus import FritzStatus
gotcha The library may fail silently when the FRITZ!Box returns error codes (e.g., invalid action or service). Always check response status. ↓
fix Call action with 'check_error=True' or inspect response['error_code'].
Imports
- FritzConnection wrong
from fritzconnection.core import FritzConnectioncorrectfrom fritzconnection import FritzConnection - FritzHosts wrong
from fritzconnection import FritzHostscorrectfrom fritzconnection.lib.fritzhosts import FritzHosts - FritzStatus wrong
from fritzconnection.status import FritzStatuscorrectfrom fritzconnection.lib.fritzstatus import FritzStatus
Quickstart
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'))