jueves, 10 de febrero de 2022

¿Qué es una API? Breve descripción para dummies



Una API (interfaz de programa de aplicación) es un software intermediario que permite que dos aplicaciones no relacionadas se comuniquen entre sí. Pero: ¿Cómo funciona? ¿Qué beneficios genera? ¿Por qué todo el mundo habla de ello? Cómo se articula?


Las APIs actúan como un puente: reciben solicitudes de un programa y luego las envía a otro, traduce los mensajes y ejecuta protocolos en función de cómo ha sido programada. Aunque no seamos conscientes, las API articulan casi todos los aspectos de nuestra vida digital: son la columna vertebral oculta de nuestro mundo digital conectado. Conectan todo y hacen que los sistemas de software funcionen en armonía.




Las API, siendo invisibles para el ciudadano de a pie, son una herramienta de impacto para los programadores. ¿Cómo funcionan? Abriendo una pequeña parte de la funcionalidad y los datos del software de un sistema de forma controlada. Esto permite a los desarrolladores acceder a ese programa, pieza de hardware, datos o aplicación sin necesidad de acceder al código de todo el sistema.

Hay dos tipos de API: privadas y públicas. 
  • Las API públicas funcionan con aplicaciones orientadas al consumidor y brindan a las empresas oportunidades para conectarse con sus clientes mediante una variedad de aplicaciones, dispositivos móviles y navegadores. 
  • Las API privadas funcionan en el back-end, agilizando las operaciones y creando herramientas para que los clientes, el personal y otras partes interesadas puedan recibir un mejor servicio.

¿Cuándo se usa una API en los negocios?


Las API se pueden usar en cualquier punto de un escenario de desarrollo de un software, por ejemplo:
  • cuando dos sistemas diferentes necesitan comunicarse entre sí, para lo cual se necesitan ciertos permisos
  • cuando es necesario unir una pieza de software externa a un sistema existente

Casos de Uso


1. Empresa con página web que desea estar localizada en Google Maps

Un caso de uso típico es el clásico sitio web de una empresa que utiliza una API para vincular un mapa de Google incrustado en la página "Acerca de nosotros" y el propio Google Maps.
  • ¿Por qué lo hace? La empresa incorpora Google Maps en su sitio web para ayudar a los lectores a encontrar las sucursales más cercanas. 
  • ¿Cómo lo hace? La empresa se conectará y consumirá las API públicas de Google. La API en el sitio de la empresa esencialmente está llamando a la API en Google Maps, de manera que esta segunda le brinda la información y la funcionalidad. 
  • ¿Cómo se benefician las partes?  Esto es, por supuesto, bueno para ambos lados de la interacción: el sitio web de la empresa mejoró su funcionalidad, mientras que Google Maps puede monetizar este tipo de intercambio de datos a través de una tarifa o marcar el mapa para mejorar sus esfuerzos de marketing.

2. Empresas de servicios que esperan recibir réditos de marketing

Cualquier negocio transaccional o basado en servicios puede utilizar su API para obtener beneficios de marketing desde múltiples interfaces. También hay una variedad de aplicaciones de uso común a las que puede conectarse a través de API, como Uber, Yelp, Google Maps y Dropbox: la lista de aplicaciones y programas accesibles a través de API es interminable

Otro ejemplo común son las API que permiten a los clientes iniciar sesión en un sitio web a través de su inicio de sesión de Facebook o Google. Además, cada vez que 'compartes' un artículo en línea, harás clic en un ícono que te permite compartir un enlace a través de ese medio, como Twitter, Gmail o Facebook. Todos estos servicios están habilitados por API.

3. La Casa Blanca

Un ejemplo macro es el de la Casa Blanca, que ha lanzado miles de API que brindan al público acceso a información sobre el gobierno, desde finanzas hasta atención médica y agricultura. El público puede encontrar centros de votación, información sobre seguridad alimentaria u otra información beneficiosa, lo que le permite ahorrar un tiempo valioso.

Estructuras de API posibles


