Pular para conteúdo

Visao Geral das APIs

O Oraculo possui tres APIs independentes, cada uma com responsabilidades distintas.

Servicos

API Tecnologia Porta Responsabilidade
Platform API Java Spring Boot 4.0 8085 Gerenciamento da plataforma (usuarios, datasources, acoes)
Tracker API Go Fiber 2 8282 Coleta de eventos em tempo real e WebSocket
Models API Python FastAPI 8000 Predicoes ML, treinamento e versionamento de modelos

Autenticacao

  • Platform API: JWT Bearer Token (HS512) - obrigatorio para rotas /api/*
  • Tracker API: Sem autenticacao (endpoints publicos para o SDK)
  • Models API: Sem autenticacao direta (chamada internamente pela Tracker API)

Para detalhes sobre autenticacao, consulte o guia de autenticacao.

Formato de Respostas

Todas as APIs retornam JSON. Respostas de erro seguem o padrao:

{
  "status": 400,
  "message": "Validation error",
  "errors": ["field: must not be blank"]
}
{
  "error": "invalid request body"
}
{
  "detail": "Model not found"
}

Health Checks

Todos os servicos expoe endpoints de health check:

Servico Endpoint Descricao
Platform API GET /actuator/health Spring Actuator health
Tracker API GET /health Health completo (DB, FastAPI, WS)
Tracker API GET /health/ready Readiness probe
Tracker API GET /health/live Liveness probe
Models API GET /health Health completo (DB, MongoDB, scheduler)

Metricas (Prometheus)

Servico Endpoint
Platform API GET /actuator/prometheus
Tracker API GET /metrics
Models API GET /metrics