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

Información general sobre la API de la interfaz de usuario

Objetivos de aprendizaje

Después de completar esta unidad, podrá:
  • Explicar dónde encaja la API de la interfaz de usuario en Salesforce Platform.
  • Describir cuándo utilizar la API de la interfaz de usuario.
  • Describir cuándo no utilizar la API de la interfaz de usuario.

Acceder a Salesforce Platform en su nivel

La capacidad de Salesforce reside en que puede personalizarlo para que funcione para usted y sus clientes. Cuando decidimos volver a crear nuestra interfaz de usuario, no remodelamos su aspecto visual, sino que creamos una plataforma de gran capacidad que le proporciona un nivel de acceso superior para personalizar Salesforce. Se trata de Lightning.

Lightning incluye la experiencia de usuario de Salesforce (Lightning Experience), la plataforma y el marco de interfaz de usuario (marco de componentes Lightning). Lightning le permite personalizar Salesforce en el nivel que funciona para sus habilidades y requisitos al concederle acceso a distintas capas de Salesforce Platform. En este módulo, aprenderá a acceder a la plataforma mediante la API de la interfaz de usuario, que Lightning Experience utiliza para obtener datos y metadatos de Salesforce.

Veamos un resumen del contexto. Para crear Lightning Experience, necesitábamos una API nueva. Nuestra API existente no proporcionaba acceso a todo lo que necesitábamos y se diseñó para la integración de datos, pero no para la creación de interfaces de usuario. Y de este modo, en un día cálido y despejado, nació la API de la interfaz de usuario.

Colaboramos estrechamente con nuestros desarrolladores de Salesforce internos para determinar qué trabajos eran difíciles y requerían mucho tiempo, y solucionamos estos problemas. Convertimos esta nueva API de REST en una herramienta pública, lo que significa que puede crear aplicaciones web y aplicaciones móviles con la misma API que Salesforce utiliza para crear aplicaciones de Lightning Experience y Salesforce para Android e iOS.

Recorrido por la pila de tecnología de Lightning

Cuenta con infinidad de métodos para acceder a Lightning y crear aplicaciones de Salesforce que le faciliten la vida a usted y sus usuarios. Examinemos las capas de la pila de tecnología de Lightning para comprender dónde se ubica la API de la interfaz de usuario y cuándo utilizarla.Capas de Salesforce Platform. La API de la interfaz de usuario se ubica debajo de Lightning Data Service, que a su vez se ubica debajo de componentes Lightning.

Cuando cambia a un nivel superior de la pila, la Plataforma Lightning realiza más acciones por usted, lo que facilita el desarrollo. En la parte superior de la pila, no necesita escribir código, sino apuntar y hacer clic. En la parte inferior de la pila, debe escribir una gran cantidad de código.

  • Arrastre componentes Lightning pregenerados en el Generador de aplicaciones Lightning.
  • Desarrolle componentes Lightning personalizados.
  • Utilice Lightning Data Service para acceder a datos de Salesforce en componentes Lightning.
  • Utilice la API de la interfaz de usuario para crear aplicaciones web y móviles personalizadas que conecten con Salesforce desde fuera de Salesforce Platform.

Veamos la parte superior de la pila, la solución “sin código”. Los componentes base Lightning (por ejemplo, botón, entrada e icono) son las partes integrantes de la interfaz de usuario. En el Generador de aplicaciones Lightning, no necesita utilizar ningún código para poder combinar componentes para crear aplicaciones que residan en Salesforce. Además, puede crear aplicaciones independientes alojadas en Salesforce Platform.

Al cambiar a un nivel inferior de la pila, puede crear sus propios componentes Lightning. Sin necesidad de escribir mucho código, puede utilizar Lightning Data Service para crear, leer, actualizar y eliminar registros. Lightning Data Service utiliza la API de la interfaz de usuario (que se ubica justo debajo en la pila) para obtener datos de Salesforce. LDS agrega la magia del almacenamiento en caché, lo que minimiza los desplazamientos al servidor y las actualizaciones de todos los registros que utilizan los mismos datos.

