Por: Solange Jimenez
Un API (application programming interface, por sus siglas en inglés) es una interfaz de programación de aplicaciones. Es la parte del servidor que recibe solicitudes y envía respuestas para resolver problemas utilizando subrutinas, funciones y procedimientos o métodos creados por un tercero.
Funciona como un delivery que entrega bienes, servicios, fondos o información, directo en el lugar de consumo o uso desde donde se realizó la solicitud. En el caso específico del API, entregará una pieza de software con una función distinta, todo el servidor, toda la aplicación o solo una pequeña parte de ella.
Se tratan más como productos que como códigos. Pero, ¿cómo funcionan?
Una aplicación cliente inicia una llamada a la API (solicitud);
Esta solicitud se procesa desde una aplicación al servidor web a través del Identificador uniforme de recursos (URI) de la API e incluye un verbo de solicitud, encabezados y, a veces, un cuerpo de solicitud;
Después de recibir una solicitud válida, la API realiza una llamada al programa externo o servidor web;
El servidor envía una respuesta al API con la información solicitada;
La API transfiere los datos a la aplicación solicitante inicial.
Para conectarse a las API y crear aplicaciones que utilicen los datos o las funciones que ofrecen, se puede usar una plataforma de integración distribuida, como los sistemas heredados y el Internet de las cosas (IoT).
Un factor interesante es que las API posibilitan que sus productos y servicios se comuniquen con otros, sin necesidad de saber cómo estos otros están implementados, lo cual minimiza la cantidad de códigos que los desarrolladores necesitan crear y genera más coherencia entre las aplicaciones de una misma plataforma. Esta simplificación del proceso ahorra tiempo y dinero.
Algunas de las API más comunes son las de Google, eBay, Salesforce.com, Amazon, y Expedia. Por ejemplo, las API de Google aprueban la comunicación e integración de los servicios de Google con otros servicios: API de Búsqueda, Gmail, Traductor o Maps. Las aplicaciones de terceros acceden a esas API para extender la funcionalidad de sus servicios.
Las API compartidas posibilitan que más personas usen su tecnología, alcanzando nuevos partners o incluso, creando un ecosistema de desarrolladores en torno. Esto da la posibilidad de crear nuevos canales de ingresos o ampliar los existentes, expandir el alcance de la marca y provocar una mayor eficiencia, mediante el desarrollo y la colaboración externa.
En cuanto a la seguridad y el control, usted decide cómo habilita el acceso y a quiénes se lo otorga, como parte de una gestión eficaz de las API. Además, las llamadas API suelen incluir credenciales de autorización para reducir el riesgo de ataques al servidor, y una puerta de enlace API puede limitar el acceso para minimizar las amenazas a la seguridad. También, durante el intercambio, los encabezados HTTP, las cookies o los parámetros de cadena de consulta brindan capas de seguridad adicionales a los datos.
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) y mediante la implementación de puertas de enlace API para administrar y autenticar el tráfico.
Las API deberían ser consideradas al momento de evaluar el modelo de negocio de algunas empresas, pudiendo incluso cambiar la manera en que se comercializan sus servicios.