Skip to main content

Overview

Apollo’s backend is a Python FastAPI application that provides REST API endpoints for all platform features. The API server runs at:
  • Production: api.apol.dev
  • Development: dev-api.apol.dev

API Architecture

All endpoints require authentication via Supabase JWT tokens passed in the Authorization: Bearer <token> header.

Router Summary

RouterPrefixDescription
AI/aiAI features — chat, NLP, PSE generation
Apollo Agent/api/v1/agentApollo Brain chat, streaming, sessions
Voice/api/v1/voiceOpenAI Realtime API token provisioning
Audio/audioWhisper transcription
Knowledge Base/kbKB pages and folders CRUD
GitHub/githubGitHub read operations
GitHub OAuth/github-oauthGitHub OAuth flow
GitHub Webhooks/webhooks/githubIncoming GitHub events
Cloud/cloudAWS account/resource/cost management
Infrastructure/infrastructureECS/Lambda/ECR/Amplify/Terraform
Deployments/deploymentsAmplify deployment management
PSE/pseProject Spec Engine sessions
AI Workflow/ai-workflowAI Workforce sessions/jobs
Content Engine/contentContent creation and management
Automations/automationsAutomation CRUD and execution
Google Calendar/google-calendarCalendar events and sync
Organizations/organizationsOrganization management
Admin/adminAdmin operations
Email Builder/emailEmail template management
Platform Engineering/platform-engineeringUnified provider resources

Common Patterns

Error Responses

All endpoints return standard error responses:
{
  "detail": "Error description",
  "status_code": 400
}

Pagination

List endpoints support pagination via offset and limit query parameters.

Rate Limiting

  • Standard endpoints: 100 requests/minute per user
  • Voice endpoints: 20 requests/hour, 50/day per user
  • AI endpoints: Rate-limited based on model costs