Mejores prácticas de estrategias de API

Representación 3D de islas en forma de bloque con diferentes tipos de suministro de energía conectados
Dan Nosowitz

Staff Writer, Automation & ITOps

IBM Think

Mejores prácticas de estrategias de API

Las interfaces de programación de aplicaciones (API) son invaluables para las organizaciones modernas, usadas para conectar e integrar aplicaciones, sistemas y bases de datos, orquestar flujos de trabajo, acelerar el desarrollo y distribución de nuevas aplicaciones y servicios, crear interfaces modernizadas para sistemas existentes y mucho más. La empresa promedio tiene más de 613 endpoints de API en producción.

Sin embargo, si las API se crean, despliegan o incorporan de manera ad hoc, las organizaciones corren el riesgo de desaprovechar el valor o, lo que es peor, dejar a la organización vulnerable a los riesgos de ciberseguridad. Una estrategia integral de API ayuda a garantizar que una organización aproveche al máximo sus API y que las API funcionen al servicio de iniciativas comerciales compartidas.

Las últimas noticias tecnológicas, respaldadas por los insights de expertos

Manténgase al día sobre las tendencias más importantes e intrigantes de la industria sobre IA, automatización, datos y más con el boletín Think. Consulte la Declaración de privacidad de IBM.

¡Gracias! Ya está suscrito.

Su suscripción se entregará en inglés. En cada boletín, encontrará un enlace para darse de baja. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

¿Qué es una estrategia de API?

Una estrategia de API es un plan de alto nivel que describe cómo una organización utilizará las API para alcanzar los objetivos comerciales. Establece pautas y políticas para el diseño, desarrollo y despliegue de API, gestión de API, seguridad y más. La estrategia de API ayuda a garantizar que las API de una organización no existan de forma aislada, sino que trabajen juntas al servicio de mayores necesidades y objetivos comerciales.

Una estrategia de API da cuenta de las necesidades técnicas, de seguridad y de cumplimiento de una organización, al tiempo que ayuda a promover un sistema sostenible, predecible y centralizado para implementar nuevas API en el futuro.

Desarrollo de aplicaciones

Entérese: desarrollo de aplicaciones empresariales en la nube

En este video, el Dr. Peter Haumer analiza cómo es el desarrollo de aplicaciones empresariales modernas en la nube híbrida y hace una demostración de diferentes componentes y prácticas, incluidos IBM Z Open Editor, IBM Wazi y Zowe.

¿Por qué es importante una estrategia de API?

En resumen, una estrategia de API ayuda a las organizaciones a diseñar y gestionar API más eficientes, valiosas y seguras. La funcionalidad de la API es tan extensa y variada y evoluciona tan rápido que los stakeholders necesitan contar con una estrategia concreta para mantener la cohesión, eficiencia y eficacia en los proyectos de API.

Debido a que hay muchos tipos de API (e incluso más formas en que se utilizan) y desempeñan un papel tan integral en las empresas modernas, las organizaciones deben tener una estrategia de API clara y completa para mantener el orden en su ecosistema digital, evitar el desperdicio de recursos y riesgos de seguridad y garantizar que sus API brinden el mayor valor comercial posible.

Una estrategia de API sólida puede proporcionar una mejor experiencia para los desarrolladores, mejorar la compatibilidad y la escalabilidad, ayudar a las organizaciones a monetizar sus API y más. La estrategia de API también es una parte importante para lograr objetivos holísticos, como la transformación digital.

Transformación digital

La transformación digital es una estrategia dirigida a incorporar tecnología digital en toda una organización. Es una renovación completa de procesos, productos, operaciones y la pila de tecnología para permitir una innovación continua, rápida y orientada al cliente. No se trata solo de reemplazar ciertos procesos o actualizar servicios; es una transformación del negocio que sitúa la tecnología en el centro de una organización.

Las API, y una estrategia de API bien formada, desempeñan un papel descomunal para impulsar esta transformación. Con la tecnología como eje central, las API se utilizan con frecuencia para conectar tecnologías en toda la empresa y conectar a los usuarios con las aplicaciones, los sistemas y los servicios empresariales.

Las API permiten a las organizaciones ofrecer más servicios a más usuarios (abriendo nuevas fuentes de ingresos), hacer que estos servicios sean más rápidos y mejorar la experiencia general del usuario, facilitar el intercambio de datos entre sistemas internos, bases de datos y aplicaciones, conectar recursos alojados en diferentes proveedores de la nube, modernizar la infraestructura de TI heredada y más. 

Experiencia superior para desarrolladores

