API de geolocalización de IP

accuracy_radius_km y confidence transparentes, más ASN y flags de exit de Tor, redes VPN conocidas, relay de privacidad y hosting/datacenter. No inventamos “99% de precisión a nivel ciudad.”

Registrarse Leer la documentación

Free: 1.000 req/día · HTTPS · uso comercial OK

Ejemplo

Consultá una IP y obtené ubicación, red y traits en una sola respuesta:

GET /v0/ip/{ip}
$ curl -s https://api.networkdatalabs.com/v0/ip/8.8.8.8 \
    -H "Authorization: Bearer YOUR_API_KEY"

{
  "ip": "8.8.8.8",
  "version": "v0",
  "location": {
    "continent_code": "NA",
    "country_code": "US",
    "country": "United States",
    "is_eu": false,
    "region": "California",
    "region_code": "CA",
    "city": "Mountain View",
    "postal": null,
    "latitude": 37.422,
    "longitude": -122.085,
    "timezone": "America/Los_Angeles",
    "accuracy_radius_km": 50.0,
    "confidence": "medium"
  },
  "network": {
    "asn": 15169,
    "as_org": "Google LLC",
    "isp": "Google LLC",
    "organization": "Google LLC",
    "network": "8.8.8.0/24"
  },
  "traits": {
    "is_anycast": true,
    "is_hosting": true,
    "is_mobile": false,
    "is_satellite": false,
    "is_bogon": false,
    "is_proxy": false,
    "is_vpn": false,
    "is_tor": false,
    "is_relay": false
  }
}

8.8.8.8 es un resolver DNS público anycast, que responde desde muchos lugares a la vez, y la respuesta lo dice: is_anycast es true, el radio es de 50 km y confidence es medium. Cuando no podemos ser precisos, la respuesta te lo avisa. ¿Tenés una lista? POST /v0/bulk acepta hasta 100 IPs por request con el mismo schema; una IP inválida aparece en errors sin romper el lote, y cada IP cuenta para la cuota diaria.

Campos de la respuesta

  • Geo — continente, país, región, ciudad, postal, lat/lon, timezone, is_eu. ¿Solo necesitás el país? Mirá la API de IP a país.
  • Campos honestos — accuracy_radius_km y confidence (high | medium | low | unknown)
  • Red — ASN, AS org, ISP, organización, prefijo, RIR
  • Traits — is_tor (exit nodes de Tor actuales), is_vpn (redes VPN conocidas, incluidos los proveedores comerciales de VPN grandes), is_relay (relay de privacidad), is_hosting (detección de hosting/datacenter), is_satellite (internet satelital), is_mobile (redes de operadores móviles; estimación), is_bogon (rangos privados / reservados), is_anycast (resolvers DNS conocidos)

Todos los campos salen de la misma llamada GET /v0/ip/{ip}, en todos los planes, incluido Free.

Para qué lo usan los equipos

  • Fraude y abuse — puntuar tráfico de exits de Tor, redes VPN conocidas, relay de privacidad y hosting/datacenter, y desajustes de país de la IP, con flags explícitos (mirá la API de detección de VPN)
  • Compliance — señales de país / UE con radio de precisión declarado
  • Localización — defaults de idioma y contenido sin sobreclaimar precisión de ciudad

Lo que no hace

  • La ciudad es una estimación. Ciudad, código postal y coordenadas son una aproximación. Si accuracy_radius_km es amplio, apoyate en el país y la región.
  • Detrás de una VPN, es la ubicación de la salida. La IP es la del exit de la VPN, de Tor o del relay, así que la ubicación es la de esa salida, no la del usuario. Revisá is_vpn, is_tor e is_relay.
  • Algunas IPs no se pueden ubicar. Los campos de ubicación pueden venir en null, así que prevé un fallback.

Dejá que accuracy_radius_km y confidence definan cuánta precisión puede asumir tu feature.

Preguntas frecuentes

¿Es la misma API que IP a país y detección de VPN?

Sí. Es una sola llamada GET /v0/ip/{ip} que devuelve ubicación, red y traits juntos. Las páginas de IP a país y detección de VPN se enfocan en los campos que necesita cada caso de uso.

¿Soporta IPv6?

Sí. GET /v0/ip/{ip} y POST /v0/bulk aceptan direcciones IPv4 e IPv6 (por ejemplo 2001:4860:4860::8888). Una IP mal formada devuelve 400 INVALID_IP.

¿Hay plan gratis?

Sí: 1.000 requests por día UTC con el schema completo, uso comercial OK. En bulk, cada IP cuenta como un request para la cuota diaria.

Empezá a construir

Creá una cuenta gratis, o leé el quickstart y la referencia completa en la documentación.

Registrarse Leer la documentación

APIs relacionadas