Themis responde no mesmo contrato da Consulta CNPJ v2 do SERPRO: mesmos caminhos, mesmos nomes de campo, mesmos códigos de retorno. Um cliente escrito para a API deles funciona apontando para esta, trocando a URL base e as credenciais.
Autenticação OAuth2 client_credentials. O token é um Bearer
com validade de uma hora.
| Rota | Autenticação | Devolve |
|---|---|---|
POST /token | Basic (Key/Secret) | Emite o Bearer |
GET /v2/basica/{ni} | Bearer | Dados cadastrais, sem o quadro societário |
GET /v2/qsa/{ni} | Bearer | Quadro de sócios e administradores |
GET /v2/empresa/{ni} | Bearer | Cadastrais e quadro societário juntos |
GET /saude | nenhuma | Competência em disco e sinal de vida |
Dois passos: trocar a credencial pelo token, usar o token.
# 1. Consumer Key e Secret viram um Bearer de 1 hora curl -X POST https://themis.ecomciencia.com/token \ -H "Authorization: Basic $(echo -n 'SUA_KEY:SEU_SECRET' | base64)" \ -d 'grant_type=client_credentials' # {"access_token":"...","token_type":"Bearer","expires_in":3600,"scope":"default"} # 2. A consulta curl https://themis.ecomciencia.com/v2/empresa/00000000000191 \ -H "Authorization: Bearer SEU_TOKEN"
A especificação é gerada a partir do próprio código, então ela descreve o que está no ar agora — não uma versão anterior.
Referência navegável, com os esquemas de cada resposta e a possibilidade de experimentar as chamadas.
Abrir /docs →A mesma especificação em leitura corrida, melhor para ler de ponta a ponta antes de implementar.
Abrir /redoc →O documento cru, para gerar cliente automaticamente ou importar no Postman e no Insomnia.
Baixar /openapi.json →Qual competência está sendo servida, quantos registros e quando a base foi construída.
Consultar /saude →Nenhuma é defeito de implementação — são propriedades da fonte. Estão documentadas no OpenAPI, no campo onde mordem, e ficam aqui porque mudam o que dá para fazer com a resposta.
***794780**).
É assim que o dado é publicado pela Receita Federal. O SERPRO, como canal
autorizado, devolve o número completo; esta API não tem acesso a ele./saude informa a competência exata que está sendo servida,
para que a decisão de confiar no dado seja de quem consulta.O acesso é liberado por credencial nominal — um Consumer Key e um Consumer Secret por contratante. Preencha e retornamos por e-mail.