Contents

Chapter 1

Features

This chapter covers the core features and capabilities of API Poller.

Features

  • Scheduled polling — Check endpoints at configurable intervals (seconds to hours)
  • Change detection — Content hashing detects when API responses change
  • Alert webhooks — Send notifications when changes or errors are detected
  • Response archiving — Store every response in SQLite for historical analysis
  • Multi-endpoint support — Poll many endpoints with independent schedules
  • One-shot mode — Poll once and exit (great for cron integration)
  • History queries — Query past responses and alerts from the CLI
  • Daemon mode — Run continuously with graceful shutdown

Requirements

  • Python 3.10+
  • No external dependencies (stdlib only)
Chapter 2

Quick Start

Follow this guide to get API Poller up and running in your environment.

Quick Start

bash
# Poll an endpoint every 60 seconds
python src/api_poller.py --url https://api.example.com/v1/status --interval 60

# Poll once and print results
python src/api_poller.py --url https://api.example.com/v1/health --once

# Poll with change alerts
python src/api_poller.py --url https://api.example.com/v1/data \
    --alert-webhook https://hooks.example.com/alert --interval 300

# Full config for multiple endpoints
python src/api_poller.py --config examples/poller_config.json

# View poll history
python src/api_poller.py --history

# View recent alerts
python src/api_poller.py --alerts

Configuration Reference

json
{
    "endpoints": [
        {
            "name": "status-page",
            "url": "https://api.example.com/v1/status",
            "interval_seconds": 60,
            "alert_webhook": "https://hooks.example.com/alert",
            "headers": {"Authorization": "Bearer YOUR_API_TOKEN_HERE"},
            "expected_status": 200
        },
        {
            "name": "pricing-api",
            "url": "https://api.example.com/v1/pricing",
            "interval_seconds": 3600,
            "alert_webhook": "https://hooks.example.com/alert",
            "detect_changes": true
        }
    ],
    "database": "api_polls.db"
}

CLI Options

FlagDefaultDescription
--config, -c—Poller config file (JSON)
--url, -u—Single URL to poll
--interval, -i60Poll interval in seconds
--alert-webhook—Webhook URL for alerts
--oncefalsePoll once and exit
--history—Show poll history (optionally for a specific endpoint)
--alertsfalseShow recent alerts
--databaseapi_polls.dbSQLite database path
--log-levelINFOLogging level

Endpoint Options

FieldTypeDescription
namestringEndpoint identifier
urlstringURL to poll
interval_secondsintSeconds between polls
alert_webhookstringURL to send alerts to
headersdictCustom HTTP headers
expected_statusintExpected HTTP status code (alert on mismatch)
detect_changesboolAlert when response body changes
Chapter 3
🔒 Available in full product

FAQ

You’ve reached the end of the free preview

Get the full API Poller and unlock everything.

All Chapters

Get the complete guide with every chapter unlocked, including code samples, diagrams, and best practices.

Full Tool Suite

Access all interactive tools with complete data, all workload profiles, and the full scenario library.

Source Files

Downloadable source code, configuration files, and working examples from every chapter.

Lifetime Updates

Free updates for life. Every new chapter, tool, and improvement included.

Buy Now — $19 →
📦 Free sample included — download another copy for the full product.
API Poller v1.0.0 — Free Preview