Documentação da API
Consulte crédito de CPF e CNPJ pelo seu sistema. Resposta em JSON, envelope estável, ambiente de testes que não cobra.
Primeiros passos
Do zero à primeira consulta. Não precisa falar com ninguém: a conta é criada, testada e ativada por você.
-
1
Crie sua conta
Acesse a plataforma e cadastre-se com e-mail e senha. Você recebe um código de verificação por e-mail - confirme antes de continuar.
Criar conta -
2
Cadastre a empresa e assine o termo
Informe CNPJ, razão social e endereço, e assine eletronicamente o termo de uso dos dados. É o que autoriza suas consultas e declara a finalidade - exigência do bureau e da LGPD. Feito uma vez.
-
3
Gere a chave de API
No menu lateral, abra "API Keys" e clique em criar. Dê um nome que identifique onde a chave vai ser usada (ex.: "ERP produção") - se um dia precisar revogar, você saberá qual é.
A chave aparece UMA vez. Copie e guarde num cofre no mesmo instante: guardamos apenas o hash e não há como recuperá-la depois. Perdeu, gere outra e revogue a antiga.
-
4
Teste sem gastar crédito
Sua conta começa em ambiente de testes: as consultas devolvem dados simulados, no mesmo formato da resposta real, e não debitam nada. Integre inteiro antes do primeiro centavo.
-
5
Compre créditos e ative a produção
Compre um pacote avulso (sem mensalidade) ou assine um plano, e troque para produção na plataforma. A partir daí as consultas são reais e debitam do saldo.
Autenticação
Toda chamada leva a sua chave no header. Ela identifica a empresa e é de onde o crédito sai.
Chave de consulta
ok_live_…
Header: X-API-Key
Consulta CPF e CNPJ, debitando do saldo da sua empresa.
Você gera sozinho, na plataforma, em API Keys.
Chave é segredo: guarde em cofre ou variável de ambiente, nunca no código do aplicativo nem no front-end. Vazou, revogue e gere outra - leva segundos e não derruba as demais.
Endereços
| API | https://api.radardocredito.com.br |
| Plataforma | https://app.radardocredito.com.br |
Ambiente de testes
Toda conta nova nasce em homologação. As consultas devolvem dados simulados no mesmo formato da resposta real e não debitam crédito - dá para integrar do começo ao fim sem gastar nada.
O campo creditos.cobrado diz o que aconteceu: false em homologação, true quando a consulta foi real e o crédito saiu.
A troca para produção é feita na plataforma, na barra lateral. Depois disso, toda consulta é real.
/api/radar/v1/consulta-pf
X-API-Key
Consultar CPF
Score, restritivos e cadastro positivo de uma pessoa física.
Corpo
| Campo | Obrigatório | Tipo | Observação |
|---|---|---|---|
cpf | sim | string | Com ou sem máscara. |
solicitante | não | string | CNPJ da sua empresa. Sem ele, usamos o cadastrado. |
curl -X POST 'https://api.radardocredito.com.br/api/radar/v1/consulta-pf' \
-H 'Content-Type: application/json' \
-H 'X-API-Key: SUA_CHAVE' \
--data '{"cpf":"123.456.789-09"}'
Ver o contrato completo da resposta
Esta é a resposta inteira, com todos os campos. O formato não muda: campo que a consulta não trouxer vem null, e nunca some do JSON. Programe contra este contrato e sua integração continua valendo mesmo quando melhorarmos a fonte por trás.
{6 campos}
"consulta": {5 campos},
"resultado": {9 campos},
"score": {7 campos},
"restritivos": {5 campos},
"categorias": {4 campos},
"acoesJudiciais": {5 campos},
"protestos": {5 campos},
"debitos": {5 campos},
"protestosSP": {5 campos}
"detalhes": [1 item]
{10 campos}
"cadastroPositivo": {2 campos},
"detalhe": {3 campos}
"identificacao": {23 campos},
"endereco": {8 campos},
"telefones": [1 item],
"consultas": {4 campos},
"porMes": [2 itens]
{2 campos},
{2 campos}
"modelosAdicionais": [1 item]
{7 campos}
"creditos": {2 campos},
"arquivo": {3 campos},
"metadata": {1 campo}
"data": {12 campos}
"Classifica": {2 campos},
"Identity": {10 campos},
"Address": {7 campos},
"Telefones": [1 item]
{2 campos}
"Restritivos": {6 campos},
"AcoesJudiciais": {5 campos},
"Protestos": {5 campos},
"DebitosResumo": {5 campos},
"ProtestosSP": {5 campos},
"DebitosDetalhe": [1 item],
{9 campos}
"Positivo": {3 campos},
"Modelos": [2 itens],
{10 campos},
{10 campos}
"ResumoConsultas90": {2 campos}
"Meses": [2 itens]
{3 campos},
{3 campos}
| Campo | Tipo | O que é |
|---|---|---|
versao | string | Versão do contrato. Muda só se o formato mudar - e aí a versão antiga continua respondendo. |
consulta | objeto | O que foi perguntado: tipo, documento, solicitante, ambiente e quando. |
resultado | objeto | O que veio. Nove blocos, sempre presentes: score, restritivos, cadastroPositivo, identificacao, endereco, decisao, participacoes, consultas (volumetria de consultas ao documento) e modelosAdicionais (outros modelos de score, ex.: renda presumida). Bloco sem dado vem null inteiro; modelosAdicionais vem lista vazia. |
creditos | objeto | custoBRL = quanto essa consulta custou. cobrado = false em ambiente de testes, quando nada é debitado. |
arquivo | objeto ou null | Relatório em PDF: link assinado que expira em 3 dias. null quando a geração falhou - a consulta em si continua válida. |
metadata | objeto | Resposta bruta da consulta, para auditoria e uso avançado - traz campos que o resultado não resume (modelos de score, painel do cadastro positivo, consultas anteriores, resumo de 90 dias). É o ÚNICO campo cujo formato pode mudar sem aviso: não programe contra ele. |
plano e descricao vêm null: eram o nome comercial do modelo de score de quem calcula, e isso não vai para o cliente. O que descreve o resultado - valor, classificacao, probabilidadeInadimplencia e texto - continua vindo.
O resultado é o mesmo para CPF e CNPJ. Um CNPJ não devolve nome da mãe, e uma pessoa física normalmente não devolve participações societárias - nesses casos o bloco vem null, nunca ausente.
/api/radar/v1/consulta-pj
X-API-Key
Consultar CNPJ
Score, restritivos, sócios e participações de uma pessoa jurídica.
Corpo
| Campo | Obrigatório | Tipo | Observação |
|---|---|---|---|
cnpj | sim | string | Com ou sem máscara. |
solicitante | não | string | CNPJ da sua empresa. |
curl -X POST 'https://api.radardocredito.com.br/api/radar/v1/consulta-pj' \
-H 'Content-Type: application/json' \
-H 'X-API-Key: SUA_CHAVE' \
--data '{"cnpj":"12.345.678/0001-90"}'
Ver o contrato completo da resposta
Esta é a resposta inteira, com todos os campos. O formato não muda: campo que a consulta não trouxer vem null, e nunca some do JSON. Programe contra este contrato e sua integração continua valendo mesmo quando melhorarmos a fonte por trás.
{6 campos}
"consulta": {5 campos},
"resultado": {9 campos},
"score": {7 campos},
"restritivos": {5 campos},
"categorias": {4 campos},
"acoesJudiciais": {5 campos},
"protestos": {5 campos},
"debitos": {5 campos},
"protestosSP": {5 campos}
"detalhes": [1 item]
{10 campos}
"cadastroPositivo": {2 campos},
"detalhe": {3 campos}
"identificacao": {23 campos},
"endereco": {8 campos},
"telefones": [1 item],
"consultas": {4 campos},
"porMes": [2 itens]
{2 campos},
{2 campos}
"modelosAdicionais": [1 item]
{7 campos}
"creditos": {2 campos},
"arquivo": {3 campos},
"metadata": {1 campo}
"data": {12 campos}
"Classifica": {2 campos},
"Identity": {10 campos},
"Address": {7 campos},
"Telefones": [1 item]
{2 campos}
"Restritivos": {6 campos},
"AcoesJudiciais": {5 campos},
"Protestos": {5 campos},
"DebitosResumo": {5 campos},
"ProtestosSP": {5 campos},
"DebitosDetalhe": [1 item],
{9 campos}
"Positivo": {3 campos},
"Modelos": [2 itens],
{10 campos},
{10 campos}
"ResumoConsultas90": {2 campos}
"Meses": [2 itens]
{3 campos},
{3 campos}
| Campo | Tipo | O que é |
|---|---|---|
versao | string | Versão do contrato. Muda só se o formato mudar - e aí a versão antiga continua respondendo. |
consulta | objeto | O que foi perguntado: tipo, documento, solicitante, ambiente e quando. |
resultado | objeto | O que veio. Nove blocos, sempre presentes: score, restritivos, cadastroPositivo, identificacao, endereco, decisao, participacoes, consultas (volumetria de consultas ao documento) e modelosAdicionais (outros modelos de score, ex.: renda presumida). Bloco sem dado vem null inteiro; modelosAdicionais vem lista vazia. |
creditos | objeto | custoBRL = quanto essa consulta custou. cobrado = false em ambiente de testes, quando nada é debitado. |
arquivo | objeto ou null | Relatório em PDF: link assinado que expira em 3 dias. null quando a geração falhou - a consulta em si continua válida. |
metadata | objeto | Resposta bruta da consulta, para auditoria e uso avançado - traz campos que o resultado não resume (modelos de score, painel do cadastro positivo, consultas anteriores, resumo de 90 dias). É o ÚNICO campo cujo formato pode mudar sem aviso: não programe contra ele. |
plano e descricao vêm null: eram o nome comercial do modelo de score de quem calcula, e isso não vai para o cliente. O que descreve o resultado - valor, classificacao, probabilidadeInadimplencia e texto - continua vindo.
O resultado é o mesmo para CPF e CNPJ. Um CNPJ não devolve nome da mãe, e uma pessoa física normalmente não devolve participações societárias - nesses casos o bloco vem null, nunca ausente.
/api/radar/v1/custo
X-API-Key
Custo por consulta
Quanto cada consulta debita para a SUA empresa - já considerando qualquer condição comercial negociada.
curl 'https://api.radardocredito.com.br/api/radar/v1/custo' -H 'X-API-Key: SUA_CHAVE'
{
"cobra": true,
"pf": { "creditos": 4.77 },
"pj": { "creditos": 14.00 }
}
Créditos são fracionários: 1 crédito = R$ 1,00, com duas casas. Uma consulta de R$ 1,84 debita 1,84 - não arredonda para cima. cobra: false significa ambiente de testes.
/api/radar/v1/ambiente
X-API-Key
Ambiente atual
Diz se a sua conta está em testes ou em produção.
curl 'https://api.radardocredito.com.br/api/radar/v1/ambiente' -H 'X-API-Key: SUA_CHAVE'
Para parceiros
Se você revende consulta - ERP, sistema de crediário, plataforma de locação -, dá para criar a conta do seu cliente pela API, sem passar por nós.
Chave de parceiro
pk_live_…
Header: X-Partner-Key
Cria contas de clientes seus - empresa, usuário e chave de consulta.
Liberada por nós. Fale com o seu contato comercial.
A chave de parceiro cria empresas. Guarde-a com o mesmo cuidado de uma senha de administrador e nunca a coloque numa integração de consulta.
/api/radar/v1/onboarding
X-Partner-Key
Cadastrar um cliente (parceiros)
Cria a conta do seu cliente - usuário, empresa e chave de consulta - em uma chamada. Para quem revende consulta: ERP, sistema de crediário, plataforma de locação.
Corpo
| Campo | Obrigatório | Tipo | Observação |
|---|---|---|---|
empresa.cnpj | sim | string | Validado na Receita Federal. |
empresa.nome | não | string | Sem ele, usamos a razão social oficial. |
responsavel.nome | sim | string | Quem responde pela empresa. |
responsavel.email | sim | string | Do CLIENTE, não seu - é para lá que vai a verificação. |
responsavel.telefone | não | string | Formato E.164, ex.: +5535997265571. |
responsavel.senha | sim | string | Escolhida pelo cliente. Mínimo 4; recomendamos 8+. |
curl -X POST 'https://api.radardocredito.com.br/api/radar/v1/onboarding' \
-H 'Content-Type: application/json' \
-H 'X-Partner-Key: SUA_CHAVE_DE_PARCEIRO' \
--data '{
"empresa": { "cnpj": "19.444.380/0001-81" },
"responsavel": {
"nome": "Maria Souza",
"email": "maria@cliente.com.br",
"senha": "a-senha-que-o-cliente-escolheu"
}
}'
{
"apiKey": "ok_live_a1b2c3d4e5f6...",
"empresa": {
"id": "9c1e8f3a-...",
"cnpj": "19444380000181",
"razaoSocial": "CONEXAO INOVE TELECOMUNICACOES LTDA",
"ambiente": "homologacao"
},
"usuario": { "id": "3c4f5808-...", "email": "maria@cliente.com.br", "emailVerificado": false },
"proximosPassos": { "acessarPlataforma": "https://app.radardocredito.com.br" }
}
A senha é do cliente final - peça a ela no seu fluxo. Ela trafega uma vez, não é guardada nem devolvida por nós, e você não deve armazená-la.
O e-mail tem de ser o do cliente: é para lá que vão o código de verificação e a recuperação de senha.
A apiKey devolvida aparece uma vez. Entregue ao cliente ou guarde em cofre no mesmo instante.
Se algo falhar no meio, repita a mesma chamada: é idempotente por CNPJ e nunca cria empresa duplicada.
/api/radar/v1/parceiro/clientes/{empresaId}/chaves
X-Partner-Key
Emitir chave para um cliente
Gera uma chave de consulta nova para um cliente que você já cadastrou. Use para rotacionar uma chave suspeita, separar uma integração por ambiente ou repor a que o cliente perdeu.
Corpo
| Campo | Obrigatório | Tipo | Observação |
|---|---|---|---|
empresaId | sim | string | Na URL. É o empresa.id devolvido no cadastro. |
nome | não | string | Onde a chave vai ser usada (ex.: "ERP produção"). Sem ele, fica identificada como emitida por parceiro. |
curl -X POST 'https://api.radardocredito.com.br/api/radar/v1/parceiro/clientes/9c1e8f3a-.../chaves' -H 'Content-Type: application/json' -H 'X-Partner-Key: SUA_CHAVE_DE_PARCEIRO' --data '{ "nome": "ERP produção" }'
{
"apiKey": "ok_live_a1b2c3d4e5f6...",
"id": "7f2c...",
"nome": "ERP produção",
"criadaEm": "2026-08-19T21:40:00.000Z"
}
A apiKey aparece uma vez - guardamos só o hash. Entregue ao cliente no mesmo instante.
Chaves não se substituem sozinhas: a antiga continua valendo até você revogar. Rotação é emitir a nova, trocar na integração e só então revogar a velha.
Só funciona para empresas que você cadastrou. Empresa de outro parceiro responde igual a empresa inexistente.
/api/radar/v1/parceiro/clientes/{empresaId}/chaves
X-Partner-Key
Listar as chaves de um cliente
Quais chaves esse cliente tem, quando foram criadas, quando foram usadas pela última vez e quais já estão revogadas.
curl 'https://api.radardocredito.com.br/api/radar/v1/parceiro/clientes/9c1e8f3a-.../chaves' -H 'X-Partner-Key: SUA_CHAVE_DE_PARCEIRO'
{
"chaves": [
{
"id": "7f2c...",
"nome": "ERP produção",
"prefixo": "ok_live_a1b",
"criadaEm": "2026-08-19T21:40:00.000Z",
"ultimoUso": "2026-08-19T22:03:11.000Z",
"revogadaEm": null
}
]
}
A listagem devolve o prefixo, nunca a chave inteira - o segredo só existe no instante em que foi emitido.
ultimoUso em null com dias de criada é sinal de integração que nunca subiu.
/api/radar/v1/parceiro/clientes/{empresaId}/chaves/{chaveId}
X-Partner-Key
Revogar a chave de um cliente
Desliga a chave na hora. Consultas com ela passam a ser recusadas; as outras chaves do cliente seguem valendo.
curl -X DELETE 'https://api.radardocredito.com.br/api/radar/v1/parceiro/clientes/9c1e8f3a-.../chaves/7f2c...' -H 'X-Partner-Key: SUA_CHAVE_DE_PARCEIRO'
HTTP/1.1 204 No Content
É imediato e não tem volta: revogou, some. Para voltar a operar, emita outra.
Suspeitou de vazamento? Revogue primeiro e emita depois - chave vazada em uso custa crédito do seu cliente.
Cada cliente criado tem saldo e cobrança próprios: a consulta dele debita do saldo dele, não do seu.
Erros
Todo erro traz um code estável. Programe contra o code - a message é para humanos e pode mudar de texto.
{ "code": "cnpj_invalido", "message": "O dígito verificador do CNPJ não confere." }
| HTTP | code | Quando |
|---|---|---|
401 | parceiro_nao_autorizado | Chave de parceiro ausente, inválida ou revogada. |
400 | documento_invalido | CPF ou CNPJ com dígito verificador inválido. |
400 | cnpj_invalido | Dígito verificador não fecha - provável erro de digitação. |
404 | cnpj_inexistente | CNPJ não encontrado na base da Receita Federal. |
409 | cnpj_situacao_irregular | Empresa baixada, inapta ou suspensa. A situação vem na mensagem. |
409 | cnpj_ja_cadastrado | Já existe conta para esse CNPJ. |
409 | email_ja_verificado | O e-mail já pertence a uma conta ativa. |
402 | INSUFFICIENT_CREDITS | Saldo insuficiente. A resposta traz um link de compra. |
429 | - | Limite de requisições. Espere antes de tentar de novo. |
502 | provider_error | A fonte não respondeu. O crédito é estornado automaticamente. |
503 | authify_indisponivel | Cadastro temporariamente fora. Nada foi criado; pode repetir. |
Limites
| Operação | Limite |
|---|---|
| Consulta | 60 por minuto, por chave |
| Cadastro de cliente (parceiro) | 30 por minuto, por chave |
Precisa de ajuda?
Fale com a gente no WhatsApp 0800 987 9009 ou pelo 0800 987 9009. Seg a sex, 9h às 18h.