Empiece a realizar un seguimiento de su progreso
Inicio de Trailhead
Inicio de Trailhead

Conocer las API de la Plataforma Lightning de Salesforce

Objetivos de aprendizaje

Después de completar esta unidad, podrá:
  • Describir las ventajas del método según el cual la API es prioritaria para el desarrollo.
  • Indicar casos de uso de la API de REST, la API de SOAP, la API masiva y la API de transmisión.
  • Especificar los dos tipos de límites de las API y describir cómo se calculan.

Prioridad de la API en Salesforce

¡Barco a la vista! ¿Está preparado para surcar los mares en busca de la API de Salesforce perfecta para la integración que va a desarrollar? Excelente, capitán, no se olvide del parche y el loro. A continuación, va a navegar por las aguas de Plataforma Lightning para conocer en detalle nuestras API (interfaces de programación de aplicaciones).

El panorama de las API de Salesforce es tan amplio como el azul del océano. Esto se debe a que Salesforce adopta un enfoque que da prioridad a las API a la hora de crear funciones en la plataforma de Salesforce. La estrategia de la API como herramienta prioritaria requiere el uso de una API de gran capacidad para las funciones antes de concentrarnos en el diseño de la interfaz de usuario. Este método le proporciona, como desarrollador de Salesforce, la flexibilidad necesaria para manipular los datos del modo que desee.

En Salesforce, sabemos que los clientes y socios siempre están pensando en nuevas formas de ampliar la funcionalidad de Salesforce y crear aplicaciones sumamente interesantes para AppExchange. Proporcionar un amplio conjunto de herramientas para el desarrollo en la plataforma es la máxima prioridad. Esta estrategia permite el uso de Salesforce para crear interfaces de usuario en función de las API, lo que garantiza el mismo comportamiento de estas herramientas.

Considere este módulo como un recurso idóneo para comprender la importancia de las API. Juntos, revisaremos alguna información general sobre las API, examinaremos el conjunto de API de Salesforce y profundizaremos en el funcionamiento de varias API de uso frecuente. Toda esta información le proporcionará los conocimientos necesarios para elegir la API adecuada para su proyecto.

API de datos de Salesforce

En el océano de las API de Salesforce, hay un archipiélago clave de las API que se utilizan con mayor frecuencia en las que nos concentraremos en este módulo. Estas son la API de REST, la API de SOAP, la API masiva y la API de transmisión. En su conjunto, son las API de datos de Salesforce. Su finalidad es permitirle manipular sus datos de Salesforce, mientras que otras API le permiten realizar acciones, como personalizar formatos de página o crear herramientas de desarrollo personalizadas. Además, puede usar otras API de Salesforce para manipular subconjuntos de sus datos de Salesforce. Por ejemplo, la API de REST de Analytics se centra en Analytics. No obstante, estas cuatro API se pueden usar para la amplia variedad de datos relevantes de Salesforce.
API de datos de Salesforce

API de REST

La API de REST es un servicio web sencillo y eficiente basado en los principios de RESTful. Expone todos los tipos de funcionalidad de Salesforce mediante recursos de REST y métodos HTTP. Por ejemplo, puede crear, leer, actualizar y eliminar (CRUD) registros, buscar o consultar sus datos, recuperar metadatos de objeto y acceder a la información sobre los límites de su organización. La API de REST es compatible con XML y JSON.

Dado que la API de REST incluye un marco ligero de solicitud y respuesta, y es fácil de usar, es una herramienta excelente para el desarrollo de aplicaciones web y móviles.

API de SOAP

La API de SOAP es un servicio web eficiente y de gran capacidad basado en el protocolo estándar de la industria con el mismo nombre. Usa un archivo WSDL (lenguaje de descripción de servicios web) para definir de forma estricta los parámetros para el acceso a los datos mediante la API. La API de SOAP solamente es compatible con XML. La mayor parte de la funcionalidad de la API de SOAP también está disponible en la API de REST. La elección depende solo del estándar que mejor se adapte a sus necesidades.

Dado que la API de SOAP usa el archivo WSDL como un contrato formal entre la API y el consumidor, es una herramienta excelente para desarrollar integraciones de servidor a servidor.

API masiva

La API masiva es una API de RESTful especializada para la carga y consulta de grandes cantidades de datos a la vez. Cuando hablamos de grandes cantidades, nos referimos a 50.000 registros o más. La API masiva es asíncrona, lo que significa que puede enviar una solicitud y consultar los resultados posteriormente. Este método es el preferido cuando se trabaja con grandes volúmenes de datos. Existen dos versiones de la API masiva (1.0 y 2.0). Ambas versiones controlan grandes cantidades de datos, pero utilizamos la API masiva 2.0 en este módulo porque es un poco más sencilla de utilizar.

