API unificada: cerrando la brecha entre las aplicaciones SaaS
Publicado: 2023-10-31Una interfaz de programación de aplicaciones (API) unificada es una API que sirve como una capa de abstracción que puede comunicarse con múltiples API subyacentes simultáneamente.
Como resultado, cada objeto y punto final de la API unificada se asigna a un objeto y punto final correspondiente en la API subyacente. Esto permite a las empresas de SaaS crear una integración única con la API unificada y enviar instantáneamente integraciones con cada una de las API subyacentes.
En este artículo, profundizaremos en las API unificadas, cómo funcionan, sus desafíos y características, y cómo benefician a las empresas SaaS.
¿Qué problema resuelven las API unificadas?
Los compradores de SaaS esperan integraciones nativas perfectas de las soluciones que compran. La interoperabilidad ya no es algo agradable sino un requisito. Sin embargo, crear estas integraciones nativas con sus otras herramientas es un desafío que todas las empresas de SaaS enfrentan hoy en día, ya que requiere importantes recursos de ingeniería para su envío y mantenimiento.
Para cada integración, los ingenieros deben crear una autenticación segura, revisar la documentación API de la aplicación de terceros, implementar la lógica empresarial necesaria para ofrecer el caso de uso y crear una experiencia de configuración intuitiva para el usuario final.
Y esto no tiene en cuenta todo el trabajo que implica mantener y actualizar la integración a medida que se agregan nuevas solicitudes de funciones, cuando la API de terceros publica cambios importantes y el tiempo que los desarrolladores dedican a ayudar a los clientes a depurar problemas de integración.
En el contexto de las integraciones SaaS , las API unificadas surgieron en los últimos años como una forma de abordar el desafío de comprender la documentación API de cada aplicación de terceros.
En esencia, esto debería evitar que los equipos de ingeniería tengan que aprender o revisar constantemente los matices, las formas y la nomenclatura de cada API individual, una vez para cada integración.
¿Cómo funcionan las API unificadas?
Veamos cómo funciona una API unificada con un ejemplo tangible.
Imagine que sus clientes solicitan que su producto se integre con su CRM: en su base de usuarios, algunos clientes usan Salesforce, otros usan HubSpot y algunos usan Dynamics o Pipedrive.
Una API de CRM unificada abstraería las API de cada uno de estos CRM manteniendo referencias a cada una de las API de los CRM subyacentes.
Fuente: Parangón
El ejemplo aquí muestra que cada CRM subyacente tiene un objeto que representa un "contacto".
HubSpot lo llama Contacto, Salesforce proporciona un objeto Cliente potencial y Contacto, y Pipedrive se refiere a los contactos como Prospectos. Cuando se realiza una llamada al objeto "Contacto" dentro de la API unificada, la API unificada hará referencia al objeto correspondiente en el servicio especificado.
Ahora, las referencias a nivel de objeto son la primera capa, pero dentro de esos objetos también hay propiedades o campos que se abstraen. En el ejemplo anterior, eso podría incluir una nomenclatura diferente para el nombre, identificación, empresa, etc.
Entonces, si su equipo está creando múltiples integraciones de CRM, en teoría, puede crear una única integración con una API de CRM unificada que le permita enviar todas las integraciones de CRM subyacentes simultáneamente.
API unificadas específicas de categoría
No todas las API se pueden unificar en una única API porque las diferentes aplicaciones SaaS tienen modelos de datos, estructuras y características únicos.
Por lo tanto, los proveedores suelen ofrecer múltiples API unificadas que son específicas de una determinada vertical de SaaS, como CRM, contabilidad o publicidad, ya que estas aplicaciones SaaS tendrán estructuras de datos relativamente similares y compartirán muchos objetos o propiedades comunes.
Al diseñar una API unificada, el proveedor de API debe elegir cuidadosamente qué API subyacentes incluir en la API unificada, ya que cuanto más se superpongan las API subyacentes, más amplia será la cobertura que puede proporcionar la API unificada.
Sin embargo, si la API unificada incluyera aplicaciones que no son tan similares entre sí, sería menos útil ya que no podría mostrar todos los objetos y propiedades que comparten las API subyacentes. Por ejemplo, una API unificada que incluya un CRM y una aplicación de contabilidad puede no ser muy útil porque, fuera del objeto "cliente", puede que no haya mucha superposición entre el resto de los modelos de datos de las aplicaciones.
¿Cuáles son los beneficios de las API unificadas?
Las API unificadas brindan múltiples beneficios a los equipos de ingeniería que necesitan enviar y mantener docenas de integraciones.
abstracciones de API
En lugar de aprender e interactuar con las API individuales de cada servicio, su equipo de ingeniería solo necesita aprender a interactuar con la API unificada una vez (por categoría).
Esto no solo hace que la creación de estas integraciones sea más fácil y rápida, sino que también ayuda a reducir la complejidad de las integraciones.
Además, cuando se trata de mantenimiento, el proveedor de API unificadas es responsable de manejar la comunicación con las API subyacentes, lo que significa que su equipo no necesita preocuparse por los cambios importantes que se realizan en una de las API subyacentes. En última instancia, el proveedor de API unificada será responsable de actualizar su abstracción para garantizar que la integración siga funcionando.
Autenticación administrada
Los proveedores de API unificadas generalmente ofrecen un servicio de autenticación administrada que abstrae las complejidades de la autenticación con las API subyacentes, ya sea mediante claves API u OAuth.
Cuando se integra con varias API directamente, debe administrar el proceso de autenticación para cada una, incluida la administración de las credenciales de usuario y garantizar políticas seguras de actualización de tokens.
Dado que hay muchos matices en la forma en que cada aplicación maneja la autenticación, esto puede ser una tarea engorrosa y propensa a errores, especialmente si trabaja con una gran cantidad de API.
Inicio sesión
Por naturaleza, la API unificada realiza solicitudes de proxy a sus API subyacentes. Como tal, recopilarán y analizarán datos sobre las solicitudes realizadas a las aplicaciones de terceros. Como resultado, cuando falla una solicitud, el proveedor de API unificada puede registrar este evento y proporcionar detalles sobre el mensaje de error que devolvió la API subyacente.
Esta funcionalidad de registro puede ser útil para su equipo, ya que les permite identificar rápidamente los problemas que pueden estar ocurriendo con sus integraciones. En lugar de revisar los registros de varias API de terceros, pueden confiar en el proveedor de API unificado para centralizar el registro y los informes de errores.
Con los errores de depuración, los proveedores de API unificadas a menudo pueden proporcionar mensajes de error más detallados que las propias API subyacentes. Esto se debe a que pueden analizar la respuesta al error y proporcionar más contexto sobre la causa raíz del problema, lo que puede reducir en gran medida la cantidad de tiempo dedicado al diagnóstico de errores y acelerar los tiempos de respuesta a incidentes .
Interfaz de usuario prediseñada
La mayoría de los proveedores de API unificadas proporcionan una interfaz prediseñadas para que sus clientes se autentiquen en una integración, lo que le evita tener que crear la experiencia de configuración usted mismo.
Esto libera a su equipo de diseñar la experiencia del usuario para cada integración, lo que puede aumentar en términos de ahorro de tiempo al considerar las docenas de integraciones potenciales que puede crear en la API unificada.
¿Cuáles son los desafíos con el uso de API unificadas?
Si bien las API unificadas brindan los beneficios compartidos anteriormente, se ven afectadas por algunas limitaciones estructurales de las que las empresas están comenzando a ser más conscientes.
Limitaciones de casos de uso
Dado que las API unificadas solo pueden abstraer los objetos y puntos finales "compartidos" entre las API subyacentes, solo se pueden crear características que sean relativamente simples y generalizables en todas las integraciones. Esta es, con diferencia, la mayor limitación de cualquier solución API unificada.
Además, cuantas más aplicaciones sean compatibles con una API unificada, más limitada será.
Fuente: Parangón
Veamos algunos ejemplos de estas limitaciones.
Características irreconciliables
Si necesita crear una característica de integración que implique funcionalidad o propiedades específicas de una de las integraciones, eso no será posible con una API unificada.
Por ejemplo, digamos que desea integrar varias herramientas de comentarios de los clientes a través de una "API de comentarios unificada". Si una herramienta aprovecha un modelo cuantitativo con puntuaciones de retroalimentación entre 1 y 10, mientras que otra solo recopila "negativos, neutrales, positivos" acompañados de "notas", no hay manera de que una API unificada pueda admitir esos casos de uso, ya que no se pueden conciliar. aquellos en una sola referencia.
Campos faltantes
Si la propiedad que necesita actualizar a través de la integración solo está disponible para un subconjunto específico de integraciones admitidas, esa propiedad no estará disponible dentro de la API unificada.
Por ejemplo, incluso si algunas de las aplicaciones subyacentes de terceros tienen el código postal como campo, mientras no lo tenga, no se podrá acceder al código postal como propiedad a través de la API unificada.
Objetos y campos personalizados
Por naturaleza, las API unificadas proporcionan un conjunto de referencias predefinidas para cada API subyacente. Sin embargo, si introduce objetos o campos personalizados en la combinación, el proveedor de API unificado no puede anticipar cuáles son esos objetos o campos. Por lo tanto, no pueden admitir integraciones que involucren objetos o campos personalizados.
Esto puede ser un gran obstáculo si sus clientes requieren que las integraciones que usted proporciona admitan el uso de objetos personalizados dentro de las aplicaciones de terceros.
Límites de tarifas
Cuando se integra con varias API a la vez a través de una API unificada, debe conocer los límites de velocidad de cada API y asegurarse de que su lógica de integración no exceda los límites de ninguna API.
Esto significa que la lógica que cree debe cumplir con los límites de velocidad de la API con el umbral más bajo para límites de velocidad. En pocas palabras, la API con el límite de tasa más bajo será el factor limitante para su integración. Si intenta realizar demasiadas solicitudes a los puntos finales de esa API, sus solicitudes comenzarán a fallar, incluso si las otras API en la API unificada pueden admitir técnicamente ese mismo volumen.
Para evitar errores de límite de tasa al realizar solicitudes masivas a puntos finales específicos para esas integraciones, debe utilizar procesamiento por lotes o limitación para controlar la tasa de solicitudes que envía a cada API.
Entonces, si bien aún es posible solucionar límites de velocidad más bajos, se encontrará generando complejidad adicional en su código base para adaptarse a las limitaciones de cualquiera de las integraciones subyacentes.
Seguridad
Las API unificadas generalmente requieren que usted autorice el acceso a todos los ámbitos de un servicio de terceros para poder utilizar su API, en lugar de permitirle seleccionar ámbitos individuales para cada integración.
Esto significa que cuando autenticas a un usuario para utilizar tu integración, el usuario se verá obligado a darte acceso a todos los datos asociados con ese servicio de terceros, no solo a los datos necesarios para la integración.
Por ejemplo, está creando una integración de CRM a través de una API unificada y el CRM tiene acceso a datos de ventas, marketing y atención al cliente. Cuando un usuario autentica su cuenta para usar su integración, se le dará acceso a los tres conjuntos de datos, incluso si lo único que su aplicación necesita son los datos de ventas.
Esto puede generar preocupaciones de seguridad para sus clientes. Para mitigar estas preocupaciones, es importante ser transparente con sus usuarios sobre a qué datos solicita acceso y explicar claramente por qué necesita esos datos.
Además, dado que el proveedor generalmente aloja API unificadas, usted confía en que el proveedor se asegure de que cuente con medidas de seguridad sólidas para proteger los datos de sus usuarios contra accesos no autorizados o infracciones.
Modelo de datos opinado
La forma en que el proveedor concilia diferentes API subyacentes y puntos finales de referencia está sujeta a su propia opinión. Si bien esto no es un problema para la mayoría de los casos de uso, habrá ocasiones en las que pueden presentar una abstracción con la que no esté de acuerdo o que no se ajuste al comportamiento esperado.
Restricciones de la hoja de ruta
En comparación con las plataformas de integración integradas , que proporcionan abstracciones individuales de cada API de terceros en muchas categorías, los proveedores de API unificadas están restringidos a las categorías para las que han creado API unificadas.
Si bien pueden crear y crearán nuevas API unificadas con el tiempo, si solicita una integración con una categoría que actualmente no es compatible, es probable que tenga que esperar años para que esa integración esté disponible.
La única excepción sería si el proveedor estuviera creando una API unificada para la categoría en la que encaja la integración solicitada. Aún así, dada la amplitud del ecosistema SaaS y las categorías potenciales que podrían admitir, este rara vez será así.
Soluciones alternativas: definitivamente existen muchas limitaciones que vienen con las API unificadas, lo que puede hacerle pensar dos veces sobre el verdadero valor de las API unificadas; Los proveedores que existen hoy en día están tratando de encontrar soluciones únicas para ofrecer soluciones alternativas.
Por ejemplo, ciertos proveedores crearon la capacidad de realizar solicitudes de "transferencia" a la API subyacente. Sin embargo, la implementación actual sigue siendo muy limitante y crea una experiencia de desarrollador deficiente.
¿Cuándo debería utilizar una API unificada?
Cuando se trata de decidir si una API unificada es la solución adecuada para su equipo, puede seguir criterios simples de toma de decisiones.
Criterios
Si todo lo siguiente es cierto, entonces vale la pena evaluarlo.
- Su hoja de ruta de integración se limita a las categorías admitidas por el proveedor de API unificado.
- Cada caso de uso de integración que necesite crear se puede generalizar en todas las aplicaciones de la categoría.
- Puede invertir recursos dedicados para construir una infraestructura que pueda manejar el volumen de solicitudes necesarias para respaldar a sus clientes a medida que escala.
- No necesita que su equipo de soporte tenga visibilidad de cómo se comporta la integración y dónde se produjo el error, y puede hacer que el equipo de ingeniería intervenga para depurar.
Si no puede decir sí con seguridad a los cuatro puntos anteriores, es posible que no desee limitarse a utilizar una API unificada.
En cambio, un La plataforma de integración integrada puede ser una mejor solución, ya que le permite crear integraciones mucho más profundas y, al mismo tiempo, proporciona herramientas más completas para ayudar a agilizar el proceso de desarrollo de la integración.
El desafío de la integración B2B SaaS
Decidir una solución que le ayude a escalar la hoja de ruta de integración nativa de su producto SaaS no es fácil. No solo debe asegurarse de que pueda abordar sus casos de uso actuales, sino también todos los casos de uso posibles que sus clientes puedan solicitar en el futuro.
Las API unificadas pueden ser una excelente solución para enviar docenas de integraciones con un mínimo esfuerzo, siempre que los casos de uso que sus clientes requieren sean uniformes en cada integración dentro de una categoría determinada.
Es un mercado en desarrollo con muchos actores nuevos y sin duda es un enfoque interesante para resolver el desafío de la integración B2B SaaS.
Aprenda todo sobre las API, sus beneficios, desafíos y casos de uso en la guía completa.