Indogermane/FritzAPI
1
0
Fork
You've already forked FritzAPI
0
SmartHome API for AVM FRITZ!Boxes - written in C#
  • C# 99.4%
  • Dockerfile 0.6%
2026年05月04日 09:04:27 +02:00
.vscode refactor: endpoint descriptions 2025年09月30日 08:43:19 +02:00
Controllers feat: return auth result with username and fritz url 2026年05月04日 09:04:27 +02:00
Helper feat (WIP): Add wifi controller 2026年04月21日 08:09:58 +02:00
Models feat: return auth result with username and fritz url 2026年05月04日 09:04:27 +02:00
Properties Initial commit 2025年08月20日 14:59:03 +02:00
Services feat: return auth result with username and fritz url 2026年05月04日 09:04:27 +02:00
.gitignore Initial commit 2025年08月20日 14:59:03 +02:00
appsettings.example.json refactor: endpoint descriptions 2025年09月30日 08:43:19 +02:00
devicelist.xml Initial commit 2025年08月20日 14:59:03 +02:00
docker-compose.yml fix: wrong env prefix 2026年01月29日 22:44:33 +01:00
Dockerfile feat: add docker files 2026年01月29日 21:34:34 +01:00
FritzAPI.csproj feat (WIP): Add wifi controller 2026年04月21日 08:09:58 +02:00
FritzAPI.http Initial commit 2025年08月20日 14:59:03 +02:00
FritzAPI.sln Initial commit 2025年08月20日 14:59:03 +02:00
LICENSE Initial commit 2025年08月20日 14:59:03 +02:00
Program.cs feat: add wifi service 2026年04月27日 12:58:13 +02:00
README.md Initial commit 2025年08月20日 14:59:03 +02:00

FRITZ!Box Smart Home API

Finally, a simple, intuitive C# wrapper implementing a RESTful API for the AVM FRITZ!Box Smart Home TR-064 interface. Control switches, thermostats and more from your applications.


Features

  • Authenticate and retrieve SID
  • Discover and list all Smart Home devices
  • Query device states (e.g. power, temperature, on/off status)
  • Toggle switches on/off
  • Read and set thermostat temperatures and schedules

Requirements

  • .NET Runtime 9 or later
  • FritzBox with TR-064 (Smart Home) enabled
  • Username and password for FritzBox web interface with permission to the Smart Home

Installation

# Clone the repository: 
git clone https://codeberg.org/Indogermane/FritzAPI.git
cd FritzAPI
# Create appsettings.json from the example and adjust it for your needs
cp appsettings.example.json appsettings.json
# Build in Release mode:
dotnet build -c Release
# Run the application:
dotnet ./FritzAPI.dll