Desde sus humildes comienzos hace más de 25 años,la red mundial ha evolucionado de manera que incluso los mejores analistas nunca podrían haber predicho. Forma lo que era esencialmente una herramienta para ayudar a los investigadores a compartir información, se ha convertido en una herramienta de consumo sin la cual muchos de nosotros simplemente no podemos vivir. Ha cambiado muchos aspectos de nuestras vidas y hemos llegado a confiar en ello, tal vez más de lo que deberíamos. Se ha vuelto tan común que está cambiando la industria minorista. Desde grandes cadenas de tiendas físicas, los principales minoristas ahora son mercados basados en la web.
Para tener éxito, los minoristas en línea no solo necesitanestar presentes en la web, pero también necesitan utilizar plenamente sus funciones. Una de esas características es la geolocalización. Esta tecnología puede permitir que un minorista conozca la ubicación del visitante de su sitio web, una característica útil que le permite mostrar los costos de envío estimados o presentar ofertas específicas de la ubicación. Una de las formas más fáciles de beneficiarse de la geolocalización es utilizar una API dedicada que se pueda alimentar con una dirección IP y que devuelva cualquier información pertinente sobre esa dirección. los API de ipstack es uno de esos productos y estamos a punto de descubrircómo hace su magia y qué puede hacer por ti. Echaremos un vistazo a la funcionalidad básica de la herramienta, así como a cómo usarla. Veremos cómo funciona, qué tipo de documentación y soporte está disponible para el producto y veremos su estructura de precios bastante simple.

Introduciendo ipstack
En esencia, ipstack es una API de geolocalización queutiliza múltiples ISP interconectados para proporcionar datos geográficos precisos. Llame a la API desde el código de su sitio web y le devolverá una gran cantidad de datos geográficos sobre los usuarios de su sitio web. Obtendrá, por supuesto, la ubicación geográfica del usuario (¿no es ese el punto principal?), Pero eso no es todo. Por ejemplo, la herramienta devolverá un enlace a una imagen de la bandera del país del usuario o una versión de emoji de la misma. Además, obtendrá información sobre si el usuario accede a su sitio a través de un proxy. Entraremos en detalles más detallados sobre todo esto a medida que busquemos detalles más detallados en los módulos disponibles.
El proyecto, inicialmente llamado freegeoip.net, vio la luz en 2009 como una iniciativa de código abierto para ayudar a los desarrolladores. A través de la mejora continua basada en los comentarios de los usuarios, evolucionó unos ocho años más tarde hasta convertirse en el producto completo que estamos viendo. Durante este tiempo, la base de usuarios del producto creció a más de cien mil clientes satisfechos. Y no son solo clientes. Gigantes como Microsoft o Samsung están utilizando la API. También lo son Airbnb y HubSpot.
La API de ipstack usa un esquema altamente dinámicoque actualiza su base de datos varias veces al día, asegurando la integridad de los resultados devueltos. Para este propósito, ipstack se ha asociado con varios ISP grandes en todo el mundo. La herramienta realiza todas las comunicaciones a través de un canal cifrado con SSL de 256 bits, utilizando HTTPS, para asegurar todas las transferencias de datos. La API puede devolver los resultados en formato XML o JSON, según sus necesidades específicas.
Una de las mejores partes de la API de ipstack es sumodularidad. Varios módulos disponibles devuelven cada vez más datos sobre la ubicación del usuario. Eso lo convierte en una herramienta muy flexible. La velocidad también es uno de los puntos fuertes del producto. Llama a la API con los parámetros apropiados y obtiene los resultados solicitados de manera súper rápida. Actualmente, la API de ipstack maneja más de dos mil millones de solicitudes diarias y aún responde casi instantáneamente. A través de una asociación con varios ISP, el producto puede cubrir unos 2 millones de ubicaciones y más de doscientas mil ciudades en todo el mundo. También es compatible con las direcciones IPv4 e IPv6.
Cómo funciona la geolocalización
Antes de continuar, detengámonos brevemente yechar un vistazo rápido a cómo se ve la geolocalización. Como se podría adivinar por el nombre de ipstack, tiene que ver con las direcciones IP. Las direcciones IP se pueden comparar, hasta cierto punto, con las direcciones postales. Cada dispositivo conectado a Internet tiene una dirección IP única. Pero estas direcciones IP no se asignan aleatoriamente a cada dispositivo. Tiene algo de sentido. Parte de una dirección IP identifica el dispositivo conectado individual y parte identifica la red a la que está conectado. Y la parte de la red en sí está organizada jerárquicamente, algo así como un árbol de directorios de disco de computadora. (Espero que los ingenieros entre nuestros lectores me perdonen por esta simplificación excesiva).
Esto es similar a una dirección postal con una callenúmero, el nombre de una calle, una ciudad y, finalmente, un país. Y al igual que la publicación británica no tiene idea de dónde se encuentra cualquier dirección de los EE. UU., Enviará un correo con destino a los EE. UU., Que se encargará de enrutar el correo a la ubicación correcta. Y al igual que podría ingresar prácticamente cualquier dirección postal en una herramienta como el mapa de Google y obtener la ubicación correspondiente exacta, puede consultar una herramienta como la API ipstack con una dirección IP para obtener su ubicación.
Sin embargo, esto tiene algunas limitaciones. Por ejemplo, no obtendrá la ubicación exacta de la dirección IP. Lo que obtendrá es lo que pueda proporcionar el ISP que proporciona la dirección IP. Esto a menudo no es mucho más preciso que la ciudad o el vecindario en general, aunque algunos proveedores devuelven más información que otros. Además, si el usuario está demandando una VPN para acceder a su sitio web, lo que obtendrá de dicha búsqueda es la ubicación del servidor VPN que está utilizando.
Características principales de la API de ipstack
Los desarrolladores de la API de ipstack decidieron usar unEnfoque modular con este producto. Se compone de varios módulos, cada uno de los cuales devuelve un tipo diferente de información. Hay, por ejemplo, módulos de zona horaria, moneda o incluso seguridad. Usted elige qué módulo usar utilizando los parámetros apropiados al enviar la solicitud a la API de ipstack.
Hay algunas ventajas en este enfoque. Primero, hace que la respuesta sea más fácil de manejar. Si solo hubiera un tipo de solicitud que devolviera todos los datos disponibles sobre una dirección IP, el código de su sitio web tendría que analizar la respuesta completa para obtener la información que necesita. Además, enviar solicitudes más pequeñas, con respuestas más pequeñas, puede mejorar el rendimiento.
Echemos un vistazo más profundo a cada uno de los disponiblesmódulo, cómo llamarlos y cómo se ve su respuesta típica. Eso le dará una visión general bastante clara de qué esperar de esta poderosa herramienta.
El módulo de ubicación

