Las APIs son parte de tu vida cotidiana y justamente gracias a ellas, es posible que estés leyendo este artículo.
Las APIs se han vuelto una de las herramientas más utilizadas en el mundo de la tecnología, gracias a ellas puedes pagar la colegiatura de la universidad, como también ver un video en Internet, incluso poder orientarte utilizando las plataformas de navegación que existen hoy en día. Sin ellas el mundo del internet no existiría, o al menos no de la manera como la conocemos.
Para poder entender más acerca de las APIs, vamos a empezar explicándote de la forma más sencilla qué son y cuáles son sus principales usos.
¿Qué es una API?
La palabra API viene del acrónimo en inglés “Application Programming Interface”, que en español significa “Interfaz de Programación de Aplicaciones”. Esta herramienta sirve como un «intérprete», es decir; es el conjunto de subrutinas, funciones, procedimientos o métodos que ofrece una biblioteca de código, un software, para ser utilizado por otro software.
Cuando usa una aplicación en su teléfono móvil, la aplicación se conecta a Internet y envía datos a un servidor. Luego, el servidor recupera esos datos, los interpreta, realiza las acciones necesarias y los envía de vuelta a su teléfono. Luego, la aplicación interpreta esos datos y le presenta la información que desea de una manera legible. Esto es lo que es una API: todo esto sucede a través de la API.
Para explicar esto mejor, tomemos un ejemplo familiar.
Imagínese que está sentado en una mesa en un restaurante con un menú de opciones para ordenar. La cocina es la parte del “sistema” que preparará su pedido. Lo que falta es el enlace crítico para comunicar su pedido a la cocina y devolver su comida a su mesa. Ahí es donde entra el camarero o la API. El camarero es el mensajero, o API, que toma su solicitud o pedido y le dice a la cocina, el sistema, qué hacer. Luego, el camarero le devuelve la respuesta; en este caso, es la comida.
Ejemplo de una API de la vida real.
Es posible que esté familiarizado con el proceso de búsqueda de vuelos en línea. Al igual que el restaurante, tiene una variedad de opciones para elegir, incluidas diferentes ciudades, fechas de salida y regreso, y más. Imaginemos que está reservando su vuelo en el sitio web de una aerolínea. Usted elige una ciudad y fecha de salida, una ciudad y fecha de regreso, clase de cabina, así como otras variables. Para reservar su vuelo, interactúa con el sitio web de la aerolínea para acceder a su base de datos y ver si hay asientos disponibles en esas fechas y cuáles podrían ser los costos.
Sin embargo, ¿qué sucede si no está utilizando el sitio web de la aerolínea, un canal que tiene acceso directo a la información? ¿Qué sucede si utiliza un servicio de viajes en línea, como Kayak o Expedia, que agrega información de varias bases de datos de aerolíneas?
El servicio de viajes, en este caso, interactúa con la API de la aerolínea. La API es la interfaz que, al igual que su servicial camarero, puede ser solicitada por ese servicio de viajes en línea para obtener información de la base de datos de la aerolínea para reservar asientos, opciones de equipaje, etc. La API luego toma la respuesta de la aerolínea a su solicitud y la entrega correctamente. Vuelva al servicio de viajes en línea, que luego le muestra la información más actualizada y relevante.
Lo que también proporciona una API, es un método de seguridad.
Los datos de su teléfono nunca están completamente expuestos al servidor y, del mismo modo, el servidor nunca está completamente expuesto a su teléfono. En cambio, cada uno se comunica con pequeños paquetes de datos, compartiendo solo lo que es necesario, como pedir comida para llevar. Le dices al restaurante lo que te gustaría comer, te dicen lo que necesitan a cambio y luego, al final, obtienes tu comida.
Las API se han vuelto tan valiosas que constituyen una gran parte de los ingresos de muchas empresas. Las principales empresas como Google, eBay, Salesforce.com, Amazon y Expedia son solo algunas de las empresas que ganan dinero con sus API. La “economía API” se refiere a este mercado de API.
Las APIs modernas:
A lo largo de los años, lo que es una “API” a menudo ha descrito cualquier tipo de interfaz de conectividad genérica para una aplicación. Más recientemente, sin embargo, la API moderna ha adquirido algunas características que las hacen extraordinariamente valiosas y útiles:
Las API modernas se adhieren a los estándares (generalmente HTTP y REST), que son amigables para los desarrolladores, de fácil acceso y comprensibles en general.
Se tratan más como productos que como código. Están diseñados para el consumo de audiencias específicas (por ejemplo, desarrolladores móviles), están documentados y están versionados de manera que los usuarios puedan tener ciertas expectativas de su mantenimiento y ciclo de vida.
Debido a que están mucho más estandarizados, tienen una disciplina mucho más sólida para la seguridad y la gobernanza, además de ser monitoreados y administrados para el rendimiento y la escala.
Como cualquier otra pieza de software producida, la API moderna tiene su propio ciclo de vida de desarrollo de software (SDLC) de diseño, prueba, construcción, administración y control de versiones. Además, las API modernas están bien documentadas para su consumo y control de versiones.
¿Por qué se necesitan las APIs?
Ya sea que esté administrando herramientas existentes o diseñando nuevas, puede usar una interfaz de programación de aplicaciones para simplificar el proceso. Algunos de los principales beneficios de las API son los siguientes:
Colaboración mejorada: la empresa promedio utiliza casi 1200 aplicaciones en la nube (el enlace reside fuera de IBM), muchas de las cuales están desconectadas. Las API permiten la integración para que estas plataformas y aplicaciones puedan comunicarse sin problemas entre sí. A través de esta integración, las empresas pueden automatizar los flujos de trabajo y mejorar la colaboración en el lugar de trabajo. Sin API, muchas empresas carecerían de conectividad y sufrirían silos de información que comprometen la productividad y el rendimiento.
Innovación más sencilla: Las API ofrecen flexibilidad, lo que permite a las empresas establecer conexiones con nuevos socios comerciales, ofrecer nuevos servicios a su mercado existente y, en última instancia, acceder a nuevos mercados que pueden generar retornos masivos e impulsar la transformación digital. Por ejemplo, la empresa Stripe comenzó como una API con solo siete líneas de código. Desde entonces, la compañía se ha asociado con muchas de las empresas más grandes del mundo, se ha diversificado para ofrecer préstamos y tarjetas corporativas, y recientemente fue valorada en USD 36 mil millones (el enlace reside fuera de IBM).
Monetización de datos: muchas empresas optan por ofrecer API de forma gratuita, al menos inicialmente, para que puedan crear una audiencia de desarrolladores en torno a su marca y forjar relaciones con posibles socios comerciales. Sin embargo, si la API otorga acceso a activos digitales valiosos, puede monetizarlos vendiendo el acceso (esto se conoce como economía API). Cuando AccuWeather (el enlace reside fuera de IBM) lanzó su portal de desarrollo de autoservicio para vender una amplia gama de paquetes de API, solo tomó 10 meses atraer a 24,000 desarrolladores, vender 11,000 claves de API y construir una comunidad próspera en el proceso.
Seguridad adicional: Las API crean una capa adicional de protección entre sus datos y un servidor. Los desarrolladores pueden fortalecer aún más la seguridad de la API mediante el uso de tokens, firmas y cifrado de seguridad de la capa de transporte (TLS); mediante la implementación de puertas de enlace API para administrar y autenticar el tráfico; y practicando una gestión de API eficaz.