¿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 trabaja en una computadora en un escritorio de pie
¿Qué es una API?

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

Las definiciones y protocolos dentro 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 rompe los silos que dificultan la colaboración y la innovación. Para los desarrolladores, la documentación de API proporciona la interfaz para la comunicación entre aplicaciones, simplificando la integración de aplicaciones.

Cómo funciona una API

Una forma sencilla de entender cómo funcionan las API es ver 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 solicite "Pagar con PayPal" u otro tipo de sistema de terceros. 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, también conocida 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, encabezados y, a veces, un cuerpo de solicitud.
     

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

  • 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 de la computadora 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 desarrollo de nuevas aplicaciones y servicios, y la integración y gestión de los existentes. Pero ofrecen otros beneficios significativos a los desarrolladores y organizaciones en general.

Colaboración mejorada. La empresa media utiliza casi 1200 aplicaciones en la nube (enlace externo a 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. Gracias a 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, diversificadas para ofrecer préstamos y tarjetas corporativas, y recientemente se valoró en USD 36 mil millones (enlace externo a 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 otorga acceso a activos digitales valiosos, el negocio lo monetiza vendiendo acceso. Esto se conoce como la economía API. Cuando AccuWeather (enlace externo a ibm.com) lanzó su portal de desarrollo de autoservicio para vender una amplia gama de paquetes API, tardó solo 10 meses en atraer a 24 000 desarrolladores, vendiendo 11 000 claves API y construyendo una comunidad próspera 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 que se comunican. Por ejemplo, las llamadas de API suelen requerir credenciales de autenticación; los encabezados HTTP, cookies o cadenas de consulta pueden proporcionar seguridad adicional durante el intercambio de datos y un gateway de API pueden 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 las 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.

API en acción: ejemplos comunes

Dado que las API permiten a las empresas abrir el acceso a sus recursos manteniendo 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 los datos de inicio de sesión de su perfil de Facebook, Twitter o Google. Esta práctica función permite que cualquier sitio web aproveche una API de uno de los servicios más populares para una autenticación rápida, lo que les ahorra tiempo y molestia de configurar un nuevo perfil para cada aplicación web o nueva membresía.
     

  • Internet de las cosas (IoT): estos "dispositivos inteligentes" ofrecen funcionalidad adicional, 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 del refrigerador desde cualquier lugar.
     

  • Comparaciones 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 es 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 compañía de reservas de viajes. Con un intercambio autónomo de datos y solicitudes, las API reducen drásticamente el tiempo y el esfuerzo necesarios para comprobar si hay vuelos o alojamiento disponibles.
     

  • Aplicaciones de mapeo: 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.
     

  • Twitter: Cada Tweet contiene atributos principales descriptivos, como un autor, un ID único, un mensaje, una marca de tiempo cuando se publicó y metadatos de geolocalización. Twitter pone a disposición de los desarrolladores los atributos principales de los tuits públicos y las respuestas y les permite publicar tuits en otras páginas web a través de la API de la empresa.
     

  • Aplicaciones SaaS: Las API son una parte integral del crecimiento de los productos de software como servicio (SaaS). Las plataformas como los CRM (herramientas de gestión de las relaciones con los clientes) suelen incluir una serie de API incorporadas que permiten a las empresas integrarse con aplicaciones que ya utilizan, como aplicaciones de mensajería, redes sociales y 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

Hoy en día, 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 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 autoservicio a través de un portal para desarrolladores de API público. Aún así, deben completar un proceso de incorporación y obtener credenciales de inicio de sesión para acceder a las API de los socios.
     

  • Las API internas permanecen ocultas para los usuarios externos. Estas API privadas no están disponibles para usuarios fuera de la empresa y están destinadas a mejorar la productividad y la comunicación entre 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 realizar una sola tarea puede requerir información de varias fuentes.

Protocolos API

A medida que ha aumentado el uso de 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 que los endpoints envíen y reciban datos a través de SMTP y HTTP. Las API SOAP facilitan el intercambio de información entre aplicaciones o componentes de software que se ejecutan en diferentes entornos o se escriben en diferentes idiomas.
     

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

  • JSON-RPC: al igual que XML-RPC, JSON-RPC es una llamada de procedimiento remoto, pero se utiliza JSON (Notación de objeto JavaScript) en lugar de XML para transferir los datos.

  • REST (Transferencia de estado representativo): REST es un conjunto de principios de arquitectura de API web. Las API RESTtambién conocidas como API RESTful) son API que se adhieren a ciertas restricciones arquitectónicas REST. Es posible crear API RESTful con protocolos SOAP, pero los dos estándares suelen verse como especificaciones competidoras.

Tradicionalmente, la API se denomina 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 cumplen con los principios REST y el formato JSON. Por lo general, se construyen para HTTP, lo que resulta en interfaces amigables para desarrolladores que son fácilmente accesibles y ampliamente entendidas por aplicaciones escritas en Java, Ruby, Python y muchos otros lenguajes.

API vs. servicios web

Un servicio web es un componente de software al que se puede acceder y facilita las transferencias de datos a través de una dirección web. Debido a 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. Cuando algunas API son de código abierto, los servicios web suelen ser privados y solo los socios aprobados pueden acceder a ellos.

API, microservicios y desarrollo nativo de la nube

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

La arquitectura de microservicios se ha vuelto más frecuente 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 manejar las operaciones de negocio y de TI a escala para toda su organización.

Explora 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.

Explore 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

Conecte, automatice y desbloquee el potencial de negocio con soluciones de integración

Explore 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 administración y el escalamiento de aplicaciones en contenedores.

The Forrester Wave™: Soluciones de gestión de API, tercer trimestre de 2022

Descubra cómo la gestión de API es fundamental para impulsar el negocio digital y cómo IBM se compara con otros proveedores en el panorama de API Management en función de las ofertas actuales, la estrategia y los puntajes de presencia en el mercado.

Dé el siguiente paso

IBM® API Connect es una solución para administrar las API que utiliza una experiencia intuitiva para ayudar a crear, socializar y monetizar API de forma coherente, ayudando así a impulsar la transformación digital de forma local y en nubes. Esto significa que usted y sus clientes pueden impulsar aplicaciones digitales y estimular la innovación en tiempo real. IBM API Connect también está disponible con otras capacidades como parte de IBM Cloud Pak for Integration, que pueden ayudarlo a automatizar la modernización de aplicaciones y la administración de API como parte de su recorrido hacia la nube.

Explore IBM API connect®