La API masiva es una herramienta de gran utilidad para realizar tareas que requieren la manipulación de grandes cantidades de datos, como la carga de datos en su organización por primera vez.

API de transmisión

La API de transmisión es una API especializada para configurar las notificaciones que se desencadenan cuando se realizan cambios en los datos. Se usa un modelo de publicación y suscripción mediante el que los usuarios se pueden suscribir a canales que transmiten determinados tipos de cambios de datos.

Este modelo de publicación/suscripción reduce el número de solicitudes de la API, ya que elimina la necesidad de realizar un sondeo. La API de transmisión es muy útil para el desarrollo de aplicaciones que de otro modo requerirían el sondeo frecuente de los cambios.

Acceso y autenticación de las API

No es necesario ningún mapa del tesoro para acceder a las API de Salesforce. Lo único que necesita es un Trailhead Playground con una de las siguientes ediciones: Enterprise Edition, Unlimited Edition, Developer Edition, Performance Edition o Professional Edition (con un complemento). Una vez que confirme que tiene el permiso “API activada”, estará preparado para iniciar la integración.

Todas las llamadas de API, excepto la llamada login() de la API de SOAP, requieren autenticación. Puede usar uno de los flujos OAuth admitidos, o autenticarse con un Id. de sesión recuperado mediante la llamada login() de la API SOAP. Consulte la guía del desarrollador de la API que haya elegido para empezar.

Límites de las API

Todo capitán digno de serlo sabe cuándo poner límites a la tripulación por el bien del navío. Si el capitán permite que los marineros se pasen todo el día bebiendo ron, es imposible el buen rumbo del barco. De un modo similar, Salesforce limita el número de llamadas de API por organización para garantizar el mantenimiento correcto de la instancia. Estos límites existen con el fin de impedir que secuencias de comandos no autorizadas lleven nuestros servidores a la deriva. Dichos límites no interfieren en el modo en el que realiza su trabajo diario. No obstante, es una buena idea familiarizarse con estos límites.

Hay dos tipos de límites para las API. Los límites simultáneos limitan el número de llamadas de larga duración (20 segundos o más) que se ejecutan al mismo tiempo. Los límites totales limitan el número de llamadas realizadas en el transcurso de un periodo de 24 horas.

Los límites simultáneos varían según el tipo de organización. En el caso de un Trailhead Playground, el límite es de cinco llamadas de larga duración al mismo tiempo. Si se trata de una organización de sandbox, el límite es de 25 llamadas de larga duración.

Los límites totales varían según la edición de la organización, el tipo de licencia y los paquetes de expansión que adquiera. Por ejemplo, una organización de Enterprise Edition obtiene 1.000 llamadas por cada licencia de Salesforce y 200 llamadas por cada licencia de Comunidad de socios. Con un paquete “Llamadas de API adicionales”, dicha organización de Enterprise Edition obtiene 4.000 llamadas adicionales. Además, los límites totales están sujetos a valores mínimos y máximos según la edición de la organización, pero no vamos a detenernos en esto aquí. Si desea obtener más información, siga el vínculo Referencia rápida de límites y asignaciones de desarrolladores de Salesforce en la sección Recursos.

Puede comprobar de varias formas sus llamadas de API restantes.
  • El cuadro Uso de API en la página Descripción general del sistema. (En Configuración, ingrese Descripción general del sistema en el cuadro Búsqueda rápida y, a continuación, seleccione Descripción general del sistema.)
  • La información devuelta en el encabezado de respuesta Sforce-Limit-Info para las API de REST.
  • Información devuelta en el cuerpo de la respuesta (en <type>API REQUESTS</type>) para las API de SOAP.
  • La llamada /limits en la API de REST de Lightning Platform.
  • La asignación basada en uso del Límite de solicitudes de API al mes, que le muestra las llamadas de API de su organización agregadas durante 30 días.
Puede además configurar notificaciones para aquellos casos en los que su organización supere el número de llamadas de API que haya especificado. Para hacerlo, en Configuración, ingrese Notificaciones de uso de API en el cuadro Búsqueda rápida y, a continuación, seleccione Notificaciones de uso de API.

¿Qué API debo usar?

La elección de la API adecuada para sus necesidades de integración es una decisión importante. Aquí se proporciona alguna información sobre nuestras API de uso más frecuente, lo que incluye protocolos, formatos de datos, paradigmas de comunicación y casos de uso admitidos. Use esta sección como una referencia que siempre puede consultar cuando vaya a decidir qué API usar.

Tenga en cuenta las cuatro API de datos de las que ya hemos hablado. Examinaremos cada una de ellas a continuación.

