KumaCLI
A command-line interface for Uptime Kuma, allowing you to manage monitors and maintenance windows from the terminal.
Installation
pip install kumacli
Configuration
Set environment variables for authentication:
export KUMA_URL="http://your-uptime-kuma-instance:3001"
export KUMA_USERNAME="your-username"
export KUMA_PASSWORD="your-password"
Or pass them as command-line arguments:
kumacli --url http://localhost:3001 --username admin --password password monitor list
Usage
Monitor Commands
# Show available subcommands
kumacli monitor
# List all monitors
kumacli monitor list
# List monitors matching patterns
kumacli monitor list --monitor "*web*"
# List monitors in specific groups
kumacli monitor list --group "production*"
# Combine filters
kumacli monitor list --monitor "*api*" --group "web*"
# Pause monitors
kumacli monitor pause --monitor "*api*"
kumacli monitor pause --group "production*"
# Resume monitors
kumacli monitor resume --monitor "*api*"
kumacli monitor resume --group "production*"
kumacli monitor resume --all
Maintenance Commands
# Show available subcommands
kumacli maintenance
# Create maintenance for specific monitors (90 minutes, starting now)
kumacli maintenance add --monitor "*nextcloud*"
# Create maintenance for groups
kumacli maintenance add --group "web*"
# Custom timing and description
kumacli maintenance add --monitor "*db*" --duration "2h" --start "2025-08-01 22:00:00" --title "Database Update"
# List all maintenances
kumacli maintenance list
# Delete specific maintenance
kumacli maintenance delete --id 5
# Delete all maintenances
kumacli maintenance delete --all
Features
- Wildcard Pattern Matching: Use
*
wildcards for monitor and group names - Time Scheduling: Flexible time parsing and duration formats (90m, 2h, 3600s)
- Group Support: Target entire groups of monitors
- Environment Variables: Store credentials securely
- Auto-generated Descriptions: Default descriptions list affected monitors
Requirements
- Python 3.8+
- Access to an Uptime Kuma instance
- uptime-kuma-api library
Description
Languages
Python
98.2%
Makefile
1.8%