La base fundamental de la pila de Lightning es la API de la interfaz de usuario, la cual le proporciona cargas de datos y metadatos de Salesforce estructurados para la creación de una interfaz de usuario. Utilice su marco web o lenguaje favoritos para crear cualquier aplicación web o móvil nativa personalizada que pueda imaginar. React, Vue, Angular, iOS, Android... Si puede crear una solicitud HTTP, puede utilizar la API de la interfaz de usuario.

La API de la interfaz de usuario facilita el desarrollo de una interfaz de usuario

Salesforce incluye muchas API y puede ser difícil saber cuál es la mejor herramienta para un trabajo. Si va a crear una aplicación web o móvil personalizada y necesita una interfaz de usuario que permita a los usuarios ver, crear, modificar y eliminar registros de Salesforce (una interfaz de usuario con el aspecto y comportamiento de Salesforce), la API de la interfaz de usuario es la solución perfecta.

Si va crear una interfaz de usuario que permita a los usuarios modificar listas de selección y búsquedas dependientes, la API de la interfaz de usuario es definitivamente el método idóneo. La API de la interfaz de usuario incluye un recurso que facilita en gran medida el proceso.El editor de listas de selección dependientes muestra los menús País, Idioma, Estado y Ciudad.

Como mencionamos, Salesforce utiliza la API de la interfaz de usuario para crear Lightning Experience. La API de la interfaz de usuario la desarrollan un conjunto de ingenieros de Salesforce internos para facilitar el trabajo de otro conjunto de ingenieros de Salesforce internos que desarrollan Lightning Experience. ¡También estamos deseando ver lo que usted va crear con esta herramienta!

Hemos de admitir que la interfaz de usuario de Salesforce es compleja. La interfaz de usuario correcta para un usuario determinado depende de varias configuraciones de reglas, permisos y formatos de página. Un administrador puede cambiar cualquiera de estas dependencias de modo que se adapten mejor a las necesidades de negocio. Por ejemplo, un administrador puede agregar o eliminar campos de formatos de página, marcar campos como obligatorios y asignar formatos de página a perfiles.

Anteriormente, solía ser difícil crear una interfaz de usuario dinámica para trabajar con registros en aplicaciones personalizadas, ya que tenía que escribir código para actualizar la interfaz de usuario siempre que un administrador realizaba cambios en los metadatos para la organización.

Este es uno de los motivos por los que creamos la API de la interfaz de usuario y por lo que vamos a agregar nuevas funciones en cada versión. La API de la interfaz de usuario facilita la creación de una interfaz de usuario personalizada de acuerdo con las reglas y los permisos de una organización de Salesforce, ya que la interfaz de usuario responde a los cambios en los metadatos en tiempo de ejecución. Lo repetimos una vez más para que quede claro. No necesita modificar su aplicación cuando un administrador cambia los permisos, los formatos, la seguridad de nivel de campo o las reglas de colaboración. De hecho, no necesita escribir código que compruebe estos elementos, ya que la API de la interfaz de usuario lo hace por usted.

Antes de la creación de la API de la interfaz de usuario, tenía que hacer infinidad de llamadas para obtener la información necesaria para el formato (dónde residen los campos en la página), los metadatos (qué campos tiene un objeto y si son obligatorios) y los datos de registro (cuáles son los valores de campo). La API de la interfaz de usuario hace estas llamadas por usted y facilita el análisis de la respuesta. Es decir, hace el trabajo de un motor de representación de formatos para que no tenga que crear uno. Su sillón reclinable (tabla de snowboard o jardín) le está esperando.

Además, dado que la API de la interfaz de usuario tiene los mismos límites de API que la API para compañías, no tiene que preocuparse por aprender un nuevo método para hacer un seguimiento de los límites de API.

