Skip to main content

API Keys

All API requests require authentication using an API key. Include your key in the X-API-Key header:

Getting Your API Key

  1. Log in to your Dashboard
  2. Navigate to Settings > API
  3. Click Generate API Key
  4. Copy and securely store your key
API keys grant full access to your organization. Keep them secret and never commit them to version control.

Scoped API Keys

For fine-grained access control, create scoped API keys with specific permissions. This is recommended for CI/CD pipelines, integrations, and service accounts.
  1. Go to Settings > API Keys in your dashboard
  2. Click Create Key
  3. Name your key and select the required scopes
  4. Optionally set an expiry date
  5. Copy the key immediately — it won’t be shown again

Available Scopes

Scope Enforcement

When a scoped key attempts an action it doesn’t have permission for, the API returns:
Legacy API keys (from Settings > API) retain full *:* access for backwards compatibility.

Environment Variables

We recommend storing your API key in environment variables:

Rate Limits

Rate limit headers are included in all responses:

Endpoints Outside /api/v1

Some endpoints live at /api/ instead of /api/v1/ and use their own authentication:
  • POST /api/heartbeat/:monitorId - Send heartbeat pings (API key in header)
  • GET /api/heartbeat/:monitorId - Check heartbeat status (API key in header)
  • POST /api/beacon - Report client-side events (beacon public key in body)
  • POST /api/metrics/ingest - Push metrics (API key in header)
All of these endpoints require authentication via the X-API-Key header or Authorization: Bearer header, except the beacon endpoint which uses a beacon public key (bpk_...) in the request body.