Skip to content

Prepárese para el retiro de la API heredada en el verano de 22 ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Este artículo es una actualización de Hacer que los retiros de versiones de la API no sean operativos a partir de agosto de 2021.

En Summer '22 (junio), Salesforce retirará las API antiguas SOAP, REST y Bulk que van desde las versiones 7.0 a 20.0. Como consecuencia, estas API heredadas y las integraciones personalizadas que dependen de ellas dejarán de funcionar después del lanzamiento.

En esta publicación, presentaremos el plan de Salesforce para el retiro de la API heredada. Proporcionaremos recursos, como un script de utilidad e instrucciones, para ayudarlo a identificar si se ve afectado o no. Obtendrá consejos sobre cómo actualizar las integraciones que usan API heredadas y orientación sobre cómo planificar para el futuro.

Plan para el retiro de la API heredada

Salesforce ha mantenido una de las posturas de compatibilidad con versiones anteriores más sólidas de la industria. Por ejemplo, la versión 7.0 de la API de SOAP de Salesforce se lanzó en 2006. ¿Qué estaba haciendo hace 15 años? ¡No podrías haber estado hablando en un iPhone, tocando en un iPad, escribiendo código en Python 3.0, ejecutando JavaScript en Node.js o llamando a un Uber, porque ninguna de esas tecnologías existía en ese entonces!

La compatibilidad con las API heredadas y el mantenimiento de la compatibilidad con versiones anteriores tiene un costo para los proveedores de API, y Salesforce no está exento de esto. Por lo tanto, hemos iniciado una hoja de ruta para el retiro de la API heredada. Esto nos ayuda a centrar nuestros esfuerzos de desarrollo en agregar mejoras con cada nueva versión de la API, para que podamos ofrecer innovación manteniendo la confianza. Dato curioso: en realidad retiramos un pequeño conjunto de antiguas API de SOAP en 2018.

Con cada versión principal, las API de la plataforma de Salesforce se actualizan automáticamente a una nueva versión y cuentan con el respaldo de una política documentada de tres años después de la puesta en marcha. En el lanzamiento de Summer '21, alcanzamos el primer hito de nuestro último esfuerzo de retiro de API heredado. A partir de esta versión, todas las llamadas API SOAP, REST y Bulk con versiones anteriores a la v21.0 siguen funcionando, pero se consideran obsoletas y ya no se admiten .

Nota: En el contexto de esta publicación, usamos el término "API REST" para designar todas las API con URI de punto final en /services/data/vXX.Y/ donde XX.Y es la versión de la API. Esto incluye la API REST de Lightning Platform "estándar" para trabajar con sObjects y registros, pero también los siguientes recursos:

Para el hito de Summer '22, observe los resultados de una solicitud REST a GET /services/data/v20.0 para comprender el conjunto de recursos de nivel superior que se verán afectados cuando se retiren los puntos finales v20.0.

Continuaremos implementando nuestro plan de retiro de API en versiones futuras. Estos son los próximos hitos clave (las fechas están sujetas a cambios):

  • En verano del 22:
    • Todas las API principales de SOAP, REST y Bulk con versiones que van desde v7.0 a v20.0 se retirarán formalmente y dejarán de funcionar;
    • El soporte finalizará para las API con versiones que van desde v21.0 a v30.0
    • Anunciaremos nuestro próximo conjunto de versiones establecidas para el retiro
  • En Summer '23, las API principales con versiones que van desde v21.0 a v30.0 se retirarán formalmente y dejarán de funcionar.

Ahora que sabe lo que hemos planeado, hablemos sobre cómo puede determinar si se ve afectado.

Identificar el uso de la API heredada

Para ver si está utilizando API heredadas, puede crear una lista de todas las integraciones que usa su empresa preguntando, pero eso sería largo y propenso a errores. Por ejemplo, tendría que identificar clientes antiguos instalados localmente en las máquinas de los usuarios, como versiones antiguas de Data Loader o integraciones heredadas como Salesforce Office Toolkit no compatible. Afortunadamente, existen herramientas que te ayudarán a escanear el consumo de API de forma automatizada.

Todas las transacciones de la API de Salesforce se registran en los registros de Monitoreo de eventos. El monitoreo de eventos normalmente requiere una licencia específica, pero hemos expuesto el evento Uso total de la API ( ApiTotalUsage ) a todos los clientes de forma gratuita, para que pueda monitorear el consumo de la API heredada e identificar los clientes y las integraciones que deben actualizarse.

Veamos cómo puede usar este evento para detectar llamadas de API heredadas en su organización. El proceso completo está documentado en un artículo de conocimientos , pero hemos creado una pequeña herramienta de utilidad de Apex que automatiza esta tarea.

Automatice los controles con una utilidad

Dirígete a este repositorio y sigue las instrucciones de configuración. El código Apex del proyecto escanea sus registros de eventos ApiTotalUsage e informa las llamadas a las API heredadas que se realizaron durante la ventana de retención de registros.

Las organizaciones habilitadas para API tienen acceso gratuito a los archivos de registro de eventos de uso total de API con retención de datos de un día. Por un costo adicional, puede acceder a este y todos los demás tipos de archivos de registro con una retención de datos de 30 días.

