voltping Sign in Start free trial

REST API

JSON over HTTPS. Available on Starter and above.

Authentication

Create a key under Settings → API keys. It is shown once. Send it as a bearer token:

curl https://voltping.com/api/v1/monitors \
  -H "Authorization: Bearer wp_your_key_here"

Keys are scoped to one workspace. Revoking a key takes effect immediately.

Endpoints

MethodPathDoes
GET/api/v1/statusWorkspace summary: counts, uptime, open incidents.
GET/api/v1/monitorsList monitors. Filter with ?state=down or ?client=12.
POST/api/v1/monitorsCreate a monitor.
GET/api/v1/monitors/{id}Fetch one monitor.
PATCH/api/v1/monitors/{id}Update fields. Send only what changes.
DELETE/api/v1/monitors/{id}Delete a monitor and its history.
GET/api/v1/monitors/{id}/checksRecent raw checks.
GET/api/v1/monitors/{id}/uptimeDaily uptime. ?days=90.
GET/api/v1/incidentsIncidents. ?open=1 for current ones.
GET/api/v1/clientsList clients.

Creating a monitor

curl -X POST https://voltping.com/api/v1/monitors \
  -H "Authorization: Bearer wp_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Northgate Dental",
    "url": "https://northgatedental.co.uk",
    "kind": "http",
    "client_id": 12,
    "interval_seconds": 60,
    "keyword": "Book an appointment"
  }'

Only url is required. name defaults to the hostname, kind to http, and interval_seconds to the fastest your plan allows.

confirm_regions sets how many checking locations must agree before the monitor is called down. It defaults to 1, and never asks for more locations than are currently reporting.

Errors

Errors return the matching HTTP status and a body of the shape:

{ "error": { "code": "plan_required", "message": "..." } }
401Missing or invalid key.
402Your plan doesn't include this. Upgrade or reduce usage.
404No such resource in this workspace.
422The request was understood but a field was invalid. The message says which.