Nombre de API Protocolo Formato de datos Comunicación
API de REST REST JSON, XML Síncrona
API de SOAP SOAP (WSDL) XML Síncrona
API de REST de Chatter REST JSON, XML Síncrona (las fotografías se procesan de forma asíncrona)
API de interfaz de usuario REST JSON Síncrona
API de REST de Analytics REST JSON, XML Síncrona
API masiva REST CSV, JSON, XML Asíncrona
API de metadatos SOAP (WSDL) XML Asíncrona
API de transmisión Bayeux JSON Asíncrona (flujo de datos)
API de REST de Apex REST JSON, XML, personalizado Síncrona
API de SOAP de Apex SOAP (WSDL) XML Síncrona
API de herramientas REST o SOAP (WSDL) JSON, XML, personalizado Síncrona

Cuándo usar la API de REST

La API de REST proporciona una interfaz de servicios web basada en REST eficiente, práctica y sencilla para interactuar con Salesforce. Algunas de sus ventajas son la facilidad de la integración y el desarrollo, y además es una excelente elección de tecnología para su uso con aplicaciones móviles y proyectos web. Para ciertos proyectos, es posible que desee utilizar la API de REST con otras API de REST de Salesforce. Para construir una interfaz de usuario para crear, leer, actualizar y eliminar registros, incluyendo la construcción de una interfaz de usuario para vistas de lista, acciones y listas de selección dependientes, utilice la API de la interfaz de usuario. Para construir una interfaz de usuario para Chatter, comunidades o recomendaciones, utilice la API de REST de Chatter. Si tiene muchos registros que procesar, considere la posibilidad de usar la API masiva, la cual se basa en los principios de REST y se optimizó para grandes conjuntos de datos.

Cuándo usar la API de SOAP

La API de SOAP proporciona una interfaz de servicios web basada en SOAP eficiente, práctica y sencilla para interactuar con Salesforce. Puede usar la API de SOAP para crear, recuperar, actualizar o eliminar registros. Además, puede usar la API de SOAP para realizar búsquedas y mucho más. Use la API de SOAP en cualquier lenguaje compatible con los servicios web.

Por ejemplo, puede usar la API de SOAP para integrar Salesforce con los sistemas ERP y de finanzas de su organización. Asimismo, puede proporcionar información de ventas y asistencia en tiempo real en los portales de la compañía y completar sistemas de negocio clave con información de los clientes.

Cuándo usar la API de REST de Chatter

Use la API de REST de Chatter para mostrar noticias, usuarios, grupos y seguidores de Chatter, especialmente en aplicaciones móviles. La API de REST de Chatter también proporciona acceso programático a archivos, recomendaciones, temas, notificaciones, compras de Data.com y otras. La API REST de Chatter es similar a las API que ofrecen otras compañías con noticias en tiempo real, como Facebook y Twitter, aunque también expone funciones de Salesforce más allá de Chatter.

Cuándo usar la API de interfaz de usuario

Construya una interfaz de usuario de Salesforce para aplicaciones móviles nativas y aplicaciones web personalizadas empleando la misma API que utiliza Salesforce para construir Lightning Experience y Salesforce para Android, iOS y navegadores web móviles. Construya interfaces de usuario que permitan a los usuarios trabajar con registros, vistas de lista, acciones, favoritos y otras funciones. No solo obtendrá datos y metadatos en una única respuesta, sino que la respuesta coincidirá con los cambios en los metadatos realizados en la organización por parte de los administradores de Salesforce. No tiene que preocuparse de formatos, listas de selección, la seguridad a nivel de campos o la colaboración: todo lo que tiene que hacer es construir una aplicación que les guste a los usuarios.

Cuándo usar la API de REST de Analytics

Puede usar la API de REST de Analytics para acceder mediante programación a activos de Analytics, como conjuntos de datos, lentes y tableros. Envíe consultas directamente a la plataforma Analytics. Acceda a conjuntos de datos importados en la plataforma Analytics. Crear y recuperar lentes. Acceda a información de XMD. Recupere una lista de versiones de conjuntos de datos. Cree y recupere aplicaciones de Analytics. Cree, actualice y recupere tableros de Analytics. Recupere una lista de dependencias de una aplicación. Determine qué funciones están disponibles para el usuario. Trabaje con instantáneas. Manipule conjuntos de datos replicados.

Cuándo usar la API masiva

La API masiva se basa en los principios de REST y se ha optimizado para la carga o eliminación de grandes conjuntos de datos. Puede usarla para consultar, consultar todo, insertar, actualizar, insertar y actualizar o eliminar muchos registros de forma asíncrona mediante el envío por lotes. Salesforce procesa los lotes en segundo plano.

