A API v2 da Nuvnia permite que voce integre dados de 28,2 milhoes de empresas ativas diretamente ao seu CRM, ERP ou qualquer sistema proprio. Neste tutorial, mostramos como configurar a autenticacao, fazer sua primeira consulta e automatizar o fluxo.

Autenticacao

A API usa autenticacao por API key enviada no header Authorization. Para gerar sua chave, acesse o painel da Nuvnia em Configuracoes > API.

Authorization: Bearer sua_api_key_aqui

Seguranca

Sua API key e hasheada (SHA-256) antes de ser armazenada. Nunca a compartilhe em repositorios publicos ou no frontend. Use variaveis de ambiente.

Endpoint principal: busca de empresas

GET /api/v2/leads?uf=SP&cnae=5611&porte=ME&limit=50

Headers:
  Authorization: Bearer sua_api_key_aqui
  Content-Type: application/json

Parametros de busca

ParametroTipoDescricao
ufstringEstado (ex: SP, RJ, MG)
cnaestringCodigo CNAE (ex: 5611, 6201)
portestringME, EPP, DEMAIS
municipiostringCodigo do municipio
capital_minnumberCapital social minimo
capital_maxnumberCapital social maximo
limitnumberResultados por pagina (max 100)
offsetnumberPaginacao

Exemplo com cURL

curl -s "https://api.leads.nuvnia.com/api/v2/leads?uf=SP&cnae=5611&porte=ME&limit=10" \
  -H "Authorization: Bearer $NUVNIA_API_KEY" | jq '.leads[0]'

Exemplo com Python

import requests
import os

API_KEY = os.environ["NUVNIA_API_KEY"]
BASE_URL = "https://api.leads.nuvnia.com/api/v2"

response = requests.get(f"{BASE_URL}/leads", params={
    "uf": "SP",
    "cnae": "5611",
    "porte": "ME",
    "limit": 50
}, headers={
    "Authorization": f"Bearer {API_KEY}"
})

data = response.json()
for lead in data["leads"]:
    print(f"{lead['razao_social']} - {lead['cnpj']}")

Exemplo com JavaScript (Node.js)

const response = await fetch(
  'https://api.leads.nuvnia.com/api/v2/leads?uf=SP&cnae=5611&limit=50',
  { headers: { 'Authorization': `Bearer ${process.env.NUVNIA_API_KEY}` } }
);

const { leads } = await response.json();
leads.forEach(lead =>
  console.log(`${lead.razao_social} - ${lead.cnpj}`)
);

Endpoint de consulta CNPJ

GET /api/v2/cnpj/:cnpj

# Retorna dados completos: empresa, estabelecimento, socios,
# gov data (PGFN, TCU, IBAMA...), score de risco e badges

Rate limits

PlanoRequests/minLeads/mes
Starter30500
Pro601.500
Business1205.000

Headers de rate limit retornados em cada resposta:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1711929600

Integracao com CRMs populares

Em 15 minutos, voce pode ter um script Python rodando que importa 50 leads qualificados por dia para seu CRM — com dados de compliance inclusos. Sem copiar e colar planilhas.