selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Uptime-Kuma-Web-API logo

Self-host Uptime-Kuma-Web-API

v1.2.2

FastAPI wrapper adding REST API to Uptime Kuma

BetaOpen Source
Updatedlast year
LanguagePython
Setup difficultyModerate
Stars
282
Port
8000 (REST API server)
Requires
Uptime Kuma
Docker
medaziz11/uptimekuma_restapi
Install with Docker Compose
Swagger UI showing API endpoints for monitorsSwagger UI showing API endpoints for status pages and other resources

What is Uptime-Kuma-Web-API?

Uptime-Kuma-Web-API is a Python FastAPI wrapper that exposes a REST API for Uptime Kuma, the popular self-hosted monitoring tool. It adds JWT-based authentication with an admin user, Swagger/OpenAPI documentation, and a SQLite database for multi-user support (though privileges are not yet implemented). The project is distributed as a multi-architecture Docker image (amd64, arm64) and runs on port 8000. It requires an existing Uptime Kuma instance to connect to via environment variables. The latest release is v1.2.2 from August 2023, with the repository last pushed in May 2025. No license is explicitly stated in the repository.

Should you self-host Uptime-Kuma-Web-API?

Uptime-Kuma-Web-API scores 39/100 on selfhost.directory (how scoring works) and ranks #12 of 13 in API. It has 282 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is written mostly in Python.

Its closest alternative on selfhost.directory is Hoppscotch Community Edition (83/100, 80 706 stars). It scores higher overall, so compare the two before you pick. See Uptime-Kuma-Web-API vs Hoppscotch Community Edition side by side.

Features

  • Multi-user supportPrivileges not yet implemented
  • REST API
  • Swagger/OpenAPI documentation

Uptime-Kuma-Web-API README

How to install Uptime-Kuma-Web-API

Install Uptime-Kuma-Web-API with Docker Compose

Requires running Uptime Kuma instance
Environment variables
KUMA_SERVER, KUMA_USERNAME, KUMA_PASSWORD, ADMIN_PASSWORD, ACCESS_TOKEN_EXPIRATION, SECRET_KEY

version: "3.9" services: kuma: container_name: uptime-kuma image: louislam/uptime-kuma:latest ports: - "3001:3001" restart: always volumes: - uptime-kuma:/app/data

api: container_name: backend image: medaziz11/uptimekuma_restapi volumes: - api:/db restart: always environment: - KUMA_SERVER=http://kuma:3001 - KUMA_USERNAME=test - KUMA_PASSWORD=123test. - ADMIN_PASSWORD=admin depends_on: - kuma ports: - "8000:8000"

volumes: uptime-kuma: api:

Run Uptime Kuma first, create user/password, then re-run compose

How to configure Uptime-Kuma-Web-API

  • ACCESS_TOKEN_EXPIRATION8 daysMinutes the access token should be valid

    Minutes the access token should be valid

  • ADMIN_PASSWORDAn admin password to access the API

    An admin password to access the API

  • KUMA_PASSWORDThe password of your Uptime Kuma user

    The password of your Uptime Kuma user

  • KUMA_SERVERThe URL of your Uptime Kuma instance

    The URL of your Uptime Kuma instance

  • KUMA_USERNAMEThe username of your Uptime Kuma user

    The username of your Uptime Kuma user

  • SECRET_KEYA secret value to encode JWTs with

    A secret value to encode JWTs with

Uptime-Kuma-Web-API releases & version history

More in API

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…