IBAMA - Certificado de Regularidade

GET https://app.fontedata.com/api/v1/consulta/ibama-regularidade
R$ 0,51 por consulta

Debitado do seu saldo a cada chamada cobrada. Autenticação pelo header X-API-Key. Veja como obter a chave.

Consulta o Cadastro Técnico Federal (CTF/APP) do IBAMA e informa se a pessoa física ou jurídica possui Certificado de Regularidade válido — o documento que atesta o cumprimento das obrigações cadastrais e de prestação de informações ambientais junto ao órgão.

É exigido em processos licitatórios, na aprovação de financiamentos em bancos públicos, na obtenção de licenças estaduais e em certificações ambientais.

Requisição

curl -H "X-API-Key: SUA_CHAVE" \
  "https://app.fontedata.com/api/v1/consulta/ibama-regularidade?cpf=SEU_CPF"

Parâmetros

Informe cpf ou cnpj.

NomeTipoDescriçãoExemplo
cpf condicionalCPFCPF da pessoa fisica a consultar (certificado de regularidade do CTF). Informe cpf OU cnpj. Aceita com ou sem pontuacao.000.000.000-00
cnpj condicionalCNPJCNPJ da pessoa juridica a consultar (certificado de regularidade do CTF). Informe cpf OU cnpj. Aceita com ou sem pontuacao.00.000.000/0000-00

Resposta

Campo Tipo Descrição
documento string CPF ou CNPJ pesquisado, com máscara.
constaCertificado boolean true quando existe certificado de regularidade emitido.
nomeEmpresarial string | null Razão social registrada.
nomeFantasia string | null Nome comercial, quando houver.
numeroRegistro string | null Número de inscrição no CTF.
dataEmissao string | null Data de emissão do certificado.
dataValidade string | null Data de vencimento do certificado.
dataAbertura string | null Data de constituição/inscrição.
dataConsulta string Data em que a consulta foi feita.
observacao string | null Mensagem do órgão quando não há certificado.
categorias object | null Categorias de atividade registradas. Ver abaixo.
atividades object | null Bloco de atividades. Vem null na prática.
logradouro, numero, complemento, bairro, municipio, uf, cep Endereço do registro.

categorias

Quando certificado, vem {"listaCategorias": [{"categoria", "detalhe"}], "observacaoCategoria": "<mensagem do órgão>"}. Quando não há, vem null e a mensagem do órgão fica em observacao.

Exemplo — 200 OK
{
  "uf": "string",
  "cep": "string",
  "bairro": "string",
  "numero": "number",
  "documento": "string",
  "municipio": "string",
  "atividades": null,
  "categorias": {
    "listaCategorias": [
      {
        "detalhe": "string",
        "categoria": "string"
      }
    ]
  },
  "logradouro": "string",
  "observacao": null,
  "complemento": "string",
  "dataEmissao": "string",
  "dataAbertura": "string",
  "dataConsulta": "string",
  "dataValidade": "string",
  "nomeFantasia": "string",
  "numeroRegistro": "string",
  "nomeEmpresarial": "string",
  "constaCertificado": "boolean"
}
Schema da resposta (JSON Schema)
JSON Schema
{
  "type": "object",
  "properties": {
    "uf": {
      "type": [
        "string",
        "null"
      ],
      "description": "Unidade Federativa (estado)."
    },
    "cep": {
      "type": [
        "string",
        "null"
      ],
      "description": "Código de Endereçamento Postal."
    },
    "bairro": {
      "type": [
        "string",
        "null"
      ],
      "description": "Bairro do endereço."
    },
    "numero": {
      "type": [
        "number",
        "null"
      ],
      "description": "Número do endereço."
    },
    "documento": {
      "type": [
        "string",
        "null"
      ],
      "description": "Número do CPF ou CNPJ."
    },
    "municipio": {
      "type": [
        "string",
        "null"
      ],
      "description": "Município ou cidade."
    },
    "atividades": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "listaAtividades": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": [
              "string",
              "null"
            ]
          },
          "description": "Lista de atividades."
        },
        "observacaoAtividade": {
          "type": [
            "string",
            "null"
          ],
          "description": "Observações sobre as atividades."
        }
      },
      "description": "Dados de atividades relacionadas ao registro."
    },
    "categorias": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "listaCategorias": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "object",
            "properties": {
              "detalhe": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Detalhes da categoria."
              },
              "categoria": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Nome da categoria."
              }
            }
          },
          "description": "Lista de categorias."
        },
        "observacaoCategoria": {
          "type": [
            "string",
            "null"
          ],
          "description": "Observações sobre as categorias."
        }
      },
      "description": "Dados de categorias relacionadas ao registro."
    },
    "logradouro": {
      "type": [
        "string",
        "null"
      ],
      "description": "Nome da rua, avenida ou via pública."
    },
    "observacao": {
      "type": [
        "string",
        "null"
      ],
      "description": "Observação geral sobre o registro."
    },
    "complemento": {
      "type": [
        "string",
        "null"
      ],
      "description": "Complemento do endereço."
    },
    "dataEmissao": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data de emissão do certificado no formato dd/MM/yyyy HH:mm:ss."
    },
    "dataAbertura": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data de abertura da entidade no formato dd/MM/yyyy HH:mm:ss."
    },
    "dataConsulta": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data da consulta no formato dd/MM/yyyy HH:mm:ss."
    },
    "dataValidade": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data de validade do certificado no formato dd/MM/yyyy HH:mm:ss."
    },
    "nomeFantasia": {
      "type": [
        "string",
        "null"
      ],
      "description": "Nome fantasia da entidade."
    },
    "numeroRegistro": {
      "type": [
        "string",
        "null"
      ],
      "description": "Número de identificação do registro."
    },
    "nomeEmpresarial": {
      "type": [
        "string",
        "null"
      ],
      "description": "Nome ou razão social da entidade."
    },
    "constaCertificado": {
      "type": [
        "boolean",
        "null"
      ],
      "format": "bool",
      "description": "Indica se existe certificado válido para a entidade."
    }
  }
}

