Skip to content

API

Pingio REST API

Everything the dashboard does is available over HTTPS, so monitoring can live in the same repository as your infrastructure.

Base URL and versioning

All endpoints live under a versioned prefix. Breaking changes ship as a new version; additive changes are made in place.

https://pingio.io/api/v1

Authentication

Requests are authenticated with a bearer token issued for your team. Keep the token server-side and rotate it if it is ever exposed.

curl https://pingio.io/api/v1/monitors \
  -H "Authorization: Bearer $PINGIO_TOKEN"

Creating a monitor

Send a JSON body describing the target and the assertions. The response contains the created monitor, including the identifier you will use for later requests.

curl -X POST https://pingio.io/api/v1/monitors \
  -H "Authorization: Bearer $PINGIO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Production API",
    "type": "http",
    "target": "https://api.example.com/health",
    "intervalSeconds": 60
  }'

Rate limits and errors

The API allows a generous request rate per team and returns standard HTTP status codes. Errors carry a machine-readable code and a human-readable message.

A 429 response includes a Retry-After header. Treat it as a signal to back off rather than to retry immediately.