¿Qué es una API?
Las API simplifican el desarrollo y la innovación de software al permitir que las aplicaciones intercambien datos y funcionalidades de manera fácil y segura
Conozca las soluciones de gestión de API de IBM
Persona trabajando en un ordenador de pie en un escritorio
¿Qué es una API?

Una API, o interfaz de programación de aplicaciones, es un conjunto de reglas definidas que permiten a las diferentes aplicaciones comunicarse entre sí. Actúa como una capa intermedia que procesa las transferencias de datos entre sistemas, permitiendo a las empresas abrir los datos y la funcionalidad de sus aplicaciones a desarrolladores externos, socios comerciales y departamentos internos dentro de sus empresas.

Las definiciones y protocolos de una API ayudan a las empresas a conectar las diferentes aplicaciones que utilizan en las operaciones diarias, lo que ahorra tiempo a los empleados y elimina los silos que dificultan la colaboración y la innovación. Para los desarrolladores, la documentación de la API proporciona la interfaz para la comunicación entre aplicaciones, lo que simplifica la integración de las aplicaciones.

Cómo funciona una API

Una forma sencilla de entender cómo funcionan las API es examinar un ejemplo común: el procesamiento de pagos de terceros. Cuando un usuario compra un producto en un sitio de comercio electrónico, es posible que se le pida que "pague con PayPal" u otro tipo de sistema externo. Esta función depende de las API para realizar la conexión.

  • Cuando el comprador hace clic en el botón de pago, una API llama para recuperar información, lo que también se conoce como 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, una cabecera y, a veces, un cuerpo de solicitud.
     

  • Tras recibir una solicitud válida desde la página web del producto, la API realiza una llamada al programa externo o al servidor web, en este caso, al sistema de pago externo.
     

  • El servidor envía una respuesta a la API con la información solicitada.
     

  • La API transfiere los datos a la aplicación solicitante inicial, aquí el sitio web del producto.

Si bien la transferencia de datos diferirá según el servicio web que se utilice, las solicitudes y respuestas se realizan a través de una API. No hay visibilidad en la interfaz de usuario, lo que significa que las API intercambian datos dentro del ordenador o la aplicación, y aparecen ante el usuario como una conexión sin fisuras.

Ventajas de la API

Las API simplifican el diseño y el desarrollo de nuevas aplicaciones y servicios, así como la integración y gestión de las existentes. Pero ofrecen otros beneficios significativos a los desarrolladores y organizaciones en general.

Colaboración mejorada. La empresa media utiliza casi 1,200 aplicaciones en la nube (el enlace reside fuera de ibm.com), muchas de las cuales están desconectadas. Las API permiten la integración, para que estas plataformas y aplicaciones puedan comunicarse entre sí sin problemas. Mediante esta integración, las empresas pueden automatizar los flujos de trabajo y mejorar la colaboración en el lugar de trabajo. Sin las API, muchas empresas carecerían de conectividad, lo que provocaría silos de información que comprometerían la productividad y el rendimiento.

Innovación acelerada. 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 empresa 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 ha sido valorada en 36 millones de dólares (el enlace reside fuera de ibm.com).

Monetización de datos. Muchas empresas optan por ofrecer API gratuitas, al menos al principio, para poder crear una audiencia de desarrolladores en torno a su marca y forjar relaciones con posibles socios comerciales. Si la API da acceso a activos digitales valiosos, la empresa lo monetiza vendiendo el acceso. Esto se conoce como economía de API. Cuando AccuWeather (el enlace reside fuera de ibm.com) lanzó su portal de desarrolladores de autoservicio para vender una amplia gama de paquetes de API, tardó solo 10 meses en atraer a 24,000 desarrolladores, vender 11,000 claves de API y crear una próspera comunidad en el proceso.

Seguridad del sistema. Las API separan la aplicación solicitante de la infraestructura del servicio que responde y ofrecen capas de seguridad entre las dos a medida que se comunican. Por ejemplo, las llamadas a la API suelen requerir credenciales de autenticación; los encabezados HTTP, las cookies o las cadenas de consulta pueden proporcionar seguridad adicional durante el intercambio de datos y una puerta de enlace API puede controlar el acceso para minimizar aún más las amenazas de seguridad.

Seguridad y privacidad del usuario final. Al igual que las API proporcionan protección adicional dentro de una red, también pueden proporcionar otra capa de protección para los usuarios personales. Cuando un sitio web solicita la ubicación de un usuario, que se proporciona a través de una API de ubicación, el usuario puede decidir si permitir o rechazar esta solicitud. Muchos navegadores web y sistemas operativos móviles, como iOS, tienen estructuras de permisos integradas cuando las API solicitan acceso a aplicaciones y sus datos. Cuando la aplicación debe acceder a los archivos a través de una API, los sistemas de archivos como Windows, Mac y Linux usan permisos para ese acceso.