El módulo más básico de la API de ipstack es elMódulo de localización. Devuelve detalles sobre la ubicación física de la dirección IP proporcionada en la consulta. Obtendrá el país de la dirección IP, su idioma principal u oficial, así como un emoji para la bandera del país que puede usar para personalizar la experiencia de su usuario.
Aquí hay una respuesta típica a una consulta a la API de ipstack. La primera parte se incluye con cualquier consulta, independientemente del módulo solicitado:
ip: "142.243.254.224" hostname: "142.243.254.224" type: "ipv4" continent_code: "NA" continent_name: "North America" country_code: "CA" country_name: "Canada" region_code: "QC" region_name: "Quebec" city: "Montreal" zip: H2V latitude: 45.5178 longitude: -73.6046
La mayoría de los atributos devueltos se explican por sí mismos, pero tiene documentación detallada en el sitio web de ipstack si necesita más ayuda.
Pero como estamos hablando del módulo de ubicación, echemos un vistazo a la información adicional que se devuelve al usarlo:
location: Object {} geoname_id: null capital: "Ottawa" languages: Object {} code: "en" name: "English" native: ""English"" code: "fr" name: "French" native: ""Français"" country_flag: "http://assets.ipstack.com/flags/ca.svg" country_flag_emoji: "??" country_flag_emoji_unicode: "U+1F1E8 U+1F1E6" calling_code: "1" is_eu: false
Como puede ver, la información adicional que obtiene esprincipalmente la capital del país, los diversos idiomas que se utilizan en esa ubicación, un enlace a una imagen de la bandera del país y el código Unicode de los emoji del país.
El módulo de moneda

El módulo de moneda se puede utilizar para ampliarMejora la experiencia de usuario de tu sitio web. Esto es particularmente cierto en el caso de un sitio de compras, ya que le permitirá mostrar los precios en la moneda de su usuario. Los detalles proporcionados incluyen el nombre y el símbolo de la moneda local, así como su nombre plural. La API no convertirá los precios a la moneda adecuada, por supuesto, pero le permitirá usar otra API para convertir sus precios a la moneda correcta para sus visitantes. Echemos un vistazo a cómo se ve la salida del módulo de moneda:
currency: Object{} code: "CAD" name: "Canadian Dollar" plural: "Canadian dollars" symbol: "CA$" symbol_native: "$"
El modulo de seguridad

Probablemente no tan popular —o útil— como el anteriormódulos, el módulo de seguridad sigue siendo interesante. Devuelve información sobre varios aspectos de seguridad de la conexión entrante. Por ejemplo, le dirá si se accede al sitio a través de un proxy y, de ser así, el tipo de proxy o si la solicitud llegó a través de la red tor. También puede decirle que una solicitud es de un rastreador en lugar de un usuario real. Este tipo de información se puede utilizar para evitar el raspado. El módulo también devuelve el nivel de amenaza asociado con la dirección IP proporcionada, lo que potencialmente permite una protección cruda contra solicitudes maliciosas. Aquí hay un vistazo a la respuesta típica del Módulo de seguridad:
security: Object{} is_proxy: false proxy_type: null is_crawler: false crawler_name: null crawler_type: null is_tor: false threat_level: "low" threat_types: null
El módulo de zona horaria

