Pular para o conteúdo principal

ADR 0001 — Duas APIs backend

Status

Aceito.

Contexto

O produto nasceu com a API Central (/api/v1/..., /api/centralbackend/...) e passou a persistir governança, catálogos globais, tenants e cadastro de empresa numa API Default CRM. Unificar os hosts no front quebraria deploys e CORS já existentes.

Decisão

Manter duas bases:

  • getApiBaseUrl()VITE_API_BASE_URL (Central)
  • getGovernanceApiBaseUrl()VITE_GOVERNANCE_API_BASE_URL (Default)

Cada service escolhe o host pelo prefixo da rota. Em dev, o Vite classifica o path e faz proxy para o alvo certo (vite.config.ts).

Não usar SQS/Kafka neste frontend: o browser não é consumidor de fila. Eventos chegam via Socket.IO (/presence, /ws/logs).

Consequências

  • Todo endpoint novo precisa documentar qual host em ../api/endpoints.md
  • CORS em dois origens, ou same-origin + proxy
  • Riscos de chamar Central onde só existe Default (já há fallbacks, ex. form-fields e /block)