Authentication
The API supports two authentication methods:API Key
Pass your API secret in thex-api-secret header:
BOT_API_SECRET environment variable.
OAuth2 Session (Bearer JWT)
The web dashboard uses Discord OAuth2:- User clicks “Login with Discord”
- Discord redirects to
/api/v1/auth/discord/callbackwith an authorization code - Server exchanges code for tokens and returns a signed JWT
- Subsequent requests must include the
Authorization: Bearer <jwt>header
Public Endpoints
These endpoints require no authentication:GET /health— Basic health checkGET /community/{guildId}/leaderboard— Public leaderboardGET /community/{guildId}/showcases— Public showcasesGET /community/{guildId}/stats— Public server statsGET /community/{guildId}/profile/{userId}— Public user profile