Eu construí uma API de Geolocalização por IP com Detecção de VPN e Score de Risco por IA — e o tier grátis tem 5.000 req/mês

작성자

카테고리:

← 피드로
DEV Community · Logical Features · 2026-07-09 개발(SW)

TL;DR

Criei o IP Lookup In — uma API REST brasileira de geolocalização por IP que retorna país, cidade, ISP, fuso horário, moeda e até detecção de Proxy/VPN e Score de Risco com IA.

O plano gratuito oferece 5.000 requisições/mês sem pedir cartão de crédito.

curl -H "X-API-Key: SUA_CHAVE" \
  "https://iplookup.in/api/v1/lookup?ip=8.8.8.8"

Enter fullscreen mode Exit fullscreen mode

{
  "ip": "8.8.8.8",
  "country": "United States",
  "country_code": "US",
  "region": "California",
  "city": "Mountain View",
  "latitude": 37.4223,
  "longitude": -122.0847,
  "timezone": "-07:00",
  "isp": "Google LLC",
  "domain": "google.com",
  "currency": "USD",
  "is_proxy": false,
  "proxy_type": null,
  "is_private": false,
  "cached": true
}

Enter fullscreen mode Exit fullscreen mode

Uma chamada. 15+ campos. Resposta em milissegundos.

Se isso já te interessou, cria sua conta grátis aqui. Se quer saber mais, continua lendo 👇

🤔 Por que mais uma API de geolocalização?

Eu precisava de uma API de IP lookup para um projeto pessoal. Testei as alternativas populares e encontrei os mesmos problemas:

Problema O que encontrei por aí Tier grátis limitadíssimo 1.000 req/mês ou menos Sem detecção de VPN/Proxy Precisa contratar outro serviço Score de risco? “Fale com nosso time de vendas” 🙄 Latência alta 200-500ms por request Preços em dólar R$ 5+ por dólar na cotação 😅

Resultado: para ter geolocalização + proxy + risco, eu precisava de 3 serviços diferentes, pagando em dólar, com 3 integrações separadas.

Então pensei: “E se tudo isso viesse numa única API, com preço em Real?”

⚡ O que o IP Lookup In entrega

🌍 Geolocalização completa em uma chamada

Nada de fazer 3 requests para APIs diferentes. Uma única chamada retorna:

  • Localização — País, região, cidade, latitude/longitude, CEP
  • Fuso horário — Timezone exato do IP
  • ISP & Domínio — Provedor de internet e domínio associado
  • Moeda local — Código da moeda do país (BRL, USD, EUR…)
  • Flag de rede privada — Identifica IPs internos automaticamente

🛡️ Detecção de Proxy, VPN e Tor (planos Pro+)

A API identifica automaticamente se um IP pertence a:

  • VPN — Serviços como NordVPN, ExpressVPN, etc.
  • Proxy público — Proxies abertos e anônimos
  • Tor — Exit nodes da rede Tor
  • Datacenter — IPs de hosting/cloud (AWS, GCP, Azure…)

Cada resposta inclui:

  • is_proxy → booleano direto
  • proxy_type → tipo detectado (VPN, PUB, DCH, TOR…)
  • usage_type → uso do IP (comercial, móvel, residencial…)
  • threat → nível de ameaça associado

🤖 Score de Risco com IA (Enterprise)

O endpoint /api/v1/risk vai além da detecção de proxy. Ele cruza todos os dados disponíveis do IP usando inteligência artificial e retorna uma avaliação de risco acionável:

curl -H "X-API-Key: SUA_CHAVE" \
  "https://iplookup.in/api/v1/risk?ip=185.220.101.55"

Enter fullscreen mode Exit fullscreen mode

{
  "risk_score": 85,
  "confidence": "high",
  "threats": [
    "IP identificado como proxy/VPN ativo",
    "Tráfego suspeito originado deste IP nas últimas 24 horas"
  ],
  "action_recommended": "BLOCK"
}

Enter fullscreen mode Exit fullscreen mode

Campo O que significa risk_score Pontuação de 0 (seguro) a 100 (alto risco) confidence Grau de confiança: low, medium, high threats Lista de ameaças detectadas (sempre em PT-BR 🇧🇷) action_recommended ALLOW, CHALLENGE ou BLOCK

Ideal para: gateways de pagamento, anti-fraude, login seguro, qualquer sistema que precisa tomar decisão em tempo real.

📦 Bulk Lookup — até 50 IPs por chamada (planos Pro+)

Precisa resolver uma lista inteira de IPs? Manda tudo de uma vez:

curl -X POST \
  -H "X-API-Key: SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{"ips": ["8.8.8.8", "1.1.1.1", "200.160.2.3"]}' \
  "https://iplookup.in/api/v1/lookup/batch"

Enter fullscreen mode Exit fullscreen mode

