📡 Cloud API Reference
Complete API documentation with interactive examples. Explore endpoints for match analysis, player statistics, and more.
- POST /analyze - Trigger match analysis
- GET /status/{match_id} - Check analysis status
- GET /player/{steam_id} - Get player profile
- GET /stats/pga - Get PGA statistics
View Cloud API →
🎮 In-Game Coaching API
Local APIs for the real-time coaching daemon. Control the pipeline, manage TTS volume, and receive match events.
- POST /start - Start coaching pipeline
- POST /stop - Stop coaching pipeline
- POST /match_started - Match begin webhook
- POST /match_end - Match end with stats
View In-Game API →
🔑 Firebase Integration
Learn how to authenticate users and manage API keys using Firebase. Includes client SDK examples for Web, React Native, and Flutter.
- Automatic API key generation
- User authentication flow
- Rate limiting tiers
- Client SDK examples
View Firebase Docs →
🚀 Quick Start
Get started in minutes. Register, get your API key, and make your first analysis request.
- 1. Sign up via Firebase Auth
- 2. Get your API key automatically
- 3. Call /analyze with match_id
- 4. Query results via /stats/pga
Try It Now →
🔐 Steam Authentication
Authenticate users via Steam OpenID. Get API keys automatically after successful login.
- GET /auth/steam/login - Initiate Steam login
- GET /auth/callback - Handle Steam callback
- Returns API key via deep link
- No API key required for auth endpoints
View Auth API →
📊 Benchmark Data
Access hero-specific benchmark data directly from GCS. No authentication required for frontend data fetching.
- Public GCS bucket access
- Hero-specific benchmarks by rank
- Role-based statistics (Carry, Mid, etc.)
- No API call required
View Benchmark Docs →
🎯 Goal Setting API
Pre-game focus area generation. After each match analysis, generates personalized improvement areas per role using LLM insights.
- POST /goal-setting - Generate focus areas
- Auto-detects roles from player profile
- Personalized (LLM) or static tips
- Output: goal_setting/{steam_id}/{match_id}.json
View Goal Setting API →
📝 Session Summary API
Post-session LLM-powered analysis. Submit match stats after a session ends and receive AI-generated coaching insights.
- POST /session-summary - Submit matches for analysis
- GET /session-summary/{task_id} - Poll for result
- Async pattern: 202 → poll → result
- AI coaching summary via Claude
View Session Summary API →