¿Qué es una API y para qué sirve?
En el mundo de la informática y la programación no todo es visible. Hay algunos mecanismos fundamentales que permanecen ocultos a los ojos del usuario: entre ellos, los más importantes son las API. Su uso es anterior al nacimiento del ordenador personal y fueron desarrolladas para permitir la interacción entre librerías (conjuntos de métodos y funciones) y sistemas operativos. Hoy existen API públicas para seguir la Estación Espacial Internacional y también para descubrir las peculiaridades de los Pokémon. Ahora intentemos comprender qué es una API.
¿Qué significa API?
Las Application programming interface (API), en español ‘interfaces de programación de aplicaciones’, son protocolos y definiciones útiles para la interacción entre diferentes software o entre software y hardware. Las API se remontan a la década de 1940, aunque sólo unos veinte años después se empezó a utilizar este acrónimo.
Las API permiten optimizar la arquitectura y el diseño del software, manteniendo los estándares de seguridad y garantizando la escalabilidad. En términos más generales, las API son la clave para gestionar las herramientas existentes y diseñar otras nuevas, ofreciendo también oportunidades de innovación. Las empresas que crean servicios, software o dispositivos encuentran en las API un vehículo para difundir sus productos, porque la garantía de interacción, a su vez, permite a sus clientes y terceras partes crear mejores servicios a costes más bajos.
El intercambio de datos y servicios a través de las API está a la base de una industria que se espera alcance los 40 mil millones de dólares en 2030. Hoy en día, prácticamente todas las empresas que producen hardware, software y servicios web ponen API a disposición de socios y usuarios. En 2018, Gartner predijo que dentro de cinco años, el 65% de los ingresos de quienes ofrecen servicios web se generarían a través de API. Más allá de la fiabilidad de la previsión, el dato subraya el papel cada vez más central que desempeñan para la difusión de servicios y tecnologías en general.
¿Para qué sirve una API?
Dado que el software y los dispositivos se desarrollan utilizando diferentes lenguajes y estructuras de datos, se debe encontrar una manera para que se comuniquen entre sí. Una API permite la comunicación entre aplicaciones o entre dispositivos y aplicaciones. Entre las muchas analogías utilizadas para explicar qué es una API, la del cartero es quizás la mejor. El funcionario debe entregar una carta: puede entregarla sin problemas o no hacerlo porque desconoce el destinatario, la dirección es incorrecta o por otros motivos.
Al final de su turno de trabajo, el cartero regresa a la oficina con o sin carta, según el resultado de la entrega. Considerando al remitente y al destinatario de la carta como dos aplicaciones, el cartero, es decir la API, no necesita conocer el contenido del sobre para entregarlo y el procedimiento de entrega se produce solo si se respeta el protocolo. Es decir, si el nombre del destinatario es correcto, si su dirección existe y si el sobre está sellado.
Por otro lado, las formas en que se implementan el software y los dispositivos pueden cambiar con el tiempo, y sería necesario actualizar constantemente las interfaces para que puedan seguir comunicándose. En cambio, las API, al ser independientes de las particularidades de lo que necesitan comunicar, constituyen una solución transversal y permanente. En consecuencia, las empresas que necesitan recopilar datos para realizar sus negocios tienen ventajas en términos de agilidad, reducción de costes de desarrollo e implementación de flujos de negocio y software de gestión para uso interno.
¿Cómo hacer una API?
Los actores que participan en el funcionamiento de una API se pueden definir:
- Cliente, es decir el agente que realiza una solicitud de datos (llamada o API call), y que necesariamente debe conocer las reglas útiles para que pueda recibir una respuesta.
- Servidor, que proporciona los datos solicitados por la llamada.
Cliente y Servidor son términos genéricos que representan aplicaciones, software de diferente naturaleza, dispositivos (por ejemplo, IoT), bases de datos, pero también servicios front-end y back-end.
La comunicación entre estos agentes se produce a través de protocolos implementados y definidos por los Servidores, accesibles a través de documentación específica. Esta documentación contiene toda la información necesaria para el correcto funcionamiento de las API, incluidas funciones, argumentos, clases y tipos de retorno.
El desarrollo de las API está a cargo de programadores expertos que dominan los diferentes lenguajes informáticos y protocolos con los que se pueden crear. En el mundo digitalizado en el que vivimos, estos profesionales están muy demandados por el mercado laboral.
Además de grados, posgrados y máster en programación e informática, también es muy útil seguir una trayectoria de estudio que permita comprender, por un lado, las necesidades del usuario, como un Máster en UX & Customer Experience, por el otro, el funcionamiento del mercado con un MBA.
Tipos de API
Existen cuatro tipos principales de API y su elección depende sobre todo del contexto en el que se vayan a utilizar:
- API orientadas a funciones
- API orientadas a archivos
- API orientadas a protocolos
- API orientadas a objetos
Las API de funciones están destinadas a la interacción entre software y hardware y, como sugiere el término, solo llaman a funciones. Las API de archivos permiten que varios archivos interactúen para consultar y escribir datos, mientras que las API orientadas a protocolos consienten la estandarización de la comunicación entre sistemas, independientemente de los sistemas operativos y el hardware. Las API orientadas a objetos se encuentran entre las más flexibles de usar.
PayPal es un ejemplo de API que permite conectar la información financiera de sus usuarios a sus cuentas y, cuando realizan un pago, el circuito consultado no tiene acceso a la información bancaria vinculada. Las API de Google Maps ofrecen varias funciones. No sólo el cálculo del trayecto entre dos ubicaciones, sino que hay toda una serie de servicios agregados, como información de contacto y horarios de apertura de las tiendas, reseñas y todos los demás datos adjuntos que, de hecho, se generan a través de API.
Lo mismo ocurre con las aplicaciones meteorológicas o las que publican las cotizaciones de acciones en las bolsas. Incluso los numerosos sitios y aplicaciones que proporcionan resultados en tiempo real de partidos de fútbol de ligas más o menos populares utilizan API.
Programas relacionados
No se encontró resultado