{
  "results": [
    { "ip": "8.8.8.8", "country": "United States", "city": "Mountain View", "..." : "..." },
    { "ip": "1.1.1.1", "country": "Australia", "city": "Sydney", "..." : "..." },
    { "ip": "200.160.2.3", "country": "Brazil", "city": "São Paulo", "..." : "..." }
  ]
}

Enter fullscreen mode Exit fullscreen mode

Perfeito para processar logs, enriquecer dados de analytics ou alimentar dashboards em lote.

⚡ Performance de verdade

  • Respostas cacheadas em < 5ms
  • Base de geolocalização mantida em memória (sem I/O de disco)
  • Atualização automática da base sem downtime
  • Rate limit verificado antes de qualquer processamento — se excedeu a cota, responde 429 instantaneamente

💰 Planos e Preços (em Real 🇧🇷)

Todos os preços do IP Lookup In são em Real (BRL) — nada de converter dólar:

Gratuito Starter ProEnterprise Preço R$ 0 R$ 29,90/mês R$ 49,90/mês R$ 599,90/mês Requisições/mês 5.000 50.000 500.000 2.000.000 API Keys 1 3 10 30 Bulk Lookup ❌ ❌ ✅ ✅ Detecção Proxy/VPN ❌ ❌ ✅ ✅ Score de Risco (IA) ❌ ❌ ❌ ✅ Suporte Docs E-mail (48h) E-mail prioritário E-mail + WhatsApp

💡 O plano gratuito não pede cartão de crédito e nunca expira. É para você testar, integrar no seu projeto e decidir se precisa escalar.

Comparando com as alternativas gringas

Recurso IP Lookup In (Pro) Concorrente A Concorrente B 500k req/mês R$ 49,90 ~R$ 500+ (USD) ~R$ 750+ (USD) Geo + Proxy na mesma API ✅ ❌ (serviço separado) ✅ (plano caro) Score de Risco com IA ✅ (Enterprise) ❌ “Fale conosco” Preço em Real ✅ ❌ ❌ Suporte em Português ✅ ❌ ❌

🔧 Integração em 2 minutos

Python

import requests

API_KEY = "sua_chave_aqui"
ip = "8.8.8.8"

response = requests.get(
    f"https://iplookup.in/api/v1/lookup?ip={ip}",
    headers={"X-API-Key": API_KEY}
)

data = response.json()
print(f"{data['city']}, {data['country']} ({data['isp']})")
# Mountain View, United States (Google LLC)

Enter fullscreen mode Exit fullscreen mode

JavaScript (Node.js / Fetch)

const API_KEY = "sua_chave_aqui";

const res = await fetch(
  `https://iplookup.in/api/v1/lookup?ip=8.8.8.8`,
  { headers: { "X-API-Key": API_KEY } }
);

const data = await res.json();
console.log(`${data.city}, ${data.country} — Proxy: ${data.is_proxy}`);
// Mountain View, United States — Proxy: false

Enter fullscreen mode Exit fullscreen mode

cURL

curl -s -H "X-API-Key: SUA_CHAVE" \
  "https://iplookup.in/api/v1/lookup?ip=1.1.1.1" | jq .

Enter fullscreen mode Exit fullscreen mode

PHP

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://iplookup.in/api/v1/lookup?ip=8.8.8.8");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: SUA_CHAVE"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = json_decode(curl_exec($ch), true);
echo $response['city'] . ', ' . $response['country'];
// Mountain View, United States

Enter fullscreen mode Exit fullscreen mode

📊 Casos de uso

Cenário Como o IP Lookup In ajuda E-commerce Mostrar preços na moeda local, sugerir região de frete Anti-fraude Bloquear compras de IPs com score de risco > 70 Analytics Enriquecer logs com geolocalização (cidade, região, país) Segurança Detectar acessos via VPN/Proxy/Tor em painéis admin Compliance Geo-blocking por país para LGPD/GDPR SaaS Personalizar onboarding e UX por região do usuário Jogos Online Identificar jogadores usando VPN para burlar região Mídia/Streaming Controlar distribuição de conteúdo por geolocalização

🚀 Começando agora

  1. Crie sua conta gratuita (sem cartão de crédito)
  2. Copie sua API Key no dashboard
  3. Faça sua primeira chamada:
curl -H "X-API-Key: SUA_CHAVE" \
  "https://iplookup.in/api/v1/lookup?ip=8.8.8.8"

Enter fullscreen mode Exit fullscreen mode

  1. 🎉 Pronto. 5.000 requisições/mês para usar como quiser.

O que vem por aí

  • 📚 SDKs oficiais (Python, Node.js, Go)
  • 📈 Dashboard com gráficos de consumo em tempo real

Se você chegou até aqui, obrigado pela leitura! Se curtiu o projeto ou tem alguma sugestão de feature, deixa nos comentários — leio todos. 🤙

→ Criar conta gratuita | 📖 Documentação da API

원문에서 계속 ↗

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다