api-health-pulse

Lightweight endpoint health checker with Slack alerts and configurable intervals.

Python 3.8+ Zero Dependencies Slack Alerts JSON Config MIT License

Quick Start

pip install healthpulse

# Check a single URL
healthpulse --url https://api.example.com/health

# Use a config file
healthpulse config.json

# Watch mode
healthpulse config.json --watch

# JSON output
healthpulse --url https://api.example.com --json

Config Format

{
  "endpoints": [
    {"url": "https://api.example.com/health", "name": "Main API"},
    {"url": "https://api.example.com/v2/ping", "name": "V2 API"}
  ],
  "slack_webhook": "https://hooks.slack.com/services/...",
  "interval": 60,
  "timeout": 10
}

Example Output

  OK   Main API              200    42ms   https://api.example.com/health
  FAIL V2 API               503    120ms  https://api.example.com/v2/ping

  Slack alert: sent

Features

Multi-Endpoint

Monitor dozens of endpoints from a single JSON config file.

Slack Alerts

Automatically notify your team when endpoints go down.

Watch Mode

Continuously poll endpoints at configurable intervals.

Zero Deps

Pure Python standard library. No external packages required.