{"id":22191281,"url":"https://github.com/dunderrrrrr/pi-hole-fastapi","last_synced_at":"2025-07-26T22:31:24.771Z","repository":{"id":189505201,"uuid":"222943975","full_name":"dunderrrrrr/Pi-hole-FastAPI","owner":"dunderrrrrr","description":"An FastAPI for Pi-hole","archived":false,"fork":false,"pushed_at":"2019-11-20T13:35:30.000Z","size":3,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-08-20T14:37:27.151Z","etag":null,"topics":["api","fastapi","pi-hole","python","redoc","restapi","swagger","swagger-ui","uvicorn"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dunderrrrrr.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-11-20T13:29:19.000Z","updated_at":"2023-08-20T14:37:31.005Z","dependencies_parsed_at":"2023-08-20T14:54:22.464Z","dependency_job_id":null,"html_url":"https://github.com/dunderrrrrr/Pi-hole-FastAPI","commit_stats":null,"previous_names":["dunderrrrrr/pi-hole-fastapi"],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunderrrrrr%2FPi-hole-FastAPI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunderrrrrr%2FPi-hole-FastAPI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunderrrrrr%2FPi-hole-FastAPI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dunderrrrrr%2FPi-hole-FastAPI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dunderrrrrr","download_url":"https://codeload.github.com/dunderrrrrr/Pi-hole-FastAPI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227724176,"owners_count":17810036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","fastapi","pi-hole","python","redoc","restapi","swagger","swagger-ui","uvicorn"],"created_at":"2024-12-02T12:15:16.445Z","updated_at":"2024-12-02T12:15:16.931Z","avatar_url":"https://github.com/dunderrrrrr.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"PiHole FastAPI\n=============================\n\n![image alt \u003e](https://i.imgur.com/chcAAtn.png#right)\n\n**FastAPI** is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.  \n\n**Pi-hole** is a Linux network-level advertisement and Internet tracker blocking application which acts as a DNS sinkhole (and optionally a DHCP server), intended for use on a private network. It is designed for use on embedded devices with network capability, such as the Raspberry Pi, but it can be used on other machines running Linux and cloud implementations.\n\n### PiHole FastAPI\nPiHole FastAPI is using PiHole's `api.php` to create it's own, easy to use API, with backend and docs. SwaggerUI and ReDoc is included in FastAPI.  \n\n![](https://i.imgur.com/3oyoqhK.png\")\n\n### Installing\nClone repo\n```sh\n$ git clone https://github.com/dunderrrrrr/Pi-hole-FastAPI.git\n```\nCopy and edit `settings.py`.\n```sh\n$ cp settings.sample.py settings.py\n$ nano settings.py\n```\nCreate virtualenv and install requirements.\n```sh\n$ mkvirtualenv --python=/usr/bin/python3 pihole-api\n$ pip install -r requirements.txt\n```\nRun FastAPI.\n```sh\n$ python run.py\n```\n\nFastAPI: `http://127.0.0.1:8000`.  \nSwaggerUI: `http://127.0.0.1:8000/docs`.  \nRedoc: `http://127.0.0.1:8000/redoc`.\n\nYour API token for Pi-hole can be found in the Pi-hole settings tab (https://your.pihole.com/settings.php?tab=api).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdunderrrrrr%2Fpi-hole-fastapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdunderrrrrr%2Fpi-hole-fastapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdunderrrrrr%2Fpi-hole-fastapi/lists"}