Pular para o conteúdo principal

Endpoint

GET https://api.bunny.build/api/v1/ip-classify?ip={ip}

Autenticação

HeaderObrigatórioValor
X-API-KeySimSua chave de API (bun_...)

Visão geral

Classifique qualquer endereço IP como residencial, hosting/datacenter, mobile, VPN, nó de saída Tor ou proxy aberto. A API de Classificação de IP da Bunny retorna um rótulo de classificação, pontuação de confiança e detalhamento completo de sinais, para que você possa tomar decisões precisas sobre as origens do tráfego.

Casos de uso

  • Detectar e bloquear tráfego de VPN, proxy e Tor
  • Identificar tráfego de bots e datacenters
  • Aplicar controles de acesso baseados em geo-localização
  • Prevenção de fraudes e pontuação de risco

Detalhes

Suporta IPv4 e IPv6. O campo confidence (0–1) indica a certeza da classificação. O objeto signals detalha cada sinal individualmente para que você possa aplicar sua própria lógica.

Parâmetros de query

ParâmetroTipoObrigatórioDescrição
ipstringSimEndereço IPv4 ou IPv6 válido

Resposta

200 OK

CampoTipoDescrição
ipstringO IP verificado
classificationstringUm de: hosting, residential, mobile, vpn, tor, proxy, unknown
confidencenumber0.0 a 1.0
signalsobjectFlags booleanas (ver abaixo)
networkobjectASN, org, provider (ver abaixo)
geoobjectcountry, region (ver abaixo)
signals
CampoTipo
is_hostingboolean
is_residentialboolean
is_mobileboolean
is_vpnboolean
is_torboolean
is_proxyboolean
network
CampoTipoDescrição
asnint | nullNúmero do Sistema Autônomo
orgstring | nullNome da organização
providerstring | nullNome amigável (ex.: “AWS”)
geo
CampoTipoDescrição
countrystring | nullCódigo do país ISO (ex.: “US”)
regionstring | nullRegião/estado
Exemplo
{
  "ip": "8.8.8.8",
  "classification": "hosting",
  "confidence": 0.95,
  "signals": {
    "is_hosting": true,
    "is_residential": false,
    "is_mobile": false,
    "is_vpn": false,
    "is_tor": false,
    "is_proxy": false
  },
  "network": {
    "asn": 15169,
    "org": "Google LLC",
    "provider": "Google"
  },
  "geo": {
    "country": "US",
    "region": null
  }
}

401 Unauthorized

{
  "detail": "Missing API key. Include X-API-Key header."
}

402 Payment Required

{
  "detail": "Monthly quota exceeded. Upgrade your plan."
}

422 Unprocessable Entity

Formato de IP inválido.
{
  "detail": "Invalid IP address format"
}

429 Too Many Requests

{
  "detail": "Rate limit exceeded. Try again in 60 seconds."
}

Exemplo cURL

curl "https://api.bunny.build/api/v1/ip-classify?ip=8.8.8.8" \
  -H "X-API-Key: bun_sua_chave_api"