Consultas: CNPJ, CNAE e UFs
Consulta dados públicos de uma empresa pelo CNPJ, busca códigos de atividade CNAE e lista as 27 UFs.
Quatro consultas de apoio, todas de leitura. A consulta de CNPJ busca na Receita Federal (via provedores externos) e guarda o resultado em memória por 24 horas. O CNAE é o código oficial da atividade da empresa, útil para decidir se um cliente B2B pode comprar.
Consultar um CNPJ
/api/v1/admin/brazil/cnpj/{cnpj}AdminConsulta um CNPJ
Parâmetros de caminho
cnpjstringobrigatórioCNPJ com 14 caracteres, com ou sem pontuação (CNPJ alfanumérico é aceito).
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/brazil/cnpj/00000000000191" \
-H "Authorization: Bearer $TOKEN"Resposta
200Dados da empresa
json
{
"cnpj": "00.000.000/0001-91",
"razao_social": "BANCO DO BRASIL SA",
"nome_fantasia": "DIRECAO GERAL",
"cnae": "64.22-1-00",
"cnae_descricao": "Bancos múltiplos, com carteira comercial",
"endereco": "SAUN QUADRA 5 BLOCO B",
"numero": "SN",
"complemento": "",
"bairro": "ASA NORTE",
"cidade": "BRASILIA",
"uf": "DF",
"cep": "70040-912",
"telefone": "6134939002",
"email": "",
"situacao": "ATIVA",
"data_abertura": "1966-08-01",
"capital_social": 12000000000000,
"porte": "DEMAIS",
"natureza": "Sociedade de Economia Mista",
"atividade_principal": "6422100 - Bancos múltiplos, com carteira comercial",
"secondary_cnaes": [
"64.99-9-99 - Outras atividades de serviços financeiros não especificadas anteriormente"
],
"source": "brasilapi"
}Campos da resposta
cnpjstringCNPJ formatado.
razao_socialstringRazão social.
nome_fantasiastringNome fantasia.
cnaestringCNAE principal,
XX.XX-X-XX.cnae_descricaostringDescrição do CNAE.
enderecostringLogradouro.
numerostringNúmero.
complementostringComplemento.
bairrostringBairro.
cidadestringMunicípio.
ufstringUF.
cepstringCEP.
telefonestringTelefone.
emailstringE-mail cadastrado.
situacaostringSituação cadastral, por exemplo
ATIVA, BAIXADA, SUSPENSA.data_aberturastringAbertura,
YYYY-MM-DD.capital_socialintegerCapital social em centavos.
portestringMEI, ME, EPP ou DEMAIS.naturezastringNatureza jurídica.
atividade_principalstringcódigo - descrição.secondary_cnaesarrayAtividades secundárias (
código - descrição), quando o provedor as devolve.state_registrationstringInscrição estadual, só quando o provedor a devolve.
sourcestringProvedor que respondeu (
netrin, brasilapi, receitaws).Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | CNPJ sem 14 caracteres ou com dígitos verificadores inválidos. | {"error":"CNPJ must contain exactly 14 characters"} |
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem manage_brazil nem manage_settings. | {"error":"insufficient privileges","privilege_required_any":["manage_brazil","manage_settings"]} |
| 404 | CNPJ não encontrado. | {"error":"CNPJ not found"} |
| 429 | Limite de consultas do provedor. | {"error":"rate limit exceeded"} |
| 502 | Provedores indisponíveis. | {"error":"CNPJ lookup service unavailable"} |
| 503 | Serviço de consulta não configurado nesta instalação. | {"error":"CNPJ lookup service not configured"} |
Buscar códigos CNAE
/api/v1/admin/brazil/cnaeAdminBusca códigos CNAE
Parâmetros de consulta
qstringTrecho da descrição ou do código. Sem acentos na base (ex.:
comercio).limitintegerpadrão: 20Máximo de resultados.
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/brazil/cnae?q=comercio&limit=2" \
-H "Authorization: Bearer $TOKEN"Resposta
200Códigos
json
{
"codes": [
{
"code": "46.79-6-03",
"description": "Comercio atacadista de vidros, espelhos e vitrais",
"section": "G",
"division": "46",
"group_code": "467"
}
],
"limit": 2,
"query": "comercio",
"total": 1
}Campos da resposta
codesarrayCódigos:
code, description, section, division, group_code.totalintegerQuantidade devolvida.
querystringEco de
q.limitintegerLimite aplicado.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem manage_brazil nem manage_settings. | {"error":"insufficient privileges","privilege_required_any":["manage_brazil","manage_settings"]} |
Consultar um CNAE
/api/v1/admin/brazil/cnae/{code}AdminConsulta um CNAE
Parâmetros de caminho
codestringobrigatórioCódigo no formato
XX.XX-X-XX (com pontos e hífens).Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/brazil/cnae/47.11-3-01" \
-H "Authorization: Bearer $TOKEN"Resposta
200Código CNAE
json
{
"code": "47.11-3-01",
"description": "Comercio varejista de mercadorias em geral, com predominancia de produtos alimenticios - hipermercados",
"section": "G",
"division": "47",
"group_code": "471"
}Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Formato fora de XX.XX-X-XX (por exemplo, só dígitos). | {"error":"invalid CNAE code format: \"4711301\" (expected XX.XX-X-XX)"} |
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem manage_brazil nem manage_settings. | {"error":"insufficient privileges","privilege_required_any":["manage_brazil","manage_settings"]} |
| 404 | Código inexistente. | {"error":"CNAE code not found: 99.99-9-99"} |
Listar as UFs
Devolve as 27 UFs em ordem alfabética de sigla. Não depende da loja.
/api/v1/admin/brazil/statesAdminLista as UFs
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/brazil/states" \
-H "Authorization: Bearer $TOKEN"Resposta
200UFs
json
{
"states": [
{
"code": "AC",
"name": "Acre"
},
{
"code": "AL",
"name": "Alagoas"
}
],
"total": 27
}Campos da resposta
statesarraycode (sigla) e name.totalintegerSempre 27.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem manage_brazil nem manage_settings. | {"error":"insufficient privileges","privilege_required_any":["manage_brazil","manage_settings"]} |