API HTTP

A API HTTP para consulta de CNPJ permite aos usuários receber informações de empresas a partir do número do CNPJ.

Visão Geral da API

A API utiliza o protocolo HTTP e o formato de dados JSON para todas as solicitações e respostas. O endpoint da API é https://api.cnpjs.dev/v1/{cnpj}, onde {cnpj} é o número do CNPJ da empresa que será consultado.

A resposta da API contém informações detalhadas sobre a empresa associada ao CNPJ fornecido, incluindo detalhes de registro, situação cadastral, endereço, CNAE fiscal principal, telefones, e-mails e informações sobre sócios.

Acesso à API

A API pode ser acessada por qualquer cliente HTTP compatível com JSON. Para usar a API, os clientes devem enviar uma solicitação HTTP GET para o endpoint https://api.cnpjs.dev/v1/{cnpj} e incluir o número do CNPJ como um parâmetro de caminho. A resposta será um objeto JSON com as informações da empresa.

Qualquer tentativa de abuso da API poderá ocasionar o bloqueio do acesso. O objetivo dessas limitações é garantir a disponibilidade e a estabilidade da API para todos os usuários.

Parâmetros da solicitação

A solicitação HTTP GET deve incluir um único parâmetro de caminho:

  • cnpj: o número do CNPJ da empresa a ser consultado.

O parâmetro cnpj é obrigatório. Se o parâmetro não estiver presente na solicitação, a API retornará uma resposta de erro 404 Not found.

Resposta da API

A API retorna uma resposta HTTP para solicitações bem-sucedidas:

  • Código de status 200 indicando que a solicitação foi processada com sucesso.
  • Corpo da resposta em formato JSON, contendo as informações da empresa associada ao CNPJ fornecido.

Por exemplo, a URL https://api.cnpjs.dev/v1/33000167100246 retorna o seguinte objeto JSON:

{
    "cnpj": "33000167100246",
    "razao_social": "PETROLEO BRASILEIRO S A PETROBRAS",
    "natureza_juridica": "Sociedade de Economia Mista",
    "qualificacao_responsavel": "Diretor",
    "capital_social": 205431960000.0,
    "porte": "",
    "ente_federativo_responsavel": null,
    "nome_fantasia": "PETROBRAS",
    "situacao_cadastral": "Ativa",
    "data_situacao_cadastral": "2005-11-03",
    "motivo_situacao_cadastral": "SEM MOTIVO",
    "nome_da_cidade_no_exterior": null,
    "pais": null,
    "endereco": {
        "tipo_logradouro": "AVENIDA",
        "logradouro": "CORONEL SANTA RITA",
        "numero": "S N",
        "complemento": "CAIS DOS INFLAMAVEL",
        "bairro": "CENTRO",
        "cep": "83203210",
        "uf": "PR",
        "municipio": "PARANAGUA"
    },
    "data_inicio_atividade": "1977-05-03",
    "cnae_fiscal_principal": {
        "codigo": 4681801,
        "nome": "Comércio atacadista de álcool carburante, biodiesel, gasolina e demais derivados de petróleo, exceto lubrificantes, não realizado por transportador re"
    },
    "cnae_fiscal_secundaria": [],
    "telefone1": "2132244446",
    "telefone2": "00",
    "telefone_fax": "00",
    "email": "[email protected]",
    "situacao_especial": null,
    "data_situacao_especial": null,
    "socios": [
        {
            "tipo": "Pessoa física",
            "nome": "SALVADOR DAHAN",
            "doc": "***672828**",
            "qualificacao": "Diretor",
            "data_entrada": "2021-04-22",
            "pais": "",
            "faixa_etaria": "41 a 50 anos",
            "representante_legal": {
                "nome": "",
                "doc": "***000000**",
                "qualificacao": "Não informada"
            }
        }
    ]
}

Se ocorrer um erro durante o processamento da solicitação, a API retornará uma resposta de erro, incluindo um código de status HTTP e uma mensagem de erro explicando a causa do erro.

Códigos de status da resposta

A tabela a seguir lista os códigos de status HTTP que a API pode retornar em resposta a uma solicitação:

StatusDescrição
200A solicitação foi processada com sucesso.
400A solicitação foi malformada ou um parâmetro está faltando.
401A solicitação não incluiu as credenciais necessárias.
403O cliente não tem permissão para acessar a API.
404O CNPJ especificado não foi encontrado.
429O cliente atingiu o limite de solicitações para este período.
500O servidor encontrou um erro ao processar a solicitação.

Exemplos

Exemplos de como fazer uma solicitação à API HTTP para consulta de CNPJ:

cURL

Exemplo de requisição usando o cURL.

$ curl https://api.cnpjs.dev/v1/33000167100246
{
  "cnpj": "33000167100246",
  "razao_social": "PETROLEO BRASILEIRO S A PETROBRAS",
  "natureza_juridica": "Sociedade de Economia Mista",
  # ...
}

Python

Exemplo de requisição usando a biblioteca requests.

import requests
from pprint import pprint

response = requests.get(https://api.cnpjs.dev/v1/33000167100246)
data = response.json()
pprint(data)

Resultado:

{
  "cnpj": "33000167100246",
  "razao_social": "PETROLEO BRASILEIRO S A PETROBRAS",
  "natureza_juridica": "Sociedade de Economia Mista",
  # ...
}