Si el escáner encuentra llamadas API heredadas en los registros de su organización, verá este tipo de salida:

Se encontraron versiones heredadas de la API en los registros: {SOAP v7, REST v20, BULK_AP v21}

Si ese es el caso, continúe con sus investigaciones manualmente (consulte la siguiente sección de esta publicación). De lo contrario, verá este mensaje:

No se encontró ninguna entrada de EventLogFile de tipo ApiTotalUsage.
Esto indica que no se llamó a ninguna API heredada durante la ventana de retención de registros.

Esto significa que aún podría haber algunas llamadas de API heredadas realizadas contra su organización, pero están fuera de la ventana de retención de registros, por lo que no podemos rastrearlas.

Realizar investigaciones manuales

Si necesita impulsar sus investigaciones más allá, este artículo de conocimiento describe el proceso bastante bien. En resumen, deberá ejecutar una consulta SOQL para recuperar los ID de los registros de eventos de ApiTotalUsage . Luego, para cada registro, tendrá que usar un cliente HTTP como Postman para llamar a la API REST con la ID del registro para recuperar el archivo de registro asociado en formato CSV.

Como referencia, un registro de eventos ApiTotalUsage se ve así:

El registro contiene campos clave que guiarán sus investigaciones:

El campo CLIENT_NAME es especialmente útil para identificar aplicaciones e integraciones que realizan llamadas API que requieren investigación y ajustes. Siempre es una buena práctica utilizar el encabezado de solicitud Sforce-Call-Options con un nombre de cliente al realizar llamadas a la API. Esto lo ayuda a identificar las llamadas de su cliente al mirar los registros y ahorra tiempo para el control de la integración.

USER_ID y CLIENT_IP son útiles para identificar el origen de las llamadas API heredadas, pero existe la posibilidad de que estos valores se compartan entre varias aplicaciones en caso de que se realice una cuenta técnica de usuario/sistema (ID de usuario compartido) o llamadas desde una ubicación de oficina física ( dirección IP compartida).

Finalmente, los API_FAMILY , API_VERSION , API_RESOURCE y HTTP_METHOD le brindan pistas valiosas sobre el tipo de operaciones que realiza el cliente API.

Actualice las integraciones utilizando API heredadas

El procedimiento de actualización dependerá del tipo de API que esté utilizando, pero aquí hay una breve descripción general de lo que se requiere:

  • Para llamadas API basadas en SOAP, genere un nuevo WSDL e incorpórelo a la integración afectada
  • Para puntos finales REST, actualice el número de versión en el URI a la versión principal actual
  • Aunque puede actualizar de manera similar los URI para puntos finales /async en el caso de Bulk API, la forma más gratificante de actualizar las llamadas heredadas es adoptar Bulk API 2.0 y disfrutar del flujo de trabajo más simple y los límites mejorados.

Tenga en cuenta que las aplicaciones pueden estar realizando llamadas API heredadas utilizando bibliotecas o complementos obsoletos, como la antigua interfaz COM de SForceOfficeToolkit . Estas bibliotecas actúan como intermediarios entre las aplicaciones cliente y la API, manejando ciertas tareas implícitamente para que las integraciones sean más simples de codificar. El resultado de aprovechar dicha ayuda es que las definiciones de punto final que incluyen la versión en el URI se pueden enmascarar. Por lo tanto, asegúrese de profundizar en el código fuente si una aplicación afectada está utilizando dicha interfaz. Esta diligencia debida es especialmente necesaria cuando no escribió el código de la aplicación que usted o sus equipos poseen.

Sus usuarios pueden estar utilizando aplicaciones de escritorio, como Cargador de datos o Conectores para productos de Microsoft Office, para interactuar con Salesforce. Estas aplicaciones llaman a las API de la plataforma para realizar acciones. Y al igual que las API, Data Loader se versiona con cada versión principal. Por lo tanto, si usted o sus partes interesadas están usando versiones antiguas de Data Loader, puede apostar que están llamando a versiones antiguas de las API.

Con todo esto en mente, asegúrese de trabajar con sus administradores para actualizar a los paquetes más recientes para las soluciones de AppExchange instaladas en sus organizaciones. La comunidad de ISV ha recibido alertas de socios sobre estos programas de jubilación y está tomando medidas para ajustar sus aplicaciones según sea necesario.

Y recuerda: no importa el cambio, asegúrate de realizar pruebas de regresión para asegurarte de que todo funciona como se esperaba.

Plan para el futuro

Nuestra política documentada para el soporte de versiones de API es de tres años. Publicaremos retiros de versiones en futuros lanzamientos de verano con regularidad. Acostúmbrese a realizar pruebas de regresión en sus integraciones con cada versión principal tal cual con la versión actual de la API y con una actualización a la última versión. ¡Esto es parte de las mejores prácticas de CI/CD y asegurará que los retiros de versiones futuras no sean operativos!