Una estrategia sólida de API empresarial incluye documentación completa de API (lea más sobre cómo las organizaciones pueden descubrir API aquí) que explica claramente cómo se crean y utilizan las API de una organización. Un portal de desarrolladores puede ser una herramienta valiosa para que las API de front-end y back-end estén disponibles y organizadas y sean detectables para los desarrolladores. Sin una buena estrategia de API, los desarrolladores pueden tener dificultades para encontrar las herramientas que necesitan, lo que puede ralentizar la producción y la implementación y dar lugar a la redundancia de API y al desperdicio de recursos.

Compatibilidad

Las API deben monitorearse y actualizarse para mantenerse al día con el nuevo software y las actualizaciones de software. Una estrategia de API bien desarrollada generalmente incluye planes para el ciclo de vida completo de la API: ideación, diseño de API, pruebas, implementación, mantenimiento y, si es necesario, interrupción. Este proceso impulsa la coherencia en la compatibilidad de las API con las últimas versiones de software y reduce el riesgo de fallas relacionadas con la compatibilidad o comportamiento impredecible.

Integración heredada

La vertiginosa evolución de la tecnología hace que casi todas las organizaciones dependan de algún tipo de servicio, software o base de datos heredados. Actualizar estos recursos suele ser costoso y requiere mucho tiempo.

Mientras avanzan los esfuerzos de modernización, las organizaciones pueden usar API para modernizar la interfaz de estos sistemas y bases de datos. Esto permite a las organizaciones integrar recursos heredados y aprovechar los valiosos datos que contienen sin tener que esperar a que se actualice todo el sistema.

Por ejemplo, una enorme base de datos con registros de cuentas de clientes podría estar almacenada en una base de datos que ya no utiliza el resto de la empresa. En lugar de migrar minuciosamente todos esos datos a un nuevo sistema (o mientras esa migración está en curso), se puede utilizar una API para permitir que otras partes del sistema se comuniquen con la base de datos y soliciten información.

Modelos de negocio optimizados

Una estrategia de API garantiza que las API se diseñen, desplieguen y documenten de una manera que oriente a la empresa hacia los objetivos establecidos y se ajuste a una estrategia comercial más amplia. La estrategia de API ayuda a crear una hoja de ruta para el desarrollo de API y la distribución y un plan que produce modelos de negocio más cohesivos y un mayor valor de API.

Seguridad de API

Las API se utilizan a menudo como vector de ataque e introducen un riesgo de seguridad que debe abordarse. Una estrategia de API que detalle los estándares de seguridad de la organización y cómo una organización evitará el uso indebido de sus API puede reducir este riesgo. Para ello, se utilizan a menudo herramientas como API gateways y técnicas como la autenticación o la limitación de velocidad.

La limitación de velocidad se utiliza para reducir el riesgo de ataques de fuerza bruta o de denegación distribuida del servicio (DDoS). La limitación de velocidad bloquea o descarta las solicitudes que suponen un riesgo por su volumen y evita que los sistemas se vean saturados de solicitudes. También hay funciones automatizadas que pueden ser aún más precisas. Por ejemplo, las organizaciones pueden establecer límites de velocidad para ciertas direcciones IP con alta actividad de solicitudes que han sido marcadas como sospechosas. 

Las técnicas de autenticación también se incorporan a la estrategia de seguridad de API para garantizar que solo se cumplan las solicitudes seguras y aprobadas. OAuth, o autorización abierta, es un protocolo que utiliza un token de acceso que otorga a los usuarios acceso a datos o servicios previamente aprobados sin necesidad de iniciar sesión. Las claves API, que son una cadena única de caracteres que solo conocen el cliente y el servidor, son otra herramienta popular que las organizaciones utilizan para mantener las API seguras.

Las organizaciones pueden utilizar plataformas de pruebas automatizadas que comprueban continuamente la seguridad del sistema para complementar y mejorar las comprobaciones y pruebas manuales.

Microservicios

En una arquitectura de microservicios, las aplicaciones se componen de muchos componentes o servicios más pequeños poco acoplados y desplegables de forma independiente. Estos componentes a menudo se comunican a través de API.

Los microservicios permiten una mayor flexibilidad y versatilidad, pero también pueden agregar complicaciones, incluidos problemas de compatibilidad, problemas de latencia debido a mayores cantidades de conexiones de red y mayor registro de datos. En efecto, una arquitectura de microservicios aporta más libertad, pero también un aumento de la complejidad.

Una estrategia de API empresarial ayuda a establecer la coherencia y la capacidad de detección de las API que se necesitan para aplicaciones de microservicios rápidas y eficientes.

Estrategia API-first

