Skip to main content

Representative non-admin platform routes

  • GET /api/health
  • GET /api/leaderboard/stream
  • GET /api/locker-room/stream
  • POST /api/feed/signals (authenticated). Opted-in batches persist as FeedSignal rows (max 50 events, 64KB, 30 batches/min). Opt-out drops the payload. The response includes accepted.
  • POST /api/upload/banner, /api/upload/binder-cover, /api/upload/locker-media, /api/upload/profile
  • POST /api/cron/sync-trends
  • feature-specific sync routes such as quest/leaderboard synchronization paths

Runtime behavior highlights

  • Stream routes deliver incremental updates and require reconnect-aware clients.
  • Sync routes refresh derived data used by dashboard and ranking experiences.
  • Maintenance scripts reconcile historical inconsistencies without changing primary route contracts.
  • Unbuilt /api/* paths hit a catch-all that returns JSON 404 with code NOT_FOUND instead of the HTML app 404.

Script categories in current backend

  • backfills (points, onboarding, packs, quests)
  • cleanup/deduplication tasks
  • repair scripts for ranking/order/state drift
  • seed and setup utilities

Known caveats

  • Script execution order matters for some repair workflows.
  • Stream routes are bounded by runtime constraints and should be treated as short-lived transport sessions.

Exclusions

  • Privileged admin operations and internal-only maintenance controls are excluded from this non-admin section.