Otro módulo que puede ser útil paraPersonalizar la experiencia de usuario de los visitantes de su sitio web es el módulo Zona horaria. Devuelve algunos detalles adicionales sobre, lo adivinó, los visitantes de su sitio web. Uno de los lugares donde podría usar dicha función en sitios que se ocupan de información urgente. Le permite mostrar la hora correcta en función de la ubicación de sus usuarios.
El módulo proporciona información como el desplazamiento GMT, la hora actual del usuario, el código de tiempo y la ubicación de la zona horaria, como puede ver en esta respuesta de muestra:
time_zone: Object{} id: "America/Montreal" current_time: "2019-07-09T12:39:22-04:00" gmt_offset: -14400 code: "EDT" is_daylight_saving: true
El módulo de conexión

Por último, pero no menos importante, está el Módulo de conexión. Este es bastante simplista. Todo lo que devuelve es el número del sistema autónomo (AS) asociado con la dirección IP de origen, así como el nombre del ISP. Bueno, en realidad es el nombre del propietario de AS en lugar del ISP. Algunas organizaciones registran su propio sistema autónomo, como es el caso en el siguiente ejemplo:
connection: Object{} asn: 395399 isp: "City of Montreal"
Este es probablemente el menos útil de todos los módulos, pero algunos lo encontrarán útil para diversos fines analíticos.
Trabajando con la API de ipstack
Hemos visto qué información puede serdevuelto por la API de ipstack, ahora es el momento de echar un vistazo a cómo se llama. La API de ipstack ofrece tres tipos diferentes de consultas, cada una con diferentes parámetros. Existe la búsqueda estándar, la búsqueda masiva y la búsqueda del solicitante. Veamos en qué se diferencian. Esta es una buena característica ya que, por ejemplo, la solicitud masiva permite combinar varias solicitudes en una sola, lo que reduce la sobrecarga total y permite resultados más rápidos. Echemos un vistazo más profundo a cada tipo de solicitud.
Búsqueda estándar
Como habrás adivinado, la búsqueda estándar esEl más básico. Devuelve los detalles sobre una única dirección IP que proporciona al llamar a la API de ipstack. Es bastante simple de usar y funcionará con direcciones IPv4 o IPv6. Para facilitar aún más las cosas, la documentación del producto proporciona un código de muestra para la solicitud estándar tanto en PHP (cURL) como en JavaScript (Jquery.ajax). Si su sitio web está construido con cualquiera de estos, usar la API es realmente obvio. Aquí hay una muestra de una llamada típica a la API usando un código HTML simple:
https://api.ipstack.com/123.123.123.123?access_key=YOUR_ACCESS_KEY
En este ejemplo, YOUR_ACCESS_KEY sería reemplazado por la clave de acceso real quecuando te registraste en el servicio. También incluiría la dirección IP real sobre la que desea información en lugar de la ficticia en este ejemplo.
Los resultados para una búsqueda estándar incluyen todos losmódulos por defecto, pero los parámetros adicionales le permiten ajustar la solicitud a sus necesidades exactas. Todos los detalles sobre los parámetros disponibles se explican claramente en la documentación del producto. Del mismo modo, la respuesta predeterminada es un objeto JSON, pero los parámetros pueden cambiar eso a un formato XML.
Búsquedas masivas y solicitantes
La búsqueda masiva le permite solicitar datos contramúltiples direcciones IP dentro de una sola solicitud. Al igual que la búsqueda estándar, puede obtener datos en direcciones IPv4 e IPv6. Incluso puede mezclar ambos tipos de direcciones en una sola solicitud. El formato de la solicitud es el mismo que el de la búsqueda estándar, excepto que usted especifica múltiples direcciones IP separadas por comas.
https://api.ipstack.com/123.123.123.123,124.124.124.124,125.125.125.125, 126.126.126.126?access_key=YOUR_ACCESS_KEY
El último tipo de solicitud que ofrece ipstackAPI es la búsqueda de solicitante. Devolverá información sobre la dirección IP de donde proviene la solicitud. Es el tipo de solicitud que ejecuta desde un script del lado del cliente. Para realizar una llamada de búsqueda de solicitante, todo lo que debe hacer es usar la palabra clave "check" en lugar de una dirección IP. Los otros parámetros de solicitud disponibles son los mismos que para otros tipos de solicitud.
https://api.ipstack.com/check?access_key=YOUR_ACCESS_KEY
¿Cómo funciona la API de ipstack?
La API de ipstack es, más que probable, algose integraría en un sitio web en tiempo real. Por ejemplo, es posible que desee publicar contenido diferente según la ubicación del cliente. Para lograr eso, necesita la API para un rendimiento increíblemente rápido. Cualquier demora en la respuesta de la API se traducirá en demoras para mostrar la página a su cliente, algo que es muy probable que desee evitar. Lo mismo es cierto sin importar para qué use los datos de ubicación. Es por eso que el tiempo de respuesta de la herramienta que está utilizando es de suma importancia. Si bien una API de geolocalización puede proporcionar una funcionalidad muy necesaria, su incumplimiento puede tener un impacto desastroso.
Por estos motivos, debe elegir una API conBuen tiempo de respuesta. Hemos realizado gran parte del arduo trabajo de probar varios escenarios y hemos realizado pruebas con una o varias direcciones IP, algunas con más parámetros opcionales y otras con menos. Estamos bastante satisfechos con los resultados y obtuvimos un tiempo de respuesta bastante consistente de alrededor de 100 ms, independientemente de la solicitud. La respuesta también fue consistente con el tiempo sin aparentes "horas pico" cuando el rendimiento se vería afectado y también fue similar sin importar desde dónde lanzamos las solicitudes. Parece que los servidores ipstack están diseñados para manejar la carga que reciben. En general, parece que el uso de la API ipstack apenas tuvo ningún efecto en la respuesta del sitio web visto desde la perspectiva del usuario.
Documentación y soporte del producto
A menudo se dice que un producto es tan buenocomo su documentación Si eso es cierto, la API de ipstack no tiene nada que temer, ya que su documentación es fácil de encontrar, usar y comprender. La calidad de la documentación también da una medida de cuánto se preocupa un editor de software por sus usuarios. Aquí de nuevo, no hay nada de qué preocuparse.