Son básicamente tres:
  • Privadas: las API solo se pueden usar internamente, de manera que las empresas tienen un mayor control sobre ellas.
  • Públicas: todos tienen acceso a las API, así que otras empresas pueden desarrollar API que interactúen con las nuestras y así convertirse en una fuente de innovaciones. Esto permite que terceros desarrollen aplicaciones que interactúan con nuestra API: ¡podemos ser un recurso para innovar!.
  • De partners: las API se comparten con partners empresariales específicos, lo cual puede ofrecer flujos de ingresos adicionales, sin comprometer la calidad.


¿Por qué usar una API?


Las API permiten a una organización extender su propio software y datos a aplicaciones y datos que no son de su propiedad. Esto permite una variedad de beneficios, como una mayor funcionalidad, ahorro de costos, innovación tecnológica y operaciones optimizadas:
  • Mayor funcionalidad para los clientes: las empresas pueden ofrecer a los clientes una experiencia de cliente mejorada porque tienen acceso a conjuntos de datos y funciones completamente nuevos. Por ejemplo, cuando incrusta un mapa de Google en su sitio web, evita que el usuario tenga que hacer clic en otro sitio web o aplicación, lo que le ahorra tiempo y aumenta la probabilidad de que sea un cliente habitual.
  • Ahorrar dinero: en lugar de contratar desarrolladores costosos para crear software personalizado, las empresas pueden tener integraciones perfectas entre aplicaciones y programas usando API. Las empresas pueden aprovechar el software existente, en lugar de desarrollar el suyo propio, ahorrando dinero en I+D.
  • Ahorrar tiempo: no hay demoras en el desarrollo de software, ya que la API generalmente ya está escrita y solo necesita integración con cada extremo.
  • Comunicar mejor: a medida que se agrega nuevo software a una empresa, las API integran todo para que el flujo de información sea fluido.
  • Enlazar sin problemas: casi cualquier dispositivo o aplicación inteligente ahora está conectado a Internet. Desde refrigeradores hasta impresoras, la tecnología moderna es ahora una red de artículos. Las API permiten que estos dispositivos inteligentes se conecten para facilitar la impresión o incluso pedir un café desde su escritorio.
  • Ampliar el alcance de la comercialización: Las API de Facebook, Twitter, Instagram, Pinterest y otras plataformas de redes sociales permiten compartir fácilmente blogs, información u ofertas con solo hacer clic en un botón.
  • Fomentar la innovación: con la seguridad y la funcionalidad que brindan las API los desarrolladores solo están limitados por su imaginación.
  • Optimizar las operaciones: por ejemplo, si una empresa está desarrollando una aplicación de viajes, una API le permite a un cliente ir desde el avión, a un viaje compartido, al hotel, sin tener que abandonar la interfaz o iniciar sesión en otro lugar. Con las API, las empresas pueden vincular los componentes de reserva, pago y cumplimiento.
  • Innovar más rápido: innovación más rápida con menos barreras para el cambio. Las API listas para usar significan menos tiempo de desarrollador y resultados más rápidos. Los desarrolladores pueden adaptarse a un nuevo software o programa de forma rápida y sencilla.

Muchas API son gratuitas y las empresas o los desarrolladores regalan el software sin costo alguno. Esto generalmente se debe a que el uso de su programa amplía el alcance del software y su impulso en un mercado, creando más usuarios para ellos.


Conclusiones


Las APIs:
  • Son una herramienta vital para todas las organizaciones que utilizan cualquier combinación de software moderno.
  • Han de utilizar una serie de rutinas, herramientas y protocolos para especificar cómo deben actuar juntos los diferentes componentes de software. 
  • Permiten ofrecer acceso a los recursos y, al mismo tiempo, mantener la seguridad y el control: tú decides cómo habilitas el acceso y a quiénes se lo otorgas.
  • La seguridad de las API depende de su buena gestión, lo cual incluye el uso de una puerta de enlace de API. Para conectarse a las API y crear aplicaciones que utilicen los datos o las funciones que ofrecen, se puede utilizar una plataforma de integración distribuida que conecte todos los elementos, como los sistemas heredados y el Internet de las cosas (IoT).

En un sentido más amplio, las API han permitido que algunas empresas crezcan y se expandan. En lugar de que una empresa desarrolle su propio software para pago, comunicación, integración de datos o cualquier otra acción, su API permite que el software externo de terceros funcione perfectamente dentro de sus sistemas internos.

Referencias

  • Video para principiantes: https://www.freecodecamp.org/news/apis-for-beginners-full-course/