---
title: Public REST API with per-organization API keys
description: The dashboard was the only way in, so wiring WatchFor into your own scripts or pipelines meant clicking. A public REST API at /api/v1 now covers full monitor…
canonical: https://watchfor.io/changelog/2026-08-24-public-rest-api
---

[All updates](/changelog/page/6#2026-08-24-public-rest-api) ✨ New Aug 24, 2026 · v 5.6.7

# Public REST API with per-organization API keys

The dashboard was the only way in, so wiring WatchFor into your own scripts or pipelines meant clicking. A public REST API at /api/v1 now covers full monitor management (create, update, pause/resume, bulk, delete), uptime and check history, incidents (acknowledge, resolve, retroactive mark-as-maintenance), maintenance windows, contacts and groups, status pages with incident announcements, plan limits and usage, and who is on call. Scoped read/write API keys (shown once, stored hashed), per-plan rate limits, Idempotency-Key retries and full activity-log coverage. Docs with curl examples.

## Three calls to get going

- Create a key under Settings → API keys . Pick read for dashboards and reports, or read + write for automation. The full key is shown once and stored only as a hash, so copy it then.

- Check it works: curl https://watchfor.io/api/v1/me -H "Authorization: Bearer wf_live_…" .

- Get the state of everything in one call: GET /v1/summary .

## Made for scripts that run unattended

- Safe retries: send an Idempotency-Key header with a POST, and a retried request never creates a second monitor.

- Clear limits: each plan has a per-minute request budget. Responses carry X-RateLimit-* headers, and a 429 says how long to wait.

- One error format with a stable code, so a script can branch on not_found or conflict instead of parsing text.

- A full audit trail: every change made with a key appears in the Activity log under that key's name.

## An example

A nightly job reads the customer domains that went live that day, creates a monitor for each one with the right tags, and pauses the monitors of customers who cancelled. That used to be someone's Friday afternoon.

Start with the [API overview](/docs/api); every endpoint has a curl example.

Since then the API has added [alert rules](/changelog/2026-08-24-alert-rules-api), an [MCP server for AI agents](/changelog/2026-08-25-mcp-server) and official SDKs for [TypeScript](/changelog/2026-08-26-sdk-cli), [Python](/changelog/2026-08-26-python-sdk) and [Ruby](/changelog/2026-08-28-ruby-sdk).

Share this update

---

Canonical page: https://watchfor.io/changelog/2026-08-24-public-rest-api · Site guide: https://watchfor.io/llms.txt
