Skip to content

Overview

Activity feeds as a service. Feeds follow feeds; activities fan out along follow edges; users react to activities.

Auth: HS256 bearer JWT signed by the tenant’s backend with their api_secret. We issue no tokens and store no credentials.

Information

  • OpenAPI version: 3.1.0

Security scheme type: http

Bearer format: JWT

The ONLY way to authenticate /admin/* in production. The shared X-Admin-Key header this API used to accept is gone: ADMIN_KEY is unset in production, so the gateway ignores the header and the request is rejected like any other unauthenticated one. Platform staff accounts are created at a shell on the host with pnpm operator:seed — there is no route that mints one. See docs/superpowers/specs/2026-08-12-staff-seeding-design.md.

Operator session token from POST /operator/login. Distinct from tenant user tokens: different secret, issuer dropin-operator, and aud=operator. Carries only the operator id — role and tenant are read from the database on every request.

On /admin/** only a staff operator’s token is accepted; an owner’s or member’s token is rejected there, so this scheme appearing on a route does not mean every operator can call it.

Security scheme type: http

Bearer format: JWT