Uptime-Kuma-API

A REST API wrapper for Uptime Kuma using Uptime-Kuma-API

  • Cloud
  • Network Services
  • Tools & Utilities
A REST API wrapper for Uptime Kuma using Uptime-Kuma-API

Platform availability

Available on 1 of 9 platforms

  • Unraid
  • TrueNAS (not listed)
  • Umbrel (not listed)
  • ZimaOS (not listed)
  • Proxmox (not listed)
  • Helm (not listed)
  • Mac (not listed)
  • Windows (not listed)
  • Linux (not listed)

Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.

23/100 Low

Maintained
0last commit 1160 days ago
Popular
49280 GitHub stars
Easy to install
351 install platform, install notes, Docker image
Light to run
No data

Based on 3 of 4 factors.

Availability: platform listings confirmed today, links checked 13 days ago

GitHub stars
280
Open issues
44
Last commit
2023-08-10
Latest release
v1.2.2
Activity
stale

Checked 5 days ago - source: GitHub (MedAziz11/Uptime-Kuma-Web-API)

Resources & Compatibility

ARM (e.g. Raspberry Pi) is supported.

Checked 15 days ago - source: Docker Hub image tags and published docs

First-install notes

  • Install the Python helper package Run pip install uptime-kuma-api in your terminal; pip is the Python package installer. Without it, your scripts or automations cannot talk to Uptime Kuma through this API. source
  • Create the admin login once Before using other features, check if the server needs first-run setup and, if so, call setup() with your chosen username and password. This creates the administrator account; if it is skipped, Uptime Kuma may be unfinished and you may not be able to sign in. source
  • Add 2FA for safer logins For extra security, use prepare_2fa with your password and scan the returned setup URI in an authenticator app. Two-factor (2FA) makes someone else need a second login code in addition to your password. source

Fetched 15 days ago - each note links to its source

Alternatives (12)

  • Better Stack - AI-driven monitoring platform providing incident management, real-time logs, uptime, traces, error tracking, infrastructure analytics, and…
  • HetrixTools
  • Kener
  • PHP Server Monitor - PHP Server Monitor checks whether your websites and servers are up and running.
  • Pingdom - Monitors uptime, downtime, and website performance in real time using synthetic and real user data, with instant alerts, customizable repor…
  • Pulsetic - Get instant website downtime alerts via phone call, SMS, email, or Slack, monitor global uptime in real time, create status pages, and mana…
  • StablePing
  • Statping-ng - Statping-ng aims to be an updated drop-in replacement of statping after development stopped on the original fork.
  • StatusCake - Tracks uptime and performance for up to 10 websites, sends alerts via multiple channels, offers root cause analysis, and a free plan with p…
  • Tianji - Tianji is a self-hosted website analytics and uptime monitoring platform that combines visitor traffic insights, service availability check…
  • Uptime Kuma - Uptime Kuma is an easy-to-use, self-hosted monitoring tool that tracks the availability of websites, APIs, network services, and Docker con…
  • Uptime.com

Checked yesterday - source: AlternativeTo

Common questions

Why might the API fail to connect to my Uptime Kuma instance?

You must define the required KUMA_SERVER, KUMA_USERNAME, KUMA_PASSWORD, and ADMIN_PASSWORD environment variables. In the Docker Compose example, start Uptime Kuma first, create the Kuma username and password, then re-run the compose file.

How do I authenticate requests to the REST API?

POST to /login/access-token with username=admin and the ADMIN_PASSWORD value to obtain an access token. Send the returned access token in the Authorization header as Bearer ${TOKEN}.

Where does the wrapper store its data?

It uses a small SQLite database for multi-user API data. In the Docker Compose example, that data is persisted in the api volume mounted at /db.

Which optional environment variables control token and JWT behavior?

ACCESS_TOKEN_EXPIRATION sets how many minutes an access token should be valid, defaulting to 8 days. SECRET_KEY is the secret value used to encode JWTs.

Answers sourced from github.com

Community

Collected 9 days ago - public community threads