A diferencia de esta API, la API de SOAP se ha optimizado para aplicaciones cliente en tiempo real que actualizan unos cuantos registros a la vez. Puede utilizar la API de SOAP puede utilizarse para procesar muchos registros, pero cuando el conjunto de datos contiene cientos de miles de registros, la API de SOAP es menos práctica. La API masiva se ha diseñado para simplificar el proceso de datos de unos pocos miles de registros a millones de ellos.

La forma más sencilla de usar la API masiva es activarla para el procesamiento de registros en el Cargador de datos mediante archivos CSV. El uso del Cargador de datos elimina la necesidad de escribir su propia aplicación cliente.

Cuándo usar la API de metadatos

Use la API de metadatos para recuperar, implementar, crear, actualizar o eliminar personalizaciones para su organización. El uso más frecuente es la migración de cambios desde una organización de sandbox o de prueba a su entorno de producción. La finalidad de la API de metadatos es gestionar las personalizaciones y crear herramientas que permitan gestionar el modelo de metadatos y no los datos en sí.

La forma más sencilla de acceder a la funcionalidad de la API de metadatos es usar Extensiones de Salesforce para Visual Studio Code o la Herramienta de migración de Ant. Ambas herramientas se basan en la API de metadatos y usan las herramientas estándar para simplificar el trabajo con la API de metadatos.
  • Extensiones de Salesforce para Visual Studio Code incluye herramientas para desarrollar sobre Salesforce Platform en el editor ligero y ampliable de VS Code. Estas herramientas proporcionan funciones para trabajar con organizaciones de desarrollo (organizaciones borrador, entornos sandbox y organizaciones de DE), Apex, componentes Aura y Visualforce.
  • La Herramienta de migración de Ant es ideal si usa una secuencia de comandos o la línea de comandos para mover metadatos entre un directorio local y una organización de Salesforce.

Cuándo usar la API de transmisión

Utilice API de transmisión para recibir en tiempo casi real transmisiones de datos basadas en cambios en registros de Salesforce y cargas personalizadas. Para cambios de registro de Salesforce, Salesforce publica notificaciones cuando se producen los cambios. Para notificaciones personalizadas, puede publicar mensajes de evento. Los suscriptores pueden recibir notificaciones utilizando CometD: una implementación del protocolo Bayeux que simula tecnología de inserción. Los clientes también pueden suscribirse a algunos tipos de eventos con desencadenadores de Apex o de forma declarativa con Process Builder y Flow Builder.

Utilice el tipo de evento de transmisión que se ajuste a sus necesidades.

Evento de Envío de tema Reciba cambios en registros de Salesforce basándose en una consulta de SOQL que define. Las notificaciones incluyen únicamente los campos que especifica en la consulta de SOQL. Evento de Captura de datos de cambio Reciba cambios en registros de Salesforce con todos los campos cambiados. Captura de datos de cambio admite más objetos estándar que los eventos de Envío de tema y proporciona más funciones, como campos de encabezado que contienen información acerca del cambio. Evento de plataforma Publique y reciba cargas personalizadas con un esquema predefinido. Los datos pueden ser cualquier cosa que defina, incluyendo datos de negocio, como información de pedido. Especifique los datos para enviar definiendo un evento de plataforma. Suscríbase a un canal de evento de plataforma para recibir notificaciones. Evento genérico Publique y reciba cargas arbitrarias sin un esquema predefinido.

Cuándo usar la API de REST de Apex

Use la API de REST de Apex cuando desee exponer sus métodos y clases de Apex de modo que las aplicaciones externas puedan acceder a su código mediante la arquitectura REST. La API de REST de Apex es compatible con OAuth 2.0 y con el Id. de sesión para la autorización.

Cuándo usar la API de SOAP de Apex

Use la API de SOAP de Apex cuando desee exponer métodos Apex como API de servicios web de SOAP de modo que las aplicaciones externas puedan acceder a su código mediante SOAP.

La API de SOAP de Apex es compatible con OAuth 2.0 y con el Id. de sesión para la autorización.

Cuándo usar la API de herramientas

Use la API de herramientas para integrar metadatos de Salesforce con otros sistemas. Los tipos de metadatos se exponen como sObjects, de modo que puede acceder a un componente de un tipo complejo. Este acceso de nivel de campo acelera las operaciones con tipos de metadatos complejos. Además, puede crear herramientas de desarrollo personalizadas para aplicaciones de Force.com. Por ejemplo, puede usar la API de herramientas para gestionar e implementar copias funcionales de clases y desencadenadores de Apex, y páginas y componentes de Visualforce. Asimismo, puede establecer puntos de comprobación o marcadores de volcado de pila, ejecutar Apex anónimo y acceder a información de registro y cobertura de código.

Tanto REST como SOAP son compatibles.