Vivere

HTTP API

Create and manage monitors with an API key.

Create an API key under API keys and send it as a bearer token. All endpoints are under https://vivere.dev/api/v1 and return JSON.

curl -H "Authorization: Bearer vv_…" https://vivere.dev/api/v1/monitors
Method and pathWhat it does
GET /monitorsList monitors.
POST /monitorsCreate a monitor. Returns it, including ping_url for heartbeats.
GET /monitors/{id}One monitor.
DELETE /monitors/{id}Delete it and its history.
POST /monitors/{id}/pause, /resumePause or resume.

Create a heartbeat

curl -X POST -H "Authorization: Bearer vv_…" -H "Content-Type: application/json" \
  -d '{"name":"nightly-db-backup","kind":"heartbeat","period":"1d","grace":"30m","tags":"prod","channels":[3]}' \
  https://vivere.dev/api/v1/monitors

Use "cron":"0 2 * * *","timezone":"Europe/Berlin" instead of period for a cron schedule.

Create an HTTP check

curl -X POST -H "Authorization: Bearer vv_…" -H "Content-Type: application/json" \
  -d '{"name":"api health","kind":"http","url":"https://api.example.com/healthz","interval":"5m","expected_status":200,"keyword":"ok"}' \
  https://vivere.dev/api/v1/monitors

Errors

Errors are {"error": "message"} with 401 (bad key), 402 (plan limit), 404, 422 (validation) or 429 (rate limit, 60 requests per minute per address).