Una estrategia API-first otorga una alta prioridad a las API como activos comerciales. En esta concepción, las API son las piedras angulares en torno a las cuales los desarrolladores escriben código, en lugar de las características que se agregan después de desarrollar el software. Es un enfoque popular en las estrategias digital-first porque enfatiza la integración y comunicación entre sistemas empresariales, bases de datos y aplicaciones.

Una estrategia basada en API proporciona varios beneficios:

  • Reduce el riesgo de redundancia de API

  • Promueve la reutilización de API

  • Permite localizar las API en una ubicación centralizada para facilitar su búsqueda y adopción

  • Hace que el ecosistema de API sea más eficiente

  • Reduce la cantidad de tiempo que los desarrolladores dedican a depurar el código

  • Permite una mayor escalabilidad

  • Facilita el mantenimiento y las actualizaciones de las API

  • Proporciona una ventaja competitiva en un mundo cada vez más dependiente de las API

  • Permite a los equipos de desarrollo trabajar en paralelo en varias API a la vez, colaborando en tiempo real.

Componentes clave de la estrategia de API

Las estrategias de API se ven bastante diferentes según los objetivos comerciales y las necesidades de cada organización individual. Sin embargo, existen algunos conceptos y componentes más amplios que contribuyen a crear estrategias de API sólidas, y muchas de estas estrategias se desarrollan según los siguientes pasos:

Definir objetivos

El desarrollo de la estrategia comienza con una pregunta simple: ¿qué intenta lograr la organización con sus API?

Estos objetivos deben encajar con otros objetivos establecidos por la organización, ya sea implementar una transformación digital, optimizar los flujos de trabajo para los desarrolladores, aumentar las métricas, como la base de usuarios, la experiencia del cliente o la monetización, aumentar la eficiencia operativa o, por supuesto, todo lo anterior.

Identificar casos de uso de API

Una catalogación exhaustiva de posibles casos de uso puede proporcionar orientación para una estrategia de API eficaz.

¿La organización quiere compartir datos fácilmente entre equipos internos? ¿Facilitar a los desarrolladores la creación y mejora rápida del software? ¿Conectar clientes o usuarios con datos y servicios? Las estrategias de API cambian en función de las necesidades precisas de una organización, por lo que tiene sentido comenzar con una pregunta simple: ¿cómo se utilizarán las API?

Desarrollar un marco de gobernanza

La gobernanza de API se refiere al conjunto integral de estándares, políticas y prácticas que dirigen la forma en que una organización desarrolla, despliega y emplea sus API.

Idealmente, una organización describe primero su gobernanza y luego diseña las API de acuerdo con esas reglas, y no al revés. Al redactar esta gobernanza, los equipos consideran factores como los objetivos de la organización, las tecnologías existentes y qué tecnologías podría incorporar la organización en el futuro.

Un marco de gobernanza también podría describir qué tipo de API se utilizan para diferentes casos de uso. Existen varios protocolos de API, estilos arquitectónicos y lenguajes diferentes, cada uno con fortalezas y debilidades. Estos incluyen1:

RPC

La llamada a procedimiento remoto (RPC) es un protocolo que permite que un programa solicite un servicio de otro programa en una computadora diferente utilizando esencialmente el mismo código que si estuviera solicitando un servicio localmente.

La RPC proporciona el paradigma de comunicaciones de alto nivel que se utiliza en el sistema operativo. Supone la existencia de un protocolo de transporte de bajo nivel, como el protocolo de control de transmisión/internet protocol (TCP/IP) o el protocolo de datagramas de usuario (UDP), para transportar los datos del mensaje entre los programas que se comunican.

La RPC implementa un sistema lógico de comunicaciones de cliente a servidor que está diseñado específicamente para el soporte de aplicaciones de red. 2

Los tipos de protocolos RPC incluyen XML-RPC, JSON-RPC y gRPC.

REST

La transferencia de estado representacional (REST) es un conjunto de principios de arquitectura de API web. Las API REST, también conocidas como API RESTful, son API que se adhieren a ciertas restricciones arquitectónicas de REST. Las API REST utilizan solicitudes HTTP como GET, PUT, HEAD y DELETE para interactuar con los recursos. REST pone los datos a disposición como recursos, con cada recurso representado por un URI único. Los clientes solicitan un recurso proporcionando su URI.

Las API de REST no tienen estado, es decir, no guardan los datos del cliente entre solicitudes. Es posible crear API de RESTful con protocolos SOAP, pero los profesionales suelen considerar ambas normas como especificaciones contrapuestas.

GraphQL