Códigos de erro

CódigoMensagemQuando acontece
400Requisição Inválidaa requisição está incorreta ou os parâmetros são inválidos.
401Não Autenticadoo usuário não forneceu as credenciais corretas para acessar o recurso.
403Não Autorizadoo servidor recebeu a requisição, mas se negou a autorizá-la por conta de saldo indisponível.
404Não Encontradoo servidor não encontrou uma representação atual do recurso solicitado.
408Tempo Esgotadoo servidor não conseguiu retornar a requisição no prazo estabelecido.
500Falha ao Realizar Consultao servidor não conseguiu processar a requisição com sucesso. Por favor, entre em contato com o nosso suporte.
503Consulta em Manutençãoa consulta requisitada está em manutenção. Por favor, entre em contato com o nosso suporte.

Como ler o resultado

  • constaCertificado: true → a pessoa possui Certificado de Regularidade emitido e válido até dataValidade.
  • constaCertificado: falsenão possui. A explicação do órgão vem em observacao, e normalmente é a ausência de inscrição ativa no CTF ou o descumprimento de obrigações cadastrais. Note que não ter certificado não é o mesmo que ter irregularidade ambiental — muitas atividades sequer exigem inscrição no CTF.

Quando nada consta

Se a fonte não encontra registro algum para o documento, a resposta não traz os campos acima. Ela vem no formato curto de negativa:

{
  "consta": false,
  "mensagem": "Nada consta para os parâmetros informados.",
  "parametros": { "cnpj": "00000000000191" }
}

Trate consta: false como o "nada consta" definitivo. Não assuma que os demais campos existem sempre — teste a presença antes de ler. Medido em 27/07/2026: esse é o formato de 15 em 20 consultas deste endpoint.

Observações

  • Fonte oficial: IBAMA — Cadastro Técnico Federal, https://servicos.ibama.gov.br/ctf/publico/certificado_regularidade.php.
  • O certificado do CTF/APP não dispensa licenças, autorizações e alvarás de outros entes, nem habilita o transporte de produtos florestais e faunísticos.
  • A consulta aceita CPF ou CNPJ; enviar os dois é erro de parâmetro.

Quando a certidão não é emitida

Quando a fonte oficial não localiza o titular do documento informado, a certidão não é emitida e a consulta responde:

HTTP 404
{"error": {"code": "certidao_nao_emitida", "message": "..."}}

Esse retorno não significa regularidade ambiental — significa que a fonte não conseguiu identificar o titular e, portanto, não emitiu o documento. A consulta é cobrada normalmente, pois a fonte foi efetivamente acionada e cobra por essa tentativa.

Integrar

OpenAPI (JSON) ↗ — importe a URL no Postman ou no Insomnia para gerar a coleção com todos os endpoints. Também dá para consultar pelo chat: conecte via MCP. Esta página em Markdown.