API DataShield
API RESTful para consultas cadastrais (PG) e dossiês completos (Forense). Autenticação via API Key, resposta em JSON.
https://ciclocontabilidade.com/api/v1Início Rápido
1. Crie sua conta no Dashboard
2. Assine um plano
3. Gere sua API Key na seção "Chave API"
4. Faça sua primeira consulta:
# Consulta por CPF curl -H "x-api-key: SUA_API_KEY" \ "https://ciclocontabilidade.com/api/v1/pg?cpf=12345678900"
import requests headers = {"x-api-key": "SUA_API_KEY"} r = requests.get( "https://ciclocontabilidade.com/api/v1/pg", params={"cpf": "12345678900"}, headers=headers ) print(r.json())
const res = await fetch( "https://ciclocontabilidade.com/api/v1/pg?cpf=12345678900", { headers: { "x-api-key": "SUA_API_KEY" } } ); const data = await res.json(); console.log(data);
Autenticação
Todas as requisições devem incluir o header x-api-key com sua chave de API.
| Header | Valor |
|---|---|
x-api-key | Sua chave de API gerada no Dashboard |
Rate Limits
Os limites variam por plano:
| Plano | Req/minuto | PG/período | DET/período |
|---|---|---|---|
| STARTER | 5 | 500 | 15 |
| PRO | 20 | 2.500 | 80 |
| ENTERPRISE | 60 | 10.000 | 350 |
Ao exceder o limite, a resposta será 429 Too Many Requests.
Códigos de Erro
| Código | Significado | Quando |
|---|---|---|
400 | Bad Request | Parâmetros inválidos ou faltando |
401 | Unauthorized | API Key inválida ou ausente |
403 | Forbidden | Sem assinatura ativa |
404 | Not Found | Nenhum registro encontrado |
429 | Rate Limited | Excedeu limite de requisições ou quota |
502 | Bad Gateway | Serviço temporariamente indisponível |
Formato do Erro
{ "error": "Descrição do erro" }
Consulta PG (Cadastral)
Retorna dados cadastrais: nome, CPF, endereço, telefones, RG, filiação, renda e mais.
Parâmetros (query string)
| Parâmetro | Tipo | Exemplo | Descrição |
|---|---|---|---|
cpf | string | 12345678900 | CPF (apenas números) |
cnpj | string | 12345678000190 | CNPJ (apenas números) |
nome | string | João da Silva | Nome completo ou parcial |
tel | string | 11999998888 | Telefone com DDD |
Exemplo de Resposta
{
"success": true,
"level": "PRO",
"data": {
"cpf": "12345678900",
"nome": "JOÃO DA SILVA",
"data_nascimento": "15/03/1990",
"sexo": "M",
"nome_mae": "MARIA DA SILVA",
"renda": "5000.00",
"score": 750,
"endereco": "Rua das Flores, 123",
"cidade": "São Paulo",
"uf": "SP",
"telefones": ["(11) 99999-8888"]
}
}
Exemplos
# Por CPF curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/pg?cpf=12345678900" # Por Nome curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/pg?nome=Joao+Silva"
import requests API = "https://ciclocontabilidade.com/api/v1" KEY = "SUA_API_KEY" r = requests.get(f"{API}/pg", params={"cpf": "12345678900"}, headers={"x-api-key": KEY}) print(r.json())
const res = await fetch("https://ciclocontabilidade.com/api/v1/pg?cpf=12345678900", { headers: { "x-api-key": "SUA_API_KEY" } }); console.log(await res.json());
Dossiê Forense (DET)
Retorna dossiê completo com 60+ seções: dados pessoais, endereços, telefones, parentes, veículos, processos, fotos, vacinas e muito mais.
Parâmetros (query string)
| Parâmetro | Tipo | Exemplo | Descrição |
|---|---|---|---|
cpf | string | 12345678900 | CPF (busca direta) |
cnpj | string | 12345678000190 | CNPJ (busca direta) |
telefone | string | 11999998888 | Busca reversa por telefone |
placa | string | ABC1D23 | Busca reversa por placa |
email | string | fulano@gmail.com | Busca reversa por email |
Exemplo de Resposta
{
"success": true,
"searchType": "cpf",
"data": {
"consulta": {
"cadastral": { "nome": "...", "cpf": "...", ... },
"enderecos": [...],
"telefones": [...],
"parentes": [...],
"placas": [...],
"fotos": [...],
"empregos": [...],
// ... 60+ seções
}
}
}
Exemplos
# Por CPF curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/det?cpf=12345678900" # Por Placa (busca reversa) curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/det?placa=ABC1D23" # Por Email curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/det?email=fulano@gmail.com" # Por Telefone curl -H "x-api-key: KEY" "https://ciclocontabilidade.com/api/v1/det?telefone=11999998888"
import requests API = "https://ciclocontabilidade.com/api/v1" KEY = "SUA_API_KEY" h = {"x-api-key": KEY} # Dossiê por CPF r = requests.get(f"{API}/det", params={"cpf": "12345678900"}, headers=h) dossie = r.json()["data"]["consulta"] print(dossie["cadastral"]["nome"]) print(f"Parentes: {len(dossie.get('parentes', []))}") print(f"Veículos: {len(dossie.get('placas', []))}") # Busca reversa por Placa r = requests.get(f"{API}/det", params={"placa": "ABC1D23"}, headers=h) print(r.json())
const API = "https://ciclocontabilidade.com/api/v1"; const KEY = "SUA_API_KEY"; const res = await fetch(`${API}/det?telefone=11999998888`, { headers: { "x-api-key": KEY } }); const { data } = await res.json(); console.log(data.consulta.cadastral.nome); console.log("Endereços:", data.consulta.enderecos.length);
Status / Quota
Resposta
{
"plan": "pro_monthly",
"level": "PRO",
"pg": { "used": 142, "limit": 2500, "remaining": 2358 },
"det": { "used": 12, "limit": 80, "remaining": 68 },
"expiresAt": "2026-10-15T23:59:59Z"
}Planos & Limites
| Plano | Nível | PG | DET | Rate | Campos PG |
|---|---|---|---|---|---|
| Starter Semanal | STARTER | 500 | 15 | 5/min | Básicos |
| Starter Mensal | STARTER | 500 | 15 | 5/min | Básicos |
| Pro Semanal | PRO | 2.500 | 80 | 20/min | Completos |
| Pro Mensal | PRO | 2.500 | 80 | 20/min | Completos |
| Enterprise Semanal | ENTERPRISE | 10.000 | 350 | 60/min | Completos |
| Enterprise Mensal | ENTERPRISE | 10.000 | 350 | 60/min | Completos |
Pro/Enterprise retornam todos os campos.
Campos — Consulta PG
| Campo | Tipo | Descrição | Nível |
|---|---|---|---|
cpf | string | CPF | Todos |
nome | string | Nome completo | Todos |
data_nascimento | string | Data de nascimento | Todos |
sexo | string | M ou F | Todos |
nome_mae | string | Nome da mãe | Todos |
nome_pai | string | Nome do pai | Todos |
rg | string | Número do RG | Todos |
titulo_eleitor | string | Título de eleitor | Todos |
renda | string | Renda estimada | PRO+ |
score | number | Score de crédito | PRO+ |
endereco | string | Endereço | PRO+ |
bairro | string | Bairro | PRO+ |
cidade | string | Cidade | PRO+ |
uf | string | Estado | PRO+ |
cep | string | CEP | PRO+ |
telefones | array | Lista de telefones | PRO+ |
Campos — Dossiê Forense
O dossiê contém até 66 seções. Listamos as principais:
| Seção | Chave | Descrição |
|---|---|---|
| 📋 Cadastral | cadastral | Nome, CPF, nascimento, situação |
| 📍 Endereços | enderecos | Histórico de endereços com lat/lng |
| 📞 Telefones | telefones | Números com classificação e WhatsApp |
| 📧 Emails | emails | Emails com avaliação de qualidade |
| 👨👩👧 Parentes | parentes | Familiares com foto, renda, profissão |
| 🏠 Vizinhos | relacionadosPorEndereco | Pessoas no mesmo endereço |
| 🚗 Veículos | placas | Veículos com fotos, modelo, chassi |
| 📷 Fotos | fotos | Fotos de perfil |
| 💼 Empregos | empregos | Histórico de emprego |
| 📚 Escolaridade | escolaridade | Nível de escolaridade |
| ⚖️ Processos | processos | Processos judiciais |
| 🏢 Sociedades | sociedades | Empresas e cargos |
| 💳 Chaves PIX | chavesPix | Chaves PIX registradas |
| 💉 Vacinas | vacinas | Registro de vacinação |
| 🚗 CNH | cnh | Carteira de habilitação |
| 📊 IRPF | irpf | Declarações de IR |
| 📱 Planos Móveis | planosMoveis | Operadora e plano |
| 🏪 MEI | meiDetalhado | Dados do MEI com CNAE |
| 📈 Propensões | propensoes | Score comportamental (CSB8) |
| ✍️ Assinatura | assinaturas | Assinatura digital |
| 🌐 Online | movimentacoesOnline | Google Maps, reviews |
| ⏳ Timeline | linhaDoTempo | Linha do tempo de eventos |
| 🔒 Vazamentos | credenciaisVazadas | Credenciais expostas |
| 🏥 Pl. Saúde | planosSaude | Planos de saúde |
| ✈️ Viagens | viagens | Viagens internacionais |
| 🚁 Drones | drones | Drones registrados |
| 🏛️ Política | politica | Dados políticos |
linkedin | Perfil profissional | |
| 🚨 BNMP | pecasBnmp | Mandados de prisão |
E mais: aeronaves, benefícios, certidões, CIN, CCF, contatos comerciais, dívida ativa, empréstimos, energias, estrangeiro, genitores, histórico escolar, imóveis, INSS, naturalidade completa, OAB, outros nomes, PPE, PROUNI, RAIS, RGs, SISU, etc.