GraphQL es un lenguaje de consulta de código abierto y un tiempo de ejecución del lado del servidor que permite a los clientes orientar exactamente los recursos que necesitan. A diferencia de REST, que normalmente utiliza múltiples endpoints para obtener datos y realizar operaciones, las API de GraphQL utilizan un único endpoint para dar a los clientes una respuesta de datos precisa y completa en un solo viaje de ida y vuelta desde una sola solicitud, eliminando los problemas de obtención excesiva y deficiente.3

Sin embargo, GraphQL puede introducir más complejidad de la necesaria para aplicaciones simples.

SOAP

El protocolo simple de acceso a objetos (SOAP) es una especificación ligera de protocolo de mensajería basada en XML que permite a los endpoints enviar y recibir datos a través de una variedad de protocolos de comunicación, incluidos SMTP (protocolo simple de transferencia de correo) y HTTP (protocolo de transferencia de hipertexto). SOAP es independiente, lo que permite que las API de SOAP compartan información entre aplicaciones o componentes de software que se ejecutan en diferentes entornos o están escritos en diferentes lenguajes.

Elegir una plataforma de gestión de API

Las plataformas de gestión de API son herramientas que están diseñadas específicamente para controlar, distribuir y analizar las API y acceder a ellas, todo en una ubicación centralizada. Las plataformas de gestión de API permiten a las empresas compartir documentación y herramientas entre equipos, pueden fortalecer la seguridad de los datos, cumplir con los estándares de cumplimiento y gobernanza y respaldar las iniciativas de transformación digital.

Las plataformas de gestión de API a menudo incluyen un portal de desarrolladores, que actúa como una ventanilla única para que los desarrolladores exploren, accedan y compartan documentación. Esta solución puede evitar el problema de los múltiples repositorios, las bibliotecas obsoletas y las credenciales misteriosas en el desarrollo de API y software: es integral.

Las plataformas de API también incluyen valiosas herramientas analíticas. Esta plataforma centralizada se utiliza para monitorear el uso de API, el tiempo de respuesta y el rendimiento general, y ayudar a detectar vulnerabilidades de API.

Por último, el uso de plataformas de gestión de API permite la gestión completa del ciclo de vida de las API. El ciclo de vida de la API implica muchas etapas diferentes: creación, desarrollo, pruebas, publicación, mantenimiento, retiro. Una plataforma de API puede recopilar todas esas etapas en un solo lugar, lo que ayuda a proporcionar a las organizaciones visibilidad de entornos de API grandes y complejos.

Abordar la seguridad y el cumplimiento

Debido a que las API brindan acceso a datos y servicios, ya sea a clientes internos o de terceros, la seguridad debe ser una consideración importante en todas las etapas del desarrollo de la estrategia de API. La seguridad de API defectuosa puede provocar ciberataques, filtración de datos y otros accesos no autorizados. Una estrategia de API debe abordar cómo una organización se cerciorará de que las API sean seguras y cumplan con la normativa, detallando enfoques de autenticación, cifrado, validación, monitorización, actualizaciones regulares y más.

Monitoree, analice y actualice

Una estrategia completa de API incluye planes para lo que sucede después de que se crean las API: cómo se supervisarán, mantendrán, analizarán, probarán y actualizarán.

Es vital monitorear el uso de la API por varias razones, entre ellas:

  • Asegúrese de que las API funcionen correctamente y no tengan errores

  • Analice los patrones de tráfico para detectar comportamientos inusuales y potencialmente peligrosos

  • Confirme que todas las API estén actualizadas

  • Manténgase alerta ante posibles duplicaciones

  • Eliminar las API que están obsoletas o han sido reemplazadas

Una estrategia de API debe detallar cómo una organización promoverá la visibilidad en todo su entorno de API, cómo se incorporarán los insights de analytics y el feedback de los usuarios para mejorar el rendimiento de las API, cómo se implementarán y documentarán las actualizaciones y cómo, si es necesario, se retirarán las API.

Soluciones relacionadas
IBM API Connect

Desarrolle, gestione, proteja y socialice perfectamente todos sus tipos de interfaz de programación de aplicaciones (API), dondequiera que residan.

Explore API Connect
API management

Impulse nuevos modelos y canales de interacción acelerando su transformación digital basada en API.

Explore API Management
Desarrollo de API con IBM API Connect

Cree, estandarice y proteja las API nuevas y existentes con facilidad mediante IBM® API Connect.

Cree nuevas interfaces de programación de aplicaciones (API)
Dé el siguiente paso

IBM API Connect admite todos los tipos modernos de interfaz de programación de aplicaciones (API), al tiempo que refuerza la seguridad y la gobernanza. Las capacidades de IA generativa automatizan las tareas manuales, ahorran tiempo y ayudan a garantizar la calidad. 

Explore API Connect Explore el recorrido del producto