ping·dan
Documentation

Quickstart

pingdan monitors HTTP endpoints on a fixed schedule, evaluates a set of assertions against each response, and alerts you when something fails. Here's the whole flow:

  1. Create an account and open your dashboard.
  2. Add an endpoint: paste a URL and pick the HTTP method.
  3. Choose a check interval and what makes a check pass.
  4. Attach an alert channel so you hear about failures.

Creating a monitor

A monitor is one URL we call on a schedule. Each monitor has a request (method + URL), a schedule (interval + timeout), and validation rules. Start with the basics:

Method:   GET
URL:      https://api.example.com/healthz
Interval: 1 min
Timeout:  10s
Expected: 200
Tip: point monitors at a dedicated /healthz endpoint that checks your own dependencies (database, cache, downstream APIs).

Check intervals

Intervals are fixed for predictable scheduling. Pick one of:

  • 1 min, 2 min, 3 min, 5 min or 8 min

The timeout controls how long we wait for a response before recording a failure.

Assertions

Assertions decide whether a check passes. Each one reads a source, applies a comparison, and checks against a target. Available sources:

  • status_code — the HTTP response status
  • response_time — latency in milliseconds
  • header — a response header by name
  • body — the full response body
  • json_path — a value resolved from a JSON body

Comparisons include equals, not-equals, greater-than, less-than, contains, not-contains and matches (regex).

JSON path

Use dotted paths to drill into a JSON response. Given this body:

{ "status": "ok", "items": [ { "id": 42 } ] }

The path status resolves to ok, and items.0.id resolves to 42. Combine with any comparison, e.g. assert json_path items.0.id equals 42.

Failure thresholds

To avoid alerting on a single transient blip, a monitor only flips to down after a configurable number of consecutive failed checks. Set it to 1 for instant alerts, or higher to filter noise.

Alert channels

Attach one or more channels to a monitor. When it goes down — and again when it recovers — we notify each channel:

  • Email — a message to any address you configure.
  • Telegram — a message to a chat via your bot.

Manage channels from the Alerts page.