API do Radar de Leads
Busque empresas com os mesmos filtros do Radar e revele contatos de decisores direto do seu sistema, ERP ou planilha. Respostas em JSON. Disponível no plano Business.
Autenticação
Crie a chave no portal em Organização › API (só o administrador da conta). Envie em todo pedido no cabeçalho X-API-Key (ou Authorization: Bearer rl_…).
curl https://radar.rctech.cc/api/v1/conta \ -H "X-API-Key: rl_SUA_CHAVE"
A chave age em nome de quem a criou e segue as regras do plano: estados liberados, créditos e uso do mês. Guarde a chave como uma senha; se ela vazar, revogue em Organização › API e crie outra.
Limites
- 120 requisições por minuto por chave. Acima disso a resposta é
429. - Até 5 chaves ativas por conta.
- Revelar contato consome 1 crédito, como no portal. Contatos já revelados não cobram de novo.
Endpoints
GET/api/v1/conta
Plano, créditos disponíveis (null = sem limite) e uso do mês.
{ "empresa": "Sua empresa", "plano": "business", "plano_nome": "Business",
"creditos": null, "uso_mes": { "consultas": 12, "exportacoes": 0 } }
GET/api/v1/leads
Empresas ranqueadas por score, com os mesmos filtros do Radar.
| Parâmetro | Exemplo | O que faz |
|---|---|---|
uf | SP | Estado |
cidade | Campinas | Cidade |
grupo | Atacado | Segmento |
seg | Atacarejo | Subsegmento |
porte | Grande | Porte da empresa |
score | 80 | Score mínimo (0 a 100) |
q | alimentos | Busca por nome |
offset | 0 | Paginação: use o pagina_tam da resposta e siga enquanto tem_mais for true |
curl "https://radar.rctech.cc/api/v1/leads?uf=SP&grupo=Atacado&score=80" \ -H "X-API-Key: rl_SUA_CHAVE"
Cada empresa traz contatos: nome e cargo sempre; telefone e e-mail só depois de revelados. Use o cid do contato para revelar.
POST/api/v1/contatos/revelar
Revela telefone e e-mail de um contato. Corpo JSON com o cid.
curl -X POST https://radar.rctech.cc/api/v1/contatos/revelar \
-H "X-API-Key: rl_SUA_CHAVE" -H "content-type: application/json" \
-d '{"cid": 123}'
{ "ok": true, "cel": "(11) 9…", "email": "nome@empresa.com.br", "creditos": 49, "cobrado": true }
Webhooks
Cadastre uma URL https em Organização › API › Webhooks. O Radar envia um POST com JSON para essa URL nestes eventos:
lista.novos_leads: entraram empresas novas numa lista salva com alerta ligado (no mesmo horário do e-mail de alerta).contato.revelado: um contato foi revelado na conta, pelo portal ou pela API. Traz a empresa e o contato (nome, cargo, celular e e-mail). É o jeito de mandar o lead para o seu CRM (RD Station, HubSpot, Pipedrive…) com Zapier ou Make: gatilho "Webhook", ação "criar contato/negócio".
POST https://seusistema.com/radar/webhook
X-Radar-Evento: lista.novos_leads
X-Radar-Assinatura: t=1794400000,v1=5b1f…
{ "evento": "lista.novos_leads", "enviado_em": "2026-11-10T09:00:00Z", "webhook_id": "…",
"dados": { "lista": { "id": "…", "nome": "Atacado SP" }, "total": 12,
"leads": [ { "id": 123, "nome": "…", "cidade": "Campinas", "uf": "SP",
"segmento": "Atacado", "score": 91, "potencial": 21000 } ] } }
Conferir a assinatura
Calcule HMAC-SHA256 de <t>.<corpo bruto> com o segredo mostrado na criação do webhook e compare com v1. Recuse se t tiver mais de 5 minutos.
const [t, v1] = header.split(",").map(p => p.split("=")[1]);
const esperado = crypto.createHmac("sha256", SEGREDO).update(`${t}.${corpoBruto}`).digest("hex");
const valido = crypto.timingSafeEqual(Buffer.from(esperado), Buffer.from(v1));
Responda com qualquer status 2xx em até 8 segundos. Depois de 20 falhas seguidas o webhook é desligado; o botão Testar envia um evento de teste e religa.
Erros
| Código | Quando |
|---|---|
401 | Chave ausente, inválida ou revogada |
402 | Sem créditos ou trial expirado |
403 | Plano sem API ou estado fora do plano |
429 | Limite de requisições por minuto |
Toda resposta de erro vem como { "erro": "mensagem" }.