En Summer '21, introdujimos un encabezado de advertencia en respuesta a las solicitudes de API REST que se realizan en versiones obsoletas de API. Verificar este encabezado lo ayuda a identificar automáticamente las llamadas API heredadas y lo alertará sobre otros posibles problemas con las solicitudes REST en el futuro.

Para obtener más información, consulte el artículo de conocimiento Retiro de las versiones 7.0 a 20.0 de la API de la plataforma Salesforce y el aviso de actualización de la versión "Retiro de las versiones 7.0 a la 20.0 de la API de la plataforma Salesforce" (desde Configuración, en el cuadro Búsqueda rápida, ingrese "Actualizaciones de versión"). Para obtener más información sobre el evento ApiTotalUsage para EventLogFile , consulte las notas de la versión de Summer '21 .

Por último, pero no menos importante, hable con sus ejecutivos de cuentas y equipos de éxito del cliente sobre estos retiros de versiones y cómo hacer un mejor uso de las últimas y mejores versiones de API que se envían en cada versión importante. Cada versión trae nuevos sObjects para acceder, campos adicionales en sObjects existentes y otras mejoras, incluido el rendimiento y la seguridad.

Sobre los autores

Kris Harrison es Director de Gestión de Producto en Salesforce dentro del área de Servicios de Plataforma. Sus equipos de productos se centran en muchos aspectos de la experiencia de la API de Salesforce, incluidas las API principales de SOAP, Bulk y REST, API SDLC e integraciones de API a través de servicios externos. Sígalo en Twitter @GETkharrison o consulte sus proyectos muy básicos de GitHub @krissirk .

Philippe Ozil es un defensor principal de desarrolladores en Salesforce, donde se enfoca en la plataforma de Salesforce. Escribe contenido técnico y habla con frecuencia en conferencias. Es un desarrollador de pila completa y disfruta trabajar en proyectos DevOps, robótica y realidad virtual. Sígalo en Twitter @PhilippeOzil o consulte sus proyectos de GitHub @pozil .

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2022/03/prepare-for-legacy-api-retirement-in-summer-22.html

Últimas novedades 
de EGA Futura

EGA Futura incorpora toneladas de vídeo-tutoriales

La gestión visual de la información se hace cada vez más fácil en EGA Futura

La Plataforma EGA Futura crece en transparencia con su servicio de monitoreo de productos

EGA Futura le permite trabajar a sus Clientes de manera Remota en la Era Post-Digital

1954
Desde hace más de 25 años potenciamos a las Empresas de Iberoamérica

🎬 Video de Juan Manuel Garrido » Claves para tu Productividad diaria 🙌✅

🎬 Video de EGA Futura » Facturación Electrónica en Uruguay » Conceptos básicos con EGA Futura Windows

🎬 Video de EGA Futura » Facturación Electrónica en Uruguay » Configuración de EGA Futura Windows

🎬 Video de EGA Futura » Facturación Electrónica en Uruguay » Funcionamiento con EGA Futura Windows

🎬 Video de EGA Futura » Configuración de la Plataforma EGA Futura

🎬 Video de EGA Futura » Configuración de usuario en EGA Futura

🎬 Video de EGA Futura » Como automatizar la publicación en Redes Sociales?

🎬 Video de Juan Manuel Garrido » Cómo restaurar la configuración de fábrica de EGA Futura Windows sin perder la información

🎬 Video de Juan Manuel Garrido » Factura electrónica: Prueba de Factura Electronica previa a la activacion

🎬 Video de EGA Futura » Como se registran los Beneficios de cada Empleado en la base de datos de EGA Futura

🎬 Video de EGA Futura » EGA Futura Time Clock » Reloj de Control horario y asistencia

🎬 Video de EGA Futura » Como registrar Observaciones en un Empleado dentro de EGA Futura People?

🎬 Video de EGA Futura » Cómo registrar la Educación de cada Empleado en EGA Futura People?

🎬 Video de EGA Futura » Como hacer la Desvinculación de un Empleado? (Offboarding)

🎬 Video de EGA Futura » Como registrar Habilidades o Skills de empleados dentro de EGA Futura

🎬 Video de EGA Futura » Como hacer el Onboarding o Proceso de Incorporación de un Empleado?

🎬 Video de EGA Futura » Cómo administrar Turno de trabajo dentro de EGA Futura

🎬 Video de EGA Futura » Que es un Ticket interno dentro de la Plataforma EGA Futura

🎬 Video de EGA Futura » Que son los Entrenamientos de Empleado en EGA Futura people?

🎬 Video de EGA Futura » Qué son los Epics dentro de EGA Futura

🎬 Video de EGA Futura » Qué es EGA Futura People?

🎬 Video de EGA Futura » EGA Futura People » Asistencias

🎬 Video de EGA Futura » Soporte EGA Futura » Software de Gestión Windows vs Software de Gestión Nube 🤩

🎬 Video de EGA Futura » ツ Comparando un Objeto con un Fichero

🎬 Video de EGA Futura » ✍( ͡* ͜ʖ ͡*) ¿Qué es una Aplicación?

Prepárese para el retiro de la API heredada en el verano de 22 ☁️
Prepárese para el retiro de la API heredada en el verano de 22 ☁️