Skip to content

Authentication

The YipYap API authenticates via API keys on the Authorization header. Session cookies are accepted for first-party console access but are not part of the public contract.

See Integrations → API Keys for the setup guide. Keys are created in the console under Settings → API Keys and are shown exactly once at creation time.

Include the key as a Bearer token on every request:

Terminal window
curl https://console.yipyap.run/api/v1/monitors \
-H "Authorization: Bearer yy_live_AbCdEfGhIjK..."

Keys are prefixed so you can identify them at a glance:

PrefixMeaning
yy_live_Production SaaS key.
yy_test_Sandbox/testing SaaS key.
yy_foss_Key for a self-hosted FOSS deployment.

Each key is issued with a set of scopes; the server rejects requests whose path requires a scope the key does not hold. Follow least-privilege: a Prometheus-to-YipYap bridge only needs events, not monitors.

ScopeGrants
monitorsRead/write monitors, monitor groups, custom states.
alertsRead alerts; acknowledge and resolve.
escalation_policiesRead/write escalation policies and steps.
notification_channelsRead/write notification channels.
maintenance_windowsRead/write maintenance windows.
status_pagesRead/write status pages.
servicesRead/write the service catalog.
incidentsRead/write incidents and incident updates.
schedulesRead/write on-call schedules.
teamsRead/write teams.
eventsPOST to the inbound Events API (/api/v1/events).
heartbeatPOST to the heartbeat API.
cloudeventsPOST to the CloudEvents ingest endpoint.
adminOrg-level admin operations (API keys, settings, billing).

Scopes are additive. A request that requires two scopes (e.g. reading a monitor and dispatching a test notification) needs both on the key.

Logged-in console users authenticate via a JWT session cookie set by POST /api/v1/auth/login. The console UI uses this; the public API reference assumes you are using an API key. Endpoints under /api/v1/auth/**, /api/v1/billing/**, and any route that changes account-level settings are only reachable by a logged-in session, not by an API key.

For machine-to-machine integrations behind OIDC (e.g. Knative Eventing sources posting CloudEvents to YipYap), see Knative Eventing → Authentication. The CloudEvents ingest endpoint validates OIDC-issued JWTs directly; API keys are accepted as a fallback only for simple clients.

There is no public impersonation API. Internal staff impersonation lives under /api/internal/v1/impersonate/{orgID} and is gated to YipYap operators with hardware-key MFA; it is never callable by customer keys.