Una de las mejores cosas de este productoLa documentación es, curiosamente, lo poco que hay. Todo cabe en una sola página web bien diseñada donde encontrará fácilmente todo lo que necesita. Y para facilitar aún más las cosas, un panel de menú facilita el acceso a cualquier sección. La documentación cubre todo, desde el uso de varios tipos de solicitudes hasta la personalización de la respuesta.
En el caso altamente improbable cuando no lo haríasencuentre lo que necesita en la documentación, el soporte también está disponible. Inicialmente puede llevar algún tiempo llegar al soporte técnico, pero una vez que lo hace, responden con bastante rapidez.
Precios
Hay varios planes de precios disponibles paraAPI de ipstack. En el nivel más bajo, existe el plan gratuito. Como su nombre lo indica, este es gratis. También es algo limitado. Para empezar, solo puede ejecutar hasta 10 000 consultas por mes. También solo incluye el Módulo de ubicación y el acceso al soporte es limitado. Sin embargo, puede ser una excelente manera de probar el producto y ver cómo puede integrarse en su entorno.
El siguiente nivel es el plan básico. Este se vende por $ 9.99 / mes o $ 95.90 / año (un descuento del 20%) y eleva el límite de solicitudes hasta 50 000 / mes. También le permite usar los módulos Moneda, Zona horaria y Conexión. Además, el plan también incluye soporte mejorado, así como seguridad mejorada mediante el uso de cifrado SSL.
El plan más popular es el profesional.que se vende por $ 49.99 / mes o $ 479.90 / año. Le brinda todo lo que está incluido en el plan básico, pero aumenta el límite de solicitudes mensuales a 500 000 y también incluye la capacidad de hacer solicitudes masivas.
En la parte superior está el plan profesional plus. Cuesta $ 99.99 / mes o $ 959.90 / año. Es idéntico al plan profesional, pero permite hasta 2 millones de solicitudes por mes y es el único plan que incluye el módulo de seguridad.
Si eso no es suficiente, también hay unplan de empresa personalizable que se puede organizar poniéndose en contacto con ipstack. Puede incluir tantas solicitudes mensuales como pueda necesitar, así como varias soluciones personalizadas basadas en las necesidades específicas de un cliente.
En conclusión
La API de ipstack es un excelente producto quele permite obtener la mayor cantidad de datos que puede obtener de una dirección IP de manera rápida y fácil. Tiene un tiempo de respuesta sorprendente, excelente documentación y un buen soporte que se combinan para hacer de este un gran valor por su dinero. Además, el hecho mismo de que varios gigantes de Internet lo usen es probablemente un buen testimonio del valor del producto.
Este es definitivamente un producto que recomendaría siestá buscando explotar los datos que se pueden recopilar para la dirección IP del visitante de su sitio web. Y dado que hay un plan gratuito, aunque limitado, no hay ninguna razón por la que al menos no debería intentarlo, vea por usted mismo lo que puede hacer por usted.
Comentarios