API de IP a país

Mandá una IPv4 o IPv6 y obtené el país: código ISO, nombre, continente y un flag de Unión Europea. Cada lookup incluye además accuracy_radius_km y confidence, para que sepas cuánto confiar en el dato.

Registrarse Leer la documentación

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

Ejemplo

Consultá una IP y quedate solo con los campos de país usando jq:

GET /v0/ip/{ip}
$ curl -s https://api.networkdatalabs.com/v0/ip/8.8.8.8 \
    -H "Authorization: Bearer YOUR_API_KEY" \
    | jq '.location | {country_code, country, continent_code, is_eu, accuracy_radius_km, confidence}'

{
  "country_code": "US",
  "country": "United States",
  "continent_code": "NA",
  "is_eu": false,
  "accuracy_radius_km": 50.0,
  "confidence": "medium"
}

8.8.8.8 es un resolver DNS público anycast, que responde desde muchos lugares a la vez, así que el radio es amplio y confidence es low: la respuesta te avisa cuando no puede ser precisa. ¿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

  • country_code — código de país ISO 3166-1 alpha-2
  • country — nombre del país
  • continent_code — NA, SA, EU…
  • is_eu — si el país está en la Unión Europea
  • accuracy_radius_km y confidence (high | medium | low | unknown) — qué tan precisa es la estimación

La misma llamada devuelve también región, ciudad, timezone, ASN / red y flags de exit de Tor, redes VPN conocidas, relay de privacidad y hosting/datacenter. ¿Necesitás todo eso? Mirá la API de geolocalización IP.

Para qué lo usan los equipos

  • Precios y moneda por país — mostrar moneda local y precios regionales según country_code
  • Localización y compliance — idioma y contenido por defecto según el país; is_eu como señal para flujos específicos de la UE, como banners de consentimiento
  • Prevención de fraude — comparar el país de la IP con el de facturación o la tarjeta, y combinarlo con is_tor (exits de Tor), is_vpn (redes VPN conocidas), is_relay (relay de privacidad) e is_hosting (hosting/datacenter) en signup, login y pagos
  • Analytics — agrupar tráfico y registros por país y continente

Lo que no hace

  • Detrás de una VPN, es el país de la salida. La IP es la del servidor de salida, así que el país es el de ese servidor, no el del usuario. is_vpn (redes VPN conocidas, incluidos los proveedores comerciales de VPN grandes), is_tor, is_relay e is_hosting te ayudan a decidir cómo tratar ese tráfico; más detalle en la API de detección de VPN.
  • Algunas IPs no se pueden ubicar. country_code y country pueden venir en null, así que prevé un fallback.

Tomá el país como una señal fuerte, no como una prueba: combinalo con datos de facturación o de la cuenta cuando importa.

Preguntas frecuentes

¿Qué tan precisa es la geolocalización IP a nivel país?

El país es el nivel más confiable de la geolocalización por IP: un bloque de IPs normalmente se anuncia y se usa dentro de un mismo país, mientras que la ciudad muchas veces es una estimación. Por eso no vendemos “99% de precisión a nivel ciudad”. Igual es una estimación, no una garantía: VPNs, proxies y rangos anycast o de hosting pueden apuntar a otro lugar que el del usuario, así que cada respuesta trae accuracy_radius_km, confidence y traits como is_anycast e is_hosting.

¿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