Las API en acción: ejemplos habituales

Dado que las API permiten a las empresas abrir el acceso a sus recursos mientras mantienen la seguridad y el control, se han convertido en un aspecto valioso de las aplicaciones empresariales y personales modernas. Estos son algunos ejemplos populares de usos de API que los usuarios encuentran casi todos los días:

  • Inicios de sesión universales: Un ejemplo popular de API es la función que permite a las personas iniciar sesión en sitios web utilizando sus detalles de inicio de sesión de perfil de Facebook, Twitter o Google. Esta práctica función permite a cualquier sitio web aprovechar una API de uno de los servicios más populares para una autenticación rápida, ahorrándoles el tiempo y la molestia de configurar un nuevo perfil para cada aplicación web o suscripción nueva.
     

  • Internet de las cosas (IoT): estos "dispositivos inteligentes" ofrecen funciones adicionales, como pantallas táctiles habilitadas para Internet y recopilación de datos, a través de API. Por ejemplo, un refrigerador inteligente puede conectarse a aplicaciones de recetas o tomar y enviar notas a teléfonos móviles a través de mensajes de texto. Las cámaras internas se conectan a varias aplicaciones para que los usuarios puedan ver el contenido de la nevera desde cualquier lugar.
     

  • Comparadores de reservas de viajes: Los sitios de reserva de viajes agregan miles de vuelos, mostrando las opciones más baratas para cada fecha y destino. Este servicio se hace posible a través de API que proporcionan a los usuarios de aplicaciones acceso a la información más reciente sobre disponibilidad de hoteles y aerolíneas, ya sea a través de un navegador web o de la propia aplicación de la empresa de reservas de viajes. Con un intercambio autónomo de datos y solicitudes, las API reducen drásticamente el tiempo y el esfuerzo que supone buscar vuelos o alojamientos disponibles.
     

  • Aplicaciones cartográficas: Además de las API principales que muestran mapas estáticos o interactivos, estas aplicaciones usan otras API y características para proporcionar a los usuarios direcciones, límites de velocidad, puntos de interés, advertencias de tráfico y más. Los usuarios se comunican con una API al trazar rutas de viaje o rastrear elementos en movimiento, como un vehículo de reparto.
     

  • X (antigua Twitter): cada tuit contiene atributos principales descriptivos, como un autor, un identificador único, un mensaje, la fecha y hora en que se publicó y metadatos de geolocalización. X (Twitter) pone a disposición de los desarrolladores los atributos principales de los tweets públicos y las respuestas, y les permite publicar tweets en otras páginas web a través de la API de la empresa.
     

  • Aplicaciones SaaS: Las API son parte integrante del crecimiento de los productos de software como servicio (SaaS). Las plataformas como las CRM (herramientas de gestión de relaciones con los clientes) suelen incluir una serie de API integradas que permiten a las empresas integrarse con aplicaciones que ya utilizan, como mensajería, redes sociales y aplicaciones de correo electrónico. Esto reduce drásticamente el tiempo dedicado a cambiar entre aplicaciones para tareas de ventas y marketing. También ayuda a reducir o prevenir los silos de datos que pueden existir entre departamentos que utilizan diferentes aplicaciones.

Tipos de API

En la actualidad, la mayoría de las API son API web que exponen los datos y la funcionalidad de una aplicación a través de Internet. Estos son los cuatro tipos principales de API web:

  • Las API abiertas son interfaces de programación de aplicaciones de código abierto a las que se puede acceder con el protocolo HTTP. También conocidas como API públicas, han definido puntos finales de API y formatos de solicitud y respuesta.
     

  • Las API de socios conectan a socios comerciales estratégicos. Normalmente, los desarrolladores acceden a estas API en modo de autoservicio a través de un portal público para desarrolladores de API. Aún así, deben completar un proceso de incorporación y obtener credenciales de inicio de sesión para acceder a las API de socios.
     

  • Las API internas permanecen ocultas de los usuarios externos. Estas API privadas no están disponibles para usuarios ajenos a la empresa y, en su lugar, están diseñadas para mejorar la productividad y la comunicación en diferentes equipos de desarrollo interno.
     

  • Las API compuestas combinan múltiples API de datos o servicios. Permiten a los programadores acceder a varios puntos finales en una sola llamada. Las API compuestas son útiles en la arquitectura de microservicios, donde la realización de una única tarea puede requerir información de varias fuentes.

Protocolos API

