{"openapi":"3.1.0","info":{"title":"API de CNPJ do CNPJfy","version":"1.0.0","summary":"Consulta grátis de CNPJ, com chave grátis.","description":"Dados públicos da Receita Federal do Brasil, entregues pela base aberta OpenCNPJ (https://opencnpj.org). A lista /api/v1/empresas vem de uma cópia própria da mesma base da Receita. Toda rota (menos este documento) exige uma chave grátis, criada em https://cnpjfy.walisson.dev/painel, enviada em Authorization: Bearer SUA_CHAVE (ou no cabeçalho x-api-key). Limite por chave: 60 consultas por minuto e 1.000 por dia, somando todas as rotas. Os exemplos mostram um sócio ilustrativo.","contact":{"name":"CNPJfy","url":"https://cnpjfy.walisson.dev/api"},"license":{"name":"Uso livre; creditar a Receita Federal e a OpenCNPJ","url":"https://cnpjfy.walisson.dev/api#creditos"}},"servers":[{"url":"https://cnpjfy.walisson.dev","description":"Produção"}],"security":[{"chave":[]},{"chaveApi":[]}],"tags":[{"name":"Consulta","description":"Dados cadastrais de uma empresa pelo CNPJ."},{"name":"Empresas","description":"Listas de empresas ativas por atividade e estado."},{"name":"Validação","description":"Conferência local do formato e dos dígitos verificadores."},{"name":"Base","description":"Data e tamanho da base, e este documento."}],"paths":{"/api/v1/cnpj/{cnpj}":{"get":{"operationId":"consultarCnpj","tags":["Consulta"],"summary":"Consultar um CNPJ","description":"Valida os dígitos verificadores localmente (sem chamar a fonte se forem inválidos) e devolve os dados cadastrais.","parameters":[{"name":"cnpj","in":"path","required":true,"description":"CNPJ com ou sem máscara. Aceita o formato alfanumérico. A máscara com barra (00.000.000/0001-91) funciona direto na URL; também dá para codificar a barra como %2F.","schema":{"type":"string","minLength":1,"maxLength":40},"examples":{"numerico":{"value":"00000000000191"},"mascara":{"value":"00.000.000/0001-91"},"alfanumerico":{"value":"12.ABC.345/01DE-35"}}},{"name":"incluir","in":"query","required":false,"description":"Bases extras, separadas por vírgula (até 5). Aceita: cno, rntrc, ceis, cnep, cepim, acordos_leniencia, licitacoes, contratos, convenios, emendas_documentos, emendas_parlamentares, favorecidos_pj, notas_fiscais, renuncias_fiscais.","schema":{"type":"string"},"example":"cno,rntrc"}],"responses":{"200":{"description":"Dados da empresa.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Empresa"},"example":{"cnpj":"00000000000191","cnpj_formatado":"00.000.000/0001-91","tipo_cnpj":"numerico","razao_social":"BANCO DO BRASIL SA","nome_fantasia":"DIRECAO GERAL","estabelecimento":"matriz","situacao":{"descricao":"Ativa","data":"2005-11-03","motivo":null},"situacao_especial":null,"abertura":"1966-08-01","natureza_juridica":{"codigo":"2038","descricao":"Sociedade de Economia Mista"},"porte":"Demais","capital_social":120000000000,"atividade_principal":{"codigo":"6422100","codigo_formatado":"6422-1/00","descricao":"Bancos múltiplos, com carteira comercial"},"atividades_secundarias":[{"codigo":"6499999","codigo_formatado":"6499-9/99","descricao":"Outras atividades de serviços financeiros não especificadas anteriormente"}],"endereco":{"tipo_logradouro":"QUADRA","logradouro":"SAUN QUADRA 5 BLOCO B TORRE I, II, III","numero":"SN","complemento":"ANDAR T I SL S101 A S1602","bairro":"ASA NORTE","cep":"70040912","cep_formatado":"70040-912","municipio":"BRASILIA","codigo_municipio_rf":"9701","uf":"DF","pais":null,"cidade_exterior":null},"contato":{"email":"secex@bb.com.br","telefones":[{"numero":"(61) 3493-9002","fax":false}]},"simples":{"optante":false,"data_opcao":"2007-07-01","data_exclusao":"2007-07-01"},"mei":{"optante":false,"data_opcao":null,"data_exclusao":null},"ente_federativo":null,"qualificacao_responsavel":{"codigo":"10","descricao":"Diretor"},"socios":[{"nome":"NOME DO SÓCIO","documento":"***345856**","tipo":"Pessoa Física","qualificacao":"Diretor","entrada":"2020-07-10","faixa_etaria":"41 a 50 anos","pais":null,"representante":null}],"fonte":{"nome":"Receita Federal do Brasil","via":"OpenCNPJ","via_url":"https://opencnpj.org","base":"2026-10-14","atualizado_em":"2026-10-14T09:48:02Z"},"consultado_em":"2026-11-01T12:00:00Z"}}}},"400":{"description":"CNPJ inválido ou parâmetro incluir inválido.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"cnpj_invalido","status":400,"mensagem":"O CNPJ informado não é válido. Confira os 14 caracteres e os dígitos verificadores.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"401":{"description":"Chave ausente, inválida ou revogada.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"WWW-Authenticate":{"description":"Sempre Bearer.","schema":{"type":"string"},"example":"Bearer"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"chave_invalida","status":401,"mensagem":"A chave é inválida ou foi revogada. Confira o valor ou crie outra em https://cnpjfy.walisson.dev/painel.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"404":{"description":"Não há empresa com este CNPJ na base.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"nao_encontrado","status":404,"mensagem":"Não há empresa com este CNPJ na base da Receita Federal de 14/10/2026.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"429":{"description":"Limite por minuto ou cota do dia desta chave.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até poder consultar de novo.","schema":{"type":"integer"},"example":"32"},"RateLimit-Limit":{"schema":{"type":"integer"},"example":60},"RateLimit-Remaining":{"schema":{"type":"integer"},"example":0},"RateLimit-Reset":{"schema":{"type":"integer"},"example":32}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"limite_excedido","status":429,"mensagem":"Muitas consultas seguidas com esta chave. Tente de novo em 32 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"502":{"description":"A fonte dos dados não respondeu.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"fonte_indisponivel","status":502,"mensagem":"A fonte dos dados não respondeu. Tente de novo em instantes.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"503":{"description":"A fonte dos dados limitou o acesso.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até tentar de novo.","schema":{"type":"integer"},"example":"30"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"fonte_ocupada","status":503,"mensagem":"A fonte dos dados está limitando o acesso agora. Tente de novo em 30 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}}}}},"/api/v1/validar/{cnpj}":{"get":{"operationId":"validarCnpj","tags":["Validação"],"summary":"Validar um CNPJ","description":"Só confere o formato e os dígitos verificadores, localmente. Nunca consulta a fonte. Um CNPJ inválido também responde 200 (a validação respondeu).","parameters":[{"name":"cnpj","in":"path","required":true,"description":"CNPJ com ou sem máscara. Aceita o formato alfanumérico. A máscara com barra (00.000.000/0001-91) funciona direto na URL; também dá para codificar a barra como %2F.","schema":{"type":"string","minLength":1,"maxLength":40},"examples":{"numerico":{"value":"00000000000191"},"mascara":{"value":"00.000.000/0001-91"},"alfanumerico":{"value":"12.ABC.345/01DE-35"}}}],"responses":{"200":{"description":"Resultado da validação.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Validacao"},"example":{"cnpj_informado":"00000000000192","cnpj":"00000000000192","cnpj_formatado":"00.000.000/0001-92","valido":false,"tipo":null,"motivo":"digito_verificador_incorreto","mensagem":"Os dígitos verificadores deveriam ser 91, mas são 92."}}}},"400":{"description":"Entrada vazia ou com mais de 40 caracteres.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"parametro_invalido","status":400,"mensagem":"Informe de 1 a 40 caracteres para validar.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"401":{"description":"Chave ausente, inválida ou revogada.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"WWW-Authenticate":{"description":"Sempre Bearer.","schema":{"type":"string"},"example":"Bearer"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"chave_invalida","status":401,"mensagem":"A chave é inválida ou foi revogada. Confira o valor ou crie outra em https://cnpjfy.walisson.dev/painel.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"429":{"description":"Limite por minuto ou cota do dia desta chave.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até poder consultar de novo.","schema":{"type":"integer"},"example":"32"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"limite_excedido","status":429,"mensagem":"Muitas consultas seguidas com esta chave. Tente de novo em 32 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}}}}},"/api/v1/info":{"get":{"operationId":"infoDaBase","tags":["Base"],"summary":"Data e tamanho da base","parameters":[],"responses":{"200":{"description":"Informações da base.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"},"example":{"total_empresas":73797761,"base_receita":"2026-10-14","bases_extras":[{"nome":"cno","atualizada_em":"2026-10-31"}],"fonte":{"nome":"Receita Federal do Brasil","via":"OpenCNPJ","via_url":"https://opencnpj.org"}}}}},"401":{"description":"Chave ausente, inválida ou revogada.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"WWW-Authenticate":{"description":"Sempre Bearer.","schema":{"type":"string"},"example":"Bearer"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"chave_invalida","status":401,"mensagem":"A chave é inválida ou foi revogada. Confira o valor ou crie outra em https://cnpjfy.walisson.dev/painel.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"429":{"description":"Limite por minuto ou cota do dia desta chave.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até poder consultar de novo.","schema":{"type":"integer"},"example":"32"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"limite_excedido","status":429,"mensagem":"Muitas consultas seguidas com esta chave. Tente de novo em 32 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"502":{"description":"A fonte dos dados não respondeu.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"fonte_indisponivel","status":502,"mensagem":"A fonte dos dados não respondeu. Tente de novo em instantes.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}}}}},"/api/v1/empresas":{"get":{"operationId":"listarEmpresas","tags":["Empresas"],"summary":"Listar empresas ativas por atividade e estado","description":"Empresas ativas cuja atividade principal é a subclasse informada, em ordem de CNPJ. Não traz MEIs, e-mail nem telefone: para os contatos, consulte o CNPJ. Cada chamada conta 1 consulta.","parameters":[{"name":"cnae","in":"query","required":true,"description":"Subclasse CNAE com 7 dígitos, com ou sem máscara.","schema":{"type":"string"},"example":"6920601"},{"name":"uf","in":"query","required":true,"description":"Sigla do estado.","schema":{"type":"string","minLength":2,"maxLength":2},"example":"MT"},{"name":"limite","in":"query","required":false,"description":"Itens pedidos por página.","schema":{"type":"integer","minimum":1,"maximum":200,"default":20}},{"name":"cursor","in":"query","required":false,"description":"O proximo_cursor da página anterior.","schema":{"type":"string","maxLength":512}}],"responses":{"200":{"description":"Uma página da lista.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListaEmpresas"},"example":{"edicao":"2026-10","empresas":[{"cnpj":"12345678000195","razao_social":"EMPRESA EXEMPLO LTDA","nome_fantasia":null,"municipio":"CUIABA","siafi":"9067","uf":"MT","data_abertura":"2020-01-31","porte":"MICRO EMPRESA","matriz":true,"situacao":"Ativa","cnae":"6920601","cnae_descricao":"Atividades de contabilidade"}],"proximo_cursor":null}}}},"400":{"description":"Parâmetro inválido.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"parametro_invalido","status":400,"mensagem":"Informe uf com a sigla do estado, como MT.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"401":{"description":"Chave ausente, inválida ou revogada.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"WWW-Authenticate":{"description":"Sempre Bearer.","schema":{"type":"string"},"example":"Bearer"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"chave_invalida","status":401,"mensagem":"A chave é inválida ou foi revogada. Confira o valor ou crie outra em https://cnpjfy.walisson.dev/painel.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"429":{"description":"Limite por minuto ou cota do dia desta chave.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até poder consultar de novo.","schema":{"type":"integer"},"example":"32"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"limite_excedido","status":429,"mensagem":"Muitas consultas seguidas com esta chave. Tente de novo em 32 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"502":{"description":"A fonte dos dados não respondeu.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"fonte_indisponivel","status":502,"mensagem":"A fonte dos dados não respondeu. Tente de novo em instantes.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}},"503":{"description":"A fonte dos dados limitou o acesso.","headers":{"RateLimit-Policy":{"description":"Política de limite desta rota: requisições;w=janela em segundos.","schema":{"type":"string"},"example":"60;w=60"},"Retry-After":{"description":"Segundos até tentar de novo.","schema":{"type":"integer"},"example":"30"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erro"},"example":{"erro":{"codigo":"fonte_ocupada","status":503,"mensagem":"A fonte dos dados está limitando o acesso agora. Tente de novo em 30 segundos.","documentacao":"https://cnpjfy.walisson.dev/api#erros"}}}}}}}},"/api/v1/openapi.json":{"get":{"operationId":"openapi","security":[],"tags":["Base"],"summary":"Este documento","parameters":[],"responses":{"200":{"description":"OpenAPI 3.1 desta API.","content":{"application/json":{"schema":{"type":"object"}}}}}}}},"components":{"securitySchemes":{"chave":{"type":"http","scheme":"bearer","description":"Chave grátis do painel (https://cnpjfy.walisson.dev/painel), no formato cnpjfy_xxxxxx_... Envie em Authorization: Bearer SUA_CHAVE."},"chaveApi":{"type":"apiKey","in":"header","name":"x-api-key","description":"A mesma chave, no cabeçalho x-api-key (alternativa ao Bearer)."}},"schemas":{"Empresa":{"type":"object","description":"Dados cadastrais de uma empresa.","required":["cnpj","cnpj_formatado","tipo_cnpj","razao_social","nome_fantasia","estabelecimento","situacao","situacao_especial","abertura","natureza_juridica","porte","capital_social","atividade_principal","atividades_secundarias","endereco","contato","simples","mei","ente_federativo","qualificacao_responsavel","socios","fonte","consultado_em"],"properties":{"cnpj":{"type":"string","description":"CNPJ com 14 caracteres, sem máscara, em maiúsculas.","pattern":"^[0-9A-Z]{12}[0-9]{2}$"},"cnpj_formatado":{"type":"string","description":"CNPJ com a máscara 00.000.000/0000-00."},"tipo_cnpj":{"type":"string","enum":["numerico","alfanumerico"],"description":"alfanumerico quando há letras (formato emitido desde 31/07/2026)."},"razao_social":{"type":["string","null"],"description":"Razão social."},"nome_fantasia":{"type":["string","null"],"description":"Nome fantasia."},"estabelecimento":{"type":["string","null"],"enum":["matriz","filial",null],"description":"Matriz ou filial."},"situacao":{"type":"object","description":"Situação cadastral.","required":["descricao","data","motivo"],"properties":{"descricao":{"type":["string","null"],"description":"Situação cadastral: Ativa, Suspensa, Inapta, Baixada ou Nula."},"data":{"type":["string","null"],"format":"date","description":"Data da situação cadastral."},"motivo":{"oneOf":[{"type":"object","description":"Motivo da situação.","required":["codigo","descricao"],"properties":{"codigo":{"type":["string","null"],"description":"Código."},"descricao":{"type":["string","null"],"description":"Descrição."}}},{"type":"null"}],"description":"null quando não há motivo."}}},"situacao_especial":{"oneOf":[{"type":"object","required":["descricao","data"],"properties":{"descricao":{"type":["string","null"],"description":"Descrição."},"data":{"type":["string","null"],"format":"date","description":"Data."}}},{"type":"null"}],"description":"Situação especial, quando há."},"abertura":{"type":["string","null"],"format":"date","description":"Início da atividade."},"natureza_juridica":{"type":"object","description":"Natureza jurídica.","required":["codigo","descricao"],"properties":{"codigo":{"type":["string","null"],"description":"Código."},"descricao":{"type":["string","null"],"description":"Descrição."}}},"porte":{"type":["string","null"],"description":"Porte informado à Receita."},"capital_social":{"type":["number","null"],"description":"Capital social em reais."},"atividade_principal":{"oneOf":[{"type":"object","description":"Atividade econômica (CNAE).","required":["codigo","codigo_formatado","descricao"],"properties":{"codigo":{"type":"string","description":"Código CNAE com 7 dígitos.","examples":["6422100"]},"codigo_formatado":{"type":"string","description":"Código CNAE com a máscara de sempre.","examples":["6422-1/00"]},"descricao":{"type":["string","null"],"description":"Descrição oficial da atividade."}}},{"type":"null"}],"description":"Atividade econômica principal (CNAE)."},"atividades_secundarias":{"type":"array","items":{"type":"object","description":"Atividade econômica (CNAE).","required":["codigo","codigo_formatado","descricao"],"properties":{"codigo":{"type":"string","description":"Código CNAE com 7 dígitos.","examples":["6422100"]},"codigo_formatado":{"type":"string","description":"Código CNAE com a máscara de sempre.","examples":["6422-1/00"]},"descricao":{"type":["string","null"],"description":"Descrição oficial da atividade."}}},"description":"Demais atividades econômicas (CNAE)."},"endereco":{"type":"object","required":["tipo_logradouro","logradouro","numero","complemento","bairro","cep","cep_formatado","municipio","codigo_municipio_rf","uf","pais","cidade_exterior"],"properties":{"tipo_logradouro":{"type":["string","null"],"description":"Tipo (RUA, AVENIDA...)."},"logradouro":{"type":["string","null"],"description":"Logradouro."},"numero":{"type":["string","null"],"description":"Número."},"complemento":{"type":["string","null"],"description":"Complemento."},"bairro":{"type":["string","null"],"description":"Bairro."},"cep":{"type":["string","null"],"description":"CEP sem máscara."},"cep_formatado":{"type":["string","null"],"description":"CEP com máscara."},"municipio":{"type":["string","null"],"description":"Município, como a Receita publica (caixa alta, sem acento)."},"codigo_municipio_rf":{"type":["string","null"],"description":"Código do município na Receita Federal (não é o do IBGE)."},"uf":{"type":["string","null"],"description":"Sigla do estado."},"pais":{"type":["string","null"],"description":"País, quando o endereço é no exterior."},"cidade_exterior":{"type":["string","null"],"description":"Cidade, quando o endereço é no exterior."}},"description":"Endereço do estabelecimento."},"contato":{"type":"object","required":["email","telefones"],"properties":{"email":{"type":["string","null"],"description":"E-mail cadastrado, em minúsculas."},"telefones":{"type":"array","items":{"type":"object","required":["numero","fax"],"properties":{"numero":{"type":"string","description":"Telefone com DDD, ex.: (61) 3493-9002."},"fax":{"type":"boolean","description":"true se é fax."}}}}},"description":"E-mail e telefones cadastrados."},"simples":{"type":"object","description":"Opção pelo Simples Nacional.","required":["optante","data_opcao","data_exclusao"],"properties":{"optante":{"type":["boolean","null"],"description":"true se é optante hoje; null se a Receita não informa."},"data_opcao":{"type":["string","null"],"format":"date","description":"Data da opção."},"data_exclusao":{"type":["string","null"],"format":"date","description":"Data da exclusão."}}},"mei":{"type":"object","description":"Opção pelo MEI.","required":["optante","data_opcao","data_exclusao"],"properties":{"optante":{"type":["boolean","null"],"description":"true se é optante hoje; null se a Receita não informa."},"data_opcao":{"type":["string","null"],"format":"date","description":"Data da opção."},"data_exclusao":{"type":["string","null"],"format":"date","description":"Data da exclusão."}}},"ente_federativo":{"type":["string","null"],"description":"Ente federativo responsável (órgãos públicos)."},"qualificacao_responsavel":{"oneOf":[{"type":"object","description":"Qualificação do responsável.","required":["codigo","descricao"],"properties":{"codigo":{"type":["string","null"],"description":"Código."},"descricao":{"type":["string","null"],"description":"Descrição."}}},{"type":"null"}],"description":"Qualificação do responsável pela empresa (ex.: Diretor)."},"socios":{"type":["array","null"],"description":"Quadro de sócios e administradores. null quando omitido (veja socios_omitidos). O documento já vem mascarado pela Receita.","items":{"type":"object","required":["nome","documento","tipo","qualificacao","entrada","faixa_etaria","pais","representante"],"properties":{"nome":{"type":["string","null"],"description":"Nome do sócio."},"documento":{"type":["string","null"],"description":"CPF mascarado (***345856**) ou CNPJ do sócio."},"tipo":{"type":["string","null"],"description":"Pessoa Física, Pessoa Jurídica ou Estrangeiro."},"qualificacao":{"type":["string","null"],"description":"Qualificação (Sócio-Administrador, Diretor...)."},"entrada":{"type":["string","null"],"format":"date","description":"Entrada na sociedade."},"faixa_etaria":{"type":["string","null"],"description":"Faixa etária, como a Receita publica."},"pais":{"type":["string","null"],"description":"País, para sócio estrangeiro."},"representante":{"oneOf":[{"type":"object","required":["nome","qualificacao"],"properties":{"nome":{"type":["string","null"],"description":"Nome."},"qualificacao":{"type":["string","null"],"description":"Qualificação."}}},{"type":"null"}]}}}},"socios_omitidos":{"type":"object","description":"Só aparece quando socios é null.","required":["motivo","saiba_mais"],"properties":{"motivo":{"type":"string","enum":["remocao_lgpd","anonimizado_na_fonte"]},"saiba_mais":{"type":"string","description":"Página que explica como pedir a remoção.","format":"uri"}}},"bases_extras_omitidas":{"type":"object","description":"Aparece no lugar de bases_extras, quando ?incluir= é usado e os sócios foram omitidos (as bases extras podem trazer nome de pessoa física).","required":["motivo","saiba_mais"],"properties":{"motivo":{"type":"string","enum":["remocao_lgpd","anonimizado_na_fonte"]},"saiba_mais":{"type":"string","description":"Página que explica como pedir a remoção.","format":"uri"}}},"bases_extras":{"type":"object","description":"Só aparece quando ?incluir= é usado e os sócios não foram omitidos (senão vem bases_extras_omitidas). Cada chave é uma base pedida; o valor é o que a fonte entrega (null se a empresa não aparece nela). As datas do RNTRC vêm em AAAA-MM-DD.","additionalProperties":true},"fonte":{"type":"object","required":["nome","via","via_url","base","atualizado_em"],"properties":{"nome":{"type":"string","description":"Origem dos dados."},"via":{"type":"string","description":"Serviço que entrega a base."},"via_url":{"type":"string","description":"Endereço do serviço.","format":"uri"},"base":{"type":["string","null"],"format":"date","description":"Data da base da Receita Federal."},"atualizado_em":{"type":["string","null"],"format":"date-time","description":"Momento da última atualização da base."}}},"consultado_em":{"type":"string","format":"date-time","description":"Hora (UTC) em que a resposta foi montada."}}},"ListaEmpresas":{"type":"object","description":"Uma página da lista. Pode vir com menos itens que o limite, porque MEIs e empresas com oposição (LGPD) saem depois da busca: siga proximo_cursor até vir null.","required":["edicao","empresas","proximo_cursor"],"properties":{"edicao":{"type":["string","null"],"description":"Edição da base da Receita, no formato AAAA-MM."},"empresas":{"type":"array","items":{"type":"object","required":["cnpj","razao_social","nome_fantasia","municipio","siafi","uf","data_abertura","porte","matriz","situacao","cnae","cnae_descricao"],"properties":{"cnpj":{"type":"string","description":"CNPJ com 14 caracteres, sem máscara."},"razao_social":{"type":"string","description":"Razão social."},"nome_fantasia":{"type":["string","null"],"description":"Nome fantasia."},"municipio":{"type":["string","null"],"description":"Município."},"siafi":{"type":["string","null"],"description":"Código SIAFI do município."},"uf":{"type":["string","null"],"description":"Sigla do estado."},"data_abertura":{"type":["string","null"],"format":"date","description":"Início da atividade."},"porte":{"type":["string","null"],"description":"Porte da empresa."},"matriz":{"type":"boolean","description":"true para a matriz, false para a filial."},"situacao":{"type":["string","null"],"description":"Situação cadastral."},"cnae":{"type":["string","null"],"description":"Código da atividade principal."},"cnae_descricao":{"type":["string","null"],"description":"Descrição da atividade principal."}}}},"proximo_cursor":{"type":["string","null"],"description":"Mande em cursor para pegar a página seguinte. null: acabou a lista."}}},"Validacao":{"type":"object","description":"Resultado da validação local (não consulta a Receita).","required":["cnpj_informado","cnpj","cnpj_formatado","valido","tipo","motivo","mensagem"],"properties":{"cnpj_informado":{"type":"string","description":"Exatamente o que foi enviado."},"cnpj":{"type":"string","description":"Só os caracteres [0-9A-Z], em maiúsculas."},"cnpj_formatado":{"type":["string","null"],"description":"Com máscara; null se não tem 14 caracteres."},"valido":{"type":"boolean","description":"true se os 14 caracteres e os dígitos verificadores conferem."},"tipo":{"type":["string","null"],"enum":["numerico","alfanumerico",null],"description":"null quando o CNPJ é inválido."},"motivo":{"type":["string","null"],"enum":["caracteres_invalidos","tamanho_invalido","digito_nao_numerico","caracteres_repetidos","digito_verificador_incorreto",null],"description":"null quando é válido. caracteres_invalidos: A entrada tem caracteres que não existem em CNPJ. tamanho_invalido: Depois de tirar ponto, barra, hífen e espaços, não sobram 14 caracteres. digito_nao_numerico: Um dos dois dígitos verificadores (os dois últimos caracteres) não é número. caracteres_repetidos: Todos os caracteres são iguais. digito_verificador_incorreto: Os dígitos verificadores não batem com o cálculo da raiz e da ordem."},"mensagem":{"type":"string","description":"Explicação em português."}}},"Info":{"type":"object","description":"Data e tamanho da base.","required":["total_empresas","base_receita","bases_extras","fonte"],"properties":{"total_empresas":{"type":"integer","description":"Total de empresas na base."},"base_receita":{"type":["string","null"],"format":"date","description":"Data da base da Receita Federal."},"bases_extras":{"type":"array","items":{"type":"object","required":["nome","atualizada_em"],"properties":{"nome":{"type":"string","description":"Nome da base, como em ?incluir="},"atualizada_em":{"type":["string","null"],"format":"date","description":"Última atualização da base."}}}},"fonte":{"type":"object","required":["nome","via","via_url"],"properties":{"nome":{"type":"string","description":"Origem."},"via":{"type":"string","description":"Serviço."},"via_url":{"type":"string","description":"Endereço.","format":"uri"}}}}},"Erro":{"type":"object","description":"Formato de todos os erros.","required":["erro"],"properties":{"erro":{"type":"object","required":["codigo","status","mensagem","documentacao"],"properties":{"codigo":{"type":"string","enum":["chave_ausente","chave_invalida","auth_indisponivel","cota_diaria_excedida","cnpj_invalido","parametro_invalido","nao_encontrado","metodo_nao_permitido","limite_excedido","fonte_indisponivel","fonte_ocupada"]},"status":{"type":"integer"},"mensagem":{"type":"string","description":"Explicação em português, pronta para mostrar."},"documentacao":{"type":"string","description":"Página com a lista de erros.","format":"uri"}}}}}}}}