Geolocalización de IP API
País, región, ciudad, coordenadas y zona horaria para cualquier dirección IPv4 o IPv6 pública. Con la tecnología de MaxMind GeoLite2: cómputo totalmente local, sin límites de tasa compartidos.
¿No tienes una clave API?
Inicia sesión en tu cuenta para crear y gestionar tus claves API.
Guía de integración
Copia un fragmento, sustituye tu clave de API y ejecútalo. Funciona en cualquier cliente HTTP — ejemplos abajo en cURL, JavaScript y Python.
/api/ip-geolocationhttps://www.apipick.comGet geolocation data for any public IP address
ipstringopcionalPublic IPv4 or IPv6 address. Omit to look up caller's own IP. 8.8.8.8
curl -X GET "https://www.apipick.com/api/ip-geolocation" \
-H "x-api-key: YOUR_API_KEY"{
"success": true,
"code": 200,
"message": "ok",
"data": {
"ip": "8.8.8.8",
"country_code": "US",
"country_name": "United States",
"continent": "North America",
"continent_code": "NA",
"city": "Mountain View",
"latitude": 37.4056,
"longitude": -122.0775,
"timezone": "America/Los_Angeles",
"currency": "USD",
"isp": "Google LLC",
"asn": 15169
},
"credits_used": 1,
"remaining_credits": 99
}Diseñada para casos de uso reales
Detección de fraude
Marca registros o transacciones desde regiones de alto riesgo. Comprueba si la IP de un usuario coincide con la ubicación o el país de facturación declarados.
Localización de contenido
Selecciona automáticamente idioma, moneda y precios regionales según la ubicación del visitante. Muestra banners de cookies conformes con la UE solo a visitantes de la UE.
Limitación de tasa
Aplica límites de tasa o controles de acceso por país. Bloquea o limita el tráfico de regiones concretas sin comprar costosas herramientas de seguridad.
Enriquecimiento para agentes de IA
Permite que los agentes de IA enriquezcan registros de usuarios, clasifiquen leads por geografía o localicen el contenido generado en función de datos de IP en tiempo real.
Alternativa a ipinfo.io e ipapi.co
Facturación por créditos por cuenta: sin pool compartido de límites de tasa, sin niveles de plan, sin topes mensuales que se reinician el primer día del mes.
ipinfo.io | ipapi.co | API Pick ✓ | |
|---|---|---|---|
| Plan gratuito | 50k req/month | 1,000 req/day | 100 créditos al registrarte |
| Modelo de limitación de tasa | Riesgo de pool de IP compartido | Riesgo de pool de IP compartido | Créditos por cuenta |
| ¿Caducan los créditos / la cuota? | Reinicio mensual | Reinicio diario | Nunca caducan |
| País + región + ciudad | ✓ | ✓ | ✓ |
| Zona horaria | Plan de pago | ✓ | ✓ |
| Soporte de IPv6 | ✓ | ✓ | ✓ |
| Indicador de pertenencia a la UE | Plan de pago | ✓ | ✓ |
| Sin tarjeta de crédito para empezar | ✓ | ✓ | ✓ |
| Listo para agentes de IA / LLM | Parcial | Parcial | ✓ JSON nativo |
El problema del pool compartido de límites de tasa
Con los planes gratuitos de ipinfo.io e ipapi.co, los límites de tasa se aplican por IP de cliente. Eso significa que todas las solicitudes desde la misma región de Vercel, AWS o GCP comparten un único pool de cuota. Si otro inquilino del mismo nodo edge ya ha agotado el límite diario de 1.000, tus llamadas a la API empiezan a fallar, aunque tú no hayas hecho ni una sola solicitud.
Facturación por créditos: predecible a cualquier escala
API Pick cobra por cuenta, no por IP. Cada llamada descuenta exactamente 1 crédito de tu saldo, y solo cuando la respuesta es correcta. Los créditos no caducan nunca. Tanto si haces 10 consultas como 10.000 en un solo día, solo pagas por lo que usas, sin riesgo de fallos inesperados por una cuota compartida.
Campos de la respuesta
| Campo | Tipo | Descripción |
|---|---|---|
| data.ip | string | La dirección IP consultada |
| data.country_code | string | Código de país ISO 3166-1 alpha-2 (p. ej. US, DE, JP) |
| data.country_name | string | Nombre completo del país en inglés |
| data.continent | string | Nombre del continente (p. ej. North America, Europe) |
| data.continent_code | string | Código de continente de dos letras (p. ej. NA, EU) |
| data.city | string | Nombre de la ciudad (cadena vacía si no está disponible) |
| data.latitude | number | null | Latitud aproximada de la ubicación de la IP |
| data.longitude | number | null | Longitud aproximada de la ubicación de la IP |
| data.timezone | string | Identificador de zona horaria IANA (p. ej. America/Los_Angeles) |
| data.currency | string | Código de moneda ISO 4217 del país (p. ej. USD, EUR) |
| data.isp | string | Nombre del ISP / organización según la base de datos ASN |
| data.asn | integer | null | Número de sistema autónomo (p. ej. 15169 para Google) |
| credits_used | integer | Créditos descontados por esta solicitud |
| remaining_credits | integer | Créditos restantes en tu cuenta |
Límites de tasa
La limitación es por clave de API, ventana deslizante de 60 segundos. Al alcanzar el límite recibes un 429 limpio con una cabecera Retry-After.
120req/min
Por clave de API, por endpoint. Ventana deslizante de 60 segundos.
3concurrent
Máximo de peticiones simultáneas en curso por clave de API.
X-RateLimit-LimitMáximo de peticiones permitidas por minutoX-RateLimit-RemainingPeticiones restantes en la ventana actualX-RateLimit-ResetSegundos hasta que se reinicia la ventana actualRetry-AfterSegundos a esperar antes de reintentar (solo en 429)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 120 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}Preguntas frecuentes
P: ¿Qué ocurre si no paso una dirección IP?
R: El endpoint detecta automáticamente la IP de quien llama a partir de las cabeceras de la solicitud (X-Forwarded-For). Esto resulta útil para búsquedas del lado del servidor donde quieres geolocalizar al usuario final sin pasar la IP de forma explícita.
P: ¿Se admiten las IPs privadas?
R: No. Las IPs privadas (rangos RFC 1918 como 192.168.x.x, 10.x.x.x), de loopback (127.0.0.1) y otros rangos reservados devuelven un error 400. Solo se admiten direcciones IPv4 e IPv6 enrutables públicamente.
P: ¿Qué precisión tiene la geolocalización?
R: Con la tecnología de MaxMind GeoLite2-City. La precisión a nivel de país suele ser del 95-99 %. La precisión a nivel de ciudad varía según la región: por lo general fiable en Norteamérica y Europa, menos precisa en partes de Asia y África. Las coordenadas representan la zona general, no una ubicación física exacta.
P: ¿Pueden los agentes de IA usar esto como herramienta?
R: Sí. El endpoint acepta un único parámetro de consulta ip opcional y devuelve un objeto JSON plano, fácil de exponer como herramienta de función para OpenAI, Claude, LangChain o cualquier framework de agentes. Útil para agentes que necesitan razonar sobre la ubicación del usuario, aplicar reglas basadas en geografía o enriquecer datos de leads con contexto regional.
Usa la Geolocalización de IP en Claude Code y agentes de IA
Instala la skill oficial de Claude Code para geolocalizar cualquier dirección IP directamente dentro de tu agente de programación con IA: país, ciudad, ISP, zona horaria y más mediante lenguaje natural.
Pregunta a tu agente de IA con naturalidad
Plataformas compatibles
Skill de Claude Code para la API de Geolocalización de IP de APIpick
Devuelve país, continente, ciudad, latitud/longitud, zona horaria IANA, código de moneda ISO, nombre del ISP y ASN de cualquier dirección IP.