A medida que ha aumentado el uso de las API web, se han desarrollado ciertos protocolos para proporcionar a los usuarios un conjunto de reglas definidas, o especificaciones de API, que crean tipos de datos, comandos y sintaxis aceptados. En efecto, estos protocolos de API facilitan el intercambio estandarizado de información.

  • SOAP (Protocolo simple de acceso a objetos): Creado con XML, SOAP permite a los endpoints enviar y recibir datos a través de SMTP y HTTP. Las API SOAP facilitan el uso compartido de información entre aplicaciones o componentes de software que se ejecutan en diferentes entornos o escritas en diferentes idiomas.
     

  • XML-RPC (llamada a procedimiento remoto XML): el protocolo XML-RPC se basa en un formato XML específico para transferir datos. XML-RPC es más antiguo que SOAP, pero mucho más simple y relativamente ligero, ya que utiliza un ancho de banda mínimo.
     

  • JSON-RPC: Como XML-RPC, JSON-RPC es una llamada a procedimiento remoto, pero se utiliza JSON (notación de objetos JavaScript) en lugar de XML para transferir los datos.

  • REST (Transferencia de estado representacional): REST es un conjunto de principios de arquitectura de API web. Las API de REST, también conocidas como API RESTful, son API que cumplen con ciertas restricciones de la arquitectura de REST. Es posible crear API RESTful con protocolos SOAP, pero los dos estándares suelen considerarse especificaciones competitivas.

Tradicionalmente, API hacía referencia a una interfaz conectada a una aplicación creada con cualquiera de los lenguajes de programación de bajo nivel, como Javascript. Sin embargo, las API modernas se adhieren a los principios REST y al formato JSON. Por lo general, están diseñadas para HTTP, lo que da como resultado interfaces amigables para los desarrolladores, a las que se puede acceder fácilmente y comprender ampliamente las aplicaciones escritas en Java, Ruby, Python y muchos otros lenguajes.

API versus servicios web

Un servicio web es un componente de software al que se puede acceder y que facilita la transferencia de datos a través de una dirección web. Dado que un servicio web expone los datos y la funcionalidad de una aplicación a otras aplicaciones, en efecto, cada servicio web es una API. Sin embargo, no todas las API son un servicio web.

Las API son cualquier componente de software que sirve como intermediario entre dos aplicaciones desconectadas. Si bien los servicios web también conectan aplicaciones, requieren una red para hacerlo. Mientras que algunas API son de código abierto, los servicios web suelen ser privados y sólo los socios autorizados pueden acceder a ellos.

API, microservicios y desarrollo nativo de la nube

Los microservicios son un estilo arquitectónico que divide una aplicación en componentes independientes más pequeños (también llamados microservicios), conectados mediante una API REST. Crear una aplicación como una colección de servicios separados permite a los desarrolladores trabajar en un componente de aplicación independiente y facilita el mantenimiento de las aplicaciones.

La arquitectura de microservicios se ha generalizado con el auge de la computación en la nube y, junto con los contenedores y Kubernetes, es fundamental para el desarrollo de aplicaciones nativas de la nube.

Soluciones relacionadas
IBM Cloud Automation

Elija la automatización inteligente para gestionar las operaciones empresariales y de TI a escala para toda su organización.

Explorar la automatización de la nube
IBM API Connect®

Gestione el ciclo de vida de su API en varias nubes, impulse la socialización y optimice los esfuerzos de monetización en todo su ecosistema empresarial.

Explorar IBM® API Connect
IBM® Cloud Pak for Integration

Utilice la automatización de IA de bucle cerrado para admitir múltiples estilos de integración.

Explore Cloud Pak for Integration
Soluciones de integración

Conectar, automatizar y desbloquear el potencial empresarial con soluciones de integración

Explorar las soluciones de integración
Recursos ¿Qué son los contenedores?

Los contenedores son ejecutables que empaquetan el código de la aplicación, junto con sus bibliotecas y dependencias, y se pueden ejecutar en TI tradicional o en cualquier nube.

¿Qué es Kubernetes?

Kubernetes es una plataforma de orquestación de contenedores de código abierto que automatiza la implementación, la gestión y el escalado de aplicaciones en contenedores.

The Forrester Wave™: API Management Solutions, Q3 2022

Descubra cómo la gestión de API es fundamental para impulsar el negocio digital y cómo puede compararse IBM con otros proveedores en el panorama de la gestión de API basándose en las puntuaciones de las ofertas actuales, la estrategia y la presencia en el mercado.

De el siguiente paso

IBM® API Connect es una solución de gestión de API segura e intuitiva que le ayuda a crear, gestionar, proteger, socializar y monetizar sus API de manera sistemática, lo cual contribuye a una transformación digital más rápida tanto localmente como en los clouds. De esta manera, usted y sus clientes podrán dinamizar las aplicaciones digitales e impulsar la innovación en tiempo real. IBM® API Connect también se incluye con otras prestaciones en IBM® Cloud Pak for Integration, que le ayudará a automatizar la modernización de aplicaciones y el API Management durante su transición a la nube.

Explorar IBM® API Connect