Are We Up? API

A simple REST API to manage your monitors programmatically. Available on Pro and Business.

Authentication

Create an API key in Settings → API keys, then send it as a Bearer token (or an X-API-Key header). Keep it secret — it has the same access as your account's data.

curl https://areweup.app/api/monitors \
  -H "Authorization: Bearer pp_live_xxxxxxxxxxxx"

All responses are JSON: { "data": ... } on success, { "error": true, "message": "...", "code": "..." } on failure.

Monitors

EndpointDescription
GET/api/monitorsList your monitors
POST/api/monitorsCreate a monitor
GET/api/monitors/:idGet a monitor with stats & recent checks
PUT/api/monitors/:idUpdate a monitor
DEL/api/monitors/:idDelete a monitor
POST/api/monitors/:id/pausePause / resume
GET/api/monitors/:id/incidentsIncident history

Create a monitor

curl -X POST https://areweup.app/api/monitors \
  -H "Authorization: Bearer pp_live_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Marketing site",
    "url": "https://example.com",
    "type": "http",
    "check_interval_seconds": 60,
    "expected_status_code": 200
  }'

Alert channels

GET/api/alert-channelsList channels
POST/api/alert-channelsAdd a channel
POST/api/monitors/:id/alert-channelsLink channels to a monitor

Rate limits

API requests are limited to 600 requests per 15 minutes per IP. Exceeding it returns 429 with code RATE_LIMITED.

Errors

StatusMeaning
401Missing or invalid API key
403Not allowed (plan limit, or session-only action)
404Resource not found
429Rate limited