pi-hole/api — explained in plain English
Analysis updated 2026-07-13 · repo last pushed 2020-03-01
Build a custom dashboard that displays real-time ad-blocking stats from your Pi-hole.
Create a mobile app to monitor your home network's DNS query and blocking numbers.
Integrate Pi-hole statistics into a third-party network monitoring tool.
Develop an alternative web interface for Pi-hole using this standardized API.
| pi-hole/api | davidpdrsn/axum-live-view | azw413/ternos | |
|---|---|---|---|
| Stars | 170 | 214 | 103 |
| Language | Rust | Rust | Rust |
| Last pushed | 2020-03-01 | 2024-03-27 | 2026-03-19 |
| Maintenance | Dormant | Dormant | Maintained |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 3/5 | 3/5 | 4/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Requires a running Pi-hole with FTL engine generating shared memory, plus Rust toolchain for building from source.
This repository contains the Pi-hole API, a component that lets other programs talk to Pi-hole and pull out statistics. Pi-hole itself is a popular tool that blocks ads and trackers across your entire home network. This API was designed to be the modern way that the Pi-hole web interface and other tools retrieve data, replacing an older, less flexible system. At a high level, the API works by reading shared memory that Pi-hole's core engine (called FTL) continuously generates. Think of it as a live dashboard data feed: FTL tracks all the DNS queries, blocks, and statistics as they happen, and the API simply reads that shared data and serves it up in a clean, standardized format over HTTP. This means any app or interface can request stats the same way it requests any web page. The people who would use this are primarily the developers building the Pi-hole web interface or third-party tools that want to display Pi-hole data. For example, someone building a mobile app to monitor their home network's ad-blocking stats, or a custom dashboard for a Raspberry Pi setup, would call this API to get real-time numbers. The README is focused on development setup, so it doesn't go into detail about the specific endpoints or data formats the API exposes. One notable thing: this particular repository has been archived, meaning development has moved elsewhere, the README points to a pull request in the FTL repository for more context. The project was written in Rust, a language known for performance and safety, which makes sense for a lightweight service running on devices like Raspberry Pis. However, since it's archived and was marked "work in progress," this version isn't being actively developed anymore.
A Rust-based API that serves real-time ad-blocking statistics from Pi-hole by reading live data from its core engine. This archived version was meant to power the Pi-hole web interface and third-party dashboards.
Mainly Rust. The stack also includes Rust, HTTP, Pi-hole FTL.
Dormant — no commits in 2+ years (last push 2020-03-01).
The explanation does not mention a license for this repository.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.