Criei uma API que unifica várias consultas (CPF, CNPJ, CEP, FIPE, câmbio...) num único padrão de resposta
Faz um tempo que venho esbarrando no mesmo problema em quase todo projeto: preciso
consultar CPF numa API, CNPJ em outra, CEP em mais uma, FIPE em outra... e cada uma
retorna num formato diferente, com autenticação diferente, com comportamento diferente
quando cai ou fica lenta.
Então resolvi centralizar isso. Criei o Orchestrator APP: uma API onde você faz a consulta
de um jeito só e recebe sempre o mesmo padrão de resposta, não importa qual fonte
respondeu por baixo.
A ideia
Por baixo do capô, cada tipo de consulta tem vários drivers (fontes diferentes).
Quando você pede um CNPJ, por exemplo, o sistema tenta uma fonte; se ela estiver fora
do ar ou lenta, ele cai automaticamente pra próxima. Pra você, isso é invisível: a
resposta chega no mesmo formato de sempre.
Hoje já dá pra consultar:
- CPF e CNPJ
- CEP / endereços
- Tabela FIPE
- Câmbio (cotações)
- Ações
- Bancos
- Cidades, estados e países
- Domínio / WHOIS
- NCM
- Feriados
- Clima
O que tem por trás
Algumas decisões que achei importantes:
- Padrão único de resposta — mesmo contrato pra qualquer consulta.
- Múltiplos drivers com fallback — se uma fonte falha, tenta a próxima.
- Circuit breaker — fonte que está falhando muito é "desligada" temporariamente
pra não segurar sua requisição. - Cache — consultas repetidas voltam rápido, sem bater na fonte de novo.
Como fica na prática
Autenticação por header (X-API-KEY) e resposta sempre no mesmo envelope
(success, code, message, data), pra qualquer consulta.
Requisição:
GET https://orchestrator.risetech.dev.br/api/v1/services/cpf/00000000000
X-API-KEY: sua-chave-aqui
Accept: application/json
Resposta:
json { "success": true, "code": 200, "message": "Operation completed successfully.", "data": { "cpf": "00000000000", "name": "FULANO DE TAL", "status": true, "birth_date": "1990-01-01" } }
Um CNPJ, um CEP ou uma cotação da FIPE seguem exatamente a mesma estrutura — muda só
o conteúdo de data. É esse o ponto: você aprende o padrão uma vez e usa pra tudo.
Exemplo de outras rotas, mesmo formato:
GET /api/v1/services/zip_code/01001000
GET /api/v1/services/cnpj/00000000000000
GET /api/v1/services/fipe/cars/{marca}/{modelo}/{ano}
Estado atual (sendo honesto)
O projeto está no ar e funcionando, mas muitos dados ainda estão sendo carregados e
atualizados pra alimentar a base própria — então algumas consultas vão ficar mais
completas e rápidas ao longo das próximas semanas. Preferi lançar e evoluir na frente
do que segurar tudo esperando 100%.
Acesso grátis pros primeiros 30
Como quero feedback de verdade de quem constrói coisa, liberei 1 mês de acesso
gratuito pros primeiros 30 que se cadastrarem usando o cupom:
startertest no plano starter até dia 18/07/2026
Cadastro aqui: https://orchestrator.app.br/register
Se você testar, me diz o que achou — principalmente o que faltou, o que quebrou, ou
qual consulta você gostaria de ver. É exatamente esse tipo de retorno que vai guiar o
que eu priorizo agora.
Você pode entrar em contato comigo atraves do contato@orchestrator.app.br
Valeu!
Fonte: https://orchestrator.app.br/