Iniciar sesión / Registrar Cuenta

Integración

¿Qué es una API de REST?

Una API de transferencia de estado representacional (REST), o API de RESTful, es una interfaz de programación de aplicaciones que se ajusta a los límites de la arquitectura REST.

Una API o interfaz de programación de aplicaciones es un conjunto de definiciones y protocolos que se usa para diseñar e integrar el software de aplicaciones.Suele considerarse como el contrato entre un proveedor de información y un usuario, donde se establece el contenido que se requiere del consumidor (la llamada) y el que necesita el productor (la respuesta). Por ejemplo, una API de servicio meteorológico podría solicitar que el usuario escribiera un código postal y que el productor diera una respuesta en dos partes: la primera sería la temperatura máxima y la segunda, la mínima.  

En otras palabras, si desea interactuar con una computadora o un sistema para obtener datos o ejecutar una función, las API le permiten comunicar lo que desea al sistema, para que este comprenda la solicitud y la cumpla. 

Puede considerarla como el mediador entre los usuarios o clientes y los recursos que quieren obtener. También es una forma en que las empresas comparten recursos e información mientras conservan la seguridad y el control, y pueden definir los accesos de cada usuario. 

Otra ventaja de las API es que usted no necesita saber cómo se recibe el recurso o de dónde proviene.

REST

REST no es un protocolo ni un estándar, sino que se trata de un conjunto de principios de arquitectura. Los desarrolladores de las API pueden implementarlo de distintas maneras.

Cuando se envía una solicitud a través de una API de RESTful, esta transfiere una representación del estado del recurso requerido a quien lo haya solicitado. La información se entrega por medio de HTTP en uno de estos formatos: JSON (Javascript Object Notation), HTML, XLT o texto sin formato. JSON es el más popular, ya que tanto las máquinas como las personas lo pueden comprender y no depende de ningún lenguaje. 

Para que una API se considere de RESTful, debe cumplir los siguientes criterios:

  • Arquitectura cliente-servidor compuesta de clientes, servidores y recursos, con la gestión de solicitudes a través de HTTP.
  • Comunicación entre el cliente y el servidor sin estado, así que no se almacena la información del cliente entre las solicitudes; cada una es independiente y está desconectada del resto.
  • Datos que pueden almacenarse en caché y optimizan las interacciones entre el cliente y el servidor.
  • Una interfaz uniforme entre los elementos, para que la información se transfiera de forma estandarizada. Para ello deben cumplirse las siguientes condiciones:
    • Los recursos solicitados deben ser identificables e independientes de las representaciones enviadas al cliente.
    • El cliente debe poder manipular los recursos a través de la representación que recibe, ya que esta contiene suficiente información para permitirlo.
    • Los mensajes autodescriptivos que se envíen al cliente deben contener la información necesaria para describir cómo debe procesarla.
    • Debe contener hipermedios, lo cual significa que cuando el cliente acceda a cierto recurso, debe poder utilizar hipervínculos para buscar las demás acciones disponibles en ese momento.
  • Un sistema en capas que organiza en jerarquías invisibles para el cliente cada uno de los servidores (los encargados de la seguridad, del equilibrio de carga, etc.) que participan en la recuperación de la información solicitada.0
  • Código disponible según se solicite (opcional), es decir, la capacidad de enviar código ejecutable del servidor al cliente cuando se solicite, lo cual amplía las funciones del cliente. 

Si bien la API de REST debe cumplir todos estos parámetros, resulta más fácil de usar que un protocolo definido previamente, como SOAP (protocolo simple de acceso a objetos), el cual tiene requisitos específicos, como la mensajería XML y la seguridad y el cumplimiento de las operaciones integrados, que lo hacen más lento y pesado. 

Por el contrario, REST es un conjunto de pautas que pueden implementarse según sea necesario. Por esa razón, las API de REST son más rápidas y ligeras, y resultan ideales para el Internet de las Cosas (IoT) y el desarrollo de aplicaciones para dispositivos móviles

¿Por qué elegir Red Hat?

Red Hat® Integration es una solución centrada en las API que permite conectar las aplicaciones y transformar los datos, crear y organizar servicios, transmitir mensajes de forma instantánea, capturar datos modificados y gestionar las API, y todo en un solo lugar, para que las aplicaciones y los datos estén conectados en toda la infraestructura híbrida. Se combina con una cadena de herramientas y una plataforma nativas de la nube para respaldar el desarrollo de aplicaciones modernas. 

Red Hat 3scale API Management es un elemento de Red Hat Integration que le permite compartir, distribuir, controlar y rentabilizar sus API en una plataforma de infraestructura diseñada para mejorar el desempeño, el control, la seguridad y el crecimiento. Los elementos de 3scale pueden implementarse on-premise, en la nube o en ambas ubicaciones. 

Algunas herramientas de integración que puede utilizar

Red Hat Integration logo

Conjunto completo de tecnologías de integración y mensajería.

Red Hat 3scale API Management

Plataforma de gestión de API.

Rentabilizar los recursos con la gestión de las API