Cargas eficientes
Necesita una gran cantidad de información para crear formularios que permitan a los usuarios trabajar con registros. ¿Qué campos incluye el objeto? ¿Son campos obligatorios? ¿Dónde se deberían ubicar en el formato? ¿Cuáles son los valores de todos los campos? Las cargas de la API de la interfaz de usuario agregan los datos y metadatos para que no tenga que realizar una gran cantidad de solicitudes de API.
Valores de visualización con formato y traducidos
En el caso de los valores de campo, la API de la interfaz de usuario le proporciona valores listos para su visualización en el idioma seleccionado por el usuario. Si se trata de una fecha o una divisa, se aplica un atractivo formato. Con independencia del tipo de datos que incluya el campo, su código solo utiliza la propiedad displayValue.
Seguridad de nivel de campo y reglas de colaboración
La API de la interfaz de usuario cumple lo establecido al respecto. Si un usuario no tiene acceso a un campo, el campo no se incluye en la respuesta. ¡Bieeen! Ya puede disfrutar de su tiempo libre.
Lógica de negocio
Cada desarrollador se enfrenta a los mismos problemas. Por ejemplo, para desarrollar una interfaz de usuario que permita a los usuarios duplicar un registro, necesita un tipo de información distinta de la que necesita cuando desarrolla una interfaz de usuario que permite a los usuarios crear un registro. Un formulario duplicado incluye valores de datos del registro duplicado, mientras que la mayoría de los valores de datos de un formulario creado son null (el propietario y el Id. de propietario no son null). La API de la interfaz de usuario tiene recursos que devuelven la información necesaria para desarrollar interfaces de usuario para estos casos de uso, y son los mismos recursos que utilizamos para construir Lightning Experience y Salesforce para iOS y Android. Obtiene los mismos valores predeterminados que vería en Salesforce, lo cual es fantástico.
Tipos de formatos y factores de forma
¿Desea que su aplicación funcione en cualquier dispositivo, tablet o equipo de escritorio? Por supuesto. Las respuestas de la API de la interfaz de usuario pueden proporcionar tipos de formatos completos y compactos, y factores de forma pequeños, medianos y grandes.
Modos de acceso
Para crear una aplicación que permita a los usuarios trabajar con registros de Salesforce, debe crear distintas interfaces de usuarios para distintos tipos de trabajo. ¿Va el usuario a visualizar, crear, duplicar o modificar un registro? Puede solicitar una carga para cada uno de estos modos de acceso. (Dado que la duplicación utiliza el modo de modificación, solo hay tres modos: crear, modificar y visualizar).

¿Cuándo no debo utilizar la API de la interfaz de usuario?

No utilice la API de la interfaz de usuario para la integración del sistema. No la puede utilizar para crear una integración automatizada para la carga o extracción de datos. Tampoco la puede utilizar para cargar o extraer datos de forma masiva. Utilice la API para compañías o la API masiva para estas tareas.

Si va a crear componentes Lightning, no utilice la API de la interfaz de usuario directamente. Utilice Lightning Data Service (LDS).

LDS se basa en la API de la interfaz de usuario, pero además almacena en caché las respuestas y actualiza todos los registros afectados por los cambios en los datos. Si trabaja con LDS, no tiene que preocuparse por realizar llamadas de REST y almacenar en caché los resultados, ya que LDS lo hace por usted. Además, cuando los datos cambian, LDS actualiza todos los componentes correspondientes. LDS no solo elimina los datos incoherentes entre componentes, sino que también permite a los usuarios trabajar sin conexión y sincronizar los datos cuando se restablece la conexión. LDS es increíble.

Por último, no utilice la API de la interfaz de usuario para volver a crear la interfaz de usuario de Salesforce completa. ¿Qué sentido tendría hacer esto?

Conocer los recursos de la API de la interfaz de usuario

Los recursos de la API de la interfaz de usuario se incluyen en varias categorías. En este módulo de Trailhead se examinan en profundidad los recursos de los registros y formatos, pero vamos a echar un vistazo rápido a algunas de las demás categorías para que sea consciente de todo lo que es posible. Para ver la lista completa de recursos, consulte la Guía del desarrollador de la API de la interfaz de usuario.

Sugerencia

Sugerencia

En este módulo, recurso y extremo son intercambiables.

Registros y formatos

Utilice estos recursos para crear, leer, actualizar y eliminar registros de Salesforce.

La API de la interfaz de usuario es el recurso por excelencia, ya que utiliza uno o varios Id. de registro y devuelve información de datos, metadatos y formato. Así funciona. Su aplicación realiza una solicitud HTTP y obtiene todo cuanto necesita para mostrar un registro. Veremos más detalladamente este recurso en la siguiente unidad.

/ui-api/record-ui/{recordIds}
Además, la API de la interfaz de usuario incluye recursos para obtener estas mismas respuestas de forma individual para el formato, los metadatos de objetos y los datos.
/ui-api/layout/{objectApiName}
/ui-api/object-info/{objectApiName}
/ui-api/records/{recordId}
En una unidad posterior, examinaremos los recursos que obtienen los valores de campo predeterminados que necesita para crear una interfaz de usuario para duplicar o crear un registro.
/ui-api/record-defaults/create/{objectApiName}
/ui-api/record-defaults/clone/{recordId}
Además, aprenderemos a utilizar este recurso para obtener los valores de todos los campos de lista de selección de un tipo de registro específico.
/ui-api/object-info/{objectApiName}/picklist-values/{recordTypeId}

Vistas de lista

Los usuarios de Salesforce dedican mucho tiempo a personalizar sus vistas de lista para poder visualizar y analizar los registros. Utilice la API de la interfaz de usuario para obtener una lista de registros y los metadatos de una vista de lista. Como en el caso del recurso /ui-api/record-ui/{recordId}, estos recursos devuelven datos y metadatos en una sola respuesta.
/ui-api/list-ui/${listViewId}
/ui-api/list-ui/${objectApiName}/${listViewApiName}
Además, puede obtener los datos y metadatos en sus propios recursos.
/ui-api/list-info/${listViewId}
/ui-api/list-info/${objectApiName}/${listViewApiName}
/ui-api/list-records/${listViewId}
/ui-api/list-records/${objectApiName}/${listViewApiName}

Acciones

Las acciones proporcionan a los usuarios un método rápido y sencillo para completar tareas en Salesforce. Puede utilizar acciones para crear un objeto, enviar un email, registrar una llamada, etc. Las acciones se muestran en la barra de acciones en la aplicación móvil y en la cinta de acciones en Lightning Experience. Antes de la API de la interfaz de usuario, las aplicaciones debían utilizar SOQL para buscar las acciones disponibles. Ahora, puede recuperar listas de acciones disponibles para el usuario en la aplicación Salesforce, en el encabezado de Acciones globales, en páginas de detalles y modificación de registros, en listas relacionadas, etc.
/ui-api/actions/global
/ui-api/actions/record/${recordIds}
/ui-api/actions/record/${recordId}/record-edit
/ui-api/actions/record/${recordId}/related-list/${relatedListIds}
// There are more actions resources! Check the User Interface API Developer Guide! 

Actualmente, puede utilizar extremos de acciones para recuperar listas de acciones, pero no puede ejecutar acciones. Es práctico obtener una lista de acciones si desea utilizar acciones rápidas, si tiene sustituciones de Visualforce o si desea determinar operaciones CRUD basadas en acciones visibles. Por ejemplo, si hay una acción nueva, el usuario puede crear un registro y lo mismo se aplica a la modificación y eliminación.

Favoritos

Lightning Experience incluye una estrella en el encabezado que incluye sus registros y vistas de lista favoritos. Los usuarios pueden agregar favoritos para navegar rápidamente en Salesforce. La API de la interfaz de usuario incluye recursos para crear, visualizar, actualizar y eliminar favoritos de modo que pueda crear el mismo método de navegación con favoritos en sus aplicaciones personalizadas.
/ui-api/favorites
/ui-api/favorites/${favoriteId}
/ui-api/favorites/batch
/ui-api/favorites/${favoriteId}/usage

Consultas

Los objetos de Salesforce suelen incluir campos de búsqueda que le permiten asociar dos registros en una relación. Por ejemplo, un registro de contacto incluye un campo de búsqueda Cuenta que asocia el contacto con su cuenta. En las páginas de modificación de registros, los campos de búsqueda le permiten buscar el registro que desea asociar con el registro que va a modificar. Interfaz de usuario de búsqueda para un nombre de cuenta. La lista desplegable contiene sugerencias.

La creación de la interfaz de usuario para las búsquedas y las búsquedas dependientes es un gran reto que facilita en gran medida la API de la interfaz de usuario. Utilice estos recursos para crear una interfaz de usuario que permita a los usuarios una búsqueda completa con escritura anticipada que coincida con lo que ve en Lightning Experience.
/ui-api/lookups/{objectApiName}/{fieldApiName}
/ui-api/lookups/{objectApiName}/{fieldApiName}/{targetApiName}