Qué es una API, para qué sirven y tipos

Quizás hayas escuchado alguna vez el concepto API (Application Programming Interfaces, Interfaz de Programación de Aplicaciones) y no sabes exactamente a qué se refiere. Las API son herramientas de gran valor para el funcionamiento de las aplicaciones y las páginas web de hoy en día.

En esta entrada veremos qué son, para qué sirven y cómo funcionan las API.

Qué es una API

Una API o interfaz de programación es un conjunto de mecanismos, protocolos y definiciones que se utilizan para integrar el software de las aplicaciones y, mediante dicho conjunto de reglas, permite la comunicación entre dos componentes de software.

Para poner esto en contexto podemos poner el ejemplo de una tienda online, donde hay una base de datos que contiene el stock de los productos, precio, colores, tallas, etc. Mediante las API este apartado de software (la base de datos) se puede comunicar con la web de la tienda online (el otro apartado de software) Para mostrar al usuario si quedan bicicletas amarillas y cuánto cuestan. También, cuando un cliente realiza una compra, la web se comunica con la base de datos para hacer un «-1» en el registro de logística.

La razón por la que puedes haber oído hablar de las API pero desconozcas de su funcionalidad puede deberse a que pese a lo importantes que son, resultan «invisibles» al usuario final, es cosa de los desarrolladores.

Para qué sirven las API

Las API se explican mediante la clásica arquitectura cliente-servidor, donde el cliente realiza peticiones que son proveídas por el servidor. Al permitir la comunicación entre diferente software sin conocer cómo esta integrado, las API permiten ahorrar una cantidad significativa de tiempo y dinero a los desarrolladores. También otorgan flexibilidad, lo cual las hace óptimas tanto para implementar nuevas funcionalidades en una aplicación como para gestionar las ya existentes.

Pongamos el ejemplo de un juego móvil, que suelen ser desarrollados por equipos pequeños en plantilla y presupuesto. Puede ser que hayas visto la opción de guardar tu progreso en el juego iniciando sesión el Google o en Facebook para poder reutilizar la cuenta actual en otros dispositivos, esto se debe a que los desarrolladores utilizan las API de Google y Facebook para ahorrar el tiempo y los costes de implementar unos servidores, y en vez de ello usan los servicios en la nube de estas empresas.

También puede ser que el juego contenga micro transacciones, en vez de crear una pasarela de pago propia, lo más común es que entren en juego una vez más las API, en este caso pueden ser de Google, Apple o Paypal. Y mediante la API de Google docs se puede generar automáticamente la factura posterior a la compra.

Como puedes ver, de esta manera el equipo de desarrollo de un juego móvil puede centrarse exclusivamente al desarrollo de este y proveer el resto de servicios de forma rápida y sencilla mediante el uso de las API.

Tipos de API por acceso

  • Privadas: Algunas API son creadas y de uso exclusivo para una empresa, de manera que poseen el control total de uso y modificación.
  • Partners: El concepto anterior de API privada se puede compartir entre un grupo limitado de empresas o desarrolladores. En este caso pasa a categorizarse como API para partners y supone una fuente de ingresos a la empresa originaria de dicha API.
  • Públicas: Son API open source, cualquier persona tiene acceso al uso y desarollo de la misma.

Tipos de API por funcionamiento

  • API de SOAP: Intercambia datos entre cliente y servidor mediante el empleo del lenguaje XML. Es un protocolo simple de acceso a objetos y un tanto obsoleto en la actualidad.
  • API de REST: Significa transferencia de estado representacional. Cliente y servidor intercambian los datos mediante HTTP, usando un conjunto de operadores de tipo GET, POST, DELETE, etc. Una característica a destacar de las API REST es que poseen ausencia de estado, lo que significa que el servidor no guarda datos del cliente durante sus operaciones
  • API de RPC: En este tipo de API el cliente realiza o completa una acción de forma remota en el servidor y este le devuelve el resultado.
  • API de WebSocket: Utiliza objetos JSON para la transferencia de datos. Las API de WebSocket permiten comunicación bidireccional entre el cliente y el servidor.

Diferencia entre las API SOAP y REST

La diferencia más básica entre ambas es que SOAP es un protocolo, mientras que REST es un estilo de arquitectura. Las API RESTful son aquellas API web que utilizan la arquitectura REST, son muy populares en la actualidad desbancando a las SOAP.


«
»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *