![Use la API REST de Tableau con Postman para diseñar integraciones ☁️](https://discover.egafutura.com/wp-content/uploads/2023/04/use-la-api-rest-de-tableau-con-postman-para-disenar-integraciones-e29881efb88f.png)
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.
…
La nueva Postman Collection para la API REST de Tableau puede ayudar a que los desarrolladores sean más productivos y democratiza el acceso a las capacidades de la API tanto como Tableau democratiza el análisis de datos. Tener acceso a la API REST es excelente para cualquier administrador de Tableau y es crucial al desarrollar aplicaciones analíticas con Tableau.
Los desarrolladores de Salesforce ahora tienen acceso a herramientas mejoradas, lo que acelera la adopción de Tableau como una capa de visualización para datos ubicados dentro y fuera de los productos de Salesforce. ¿Desea una lista de paneles de Tableau disponibles para usuarios específicos, de modo que pueda crear un catálogo de análisis llamativo en Experience Cloud? La respuesta es: use la API REST. ¿Desea administrar mediante programación extensiones analíticas para ejecutar predicciones de Einstein, así como código Python y R en Tableau? Sí, la respuesta también es: ¡use la API REST!
Los datos son el recurso sin procesar que las aplicaciones requieren para ejecutarse. Las API son las interfaces que permiten que las aplicaciones funcionen entre sí. Esta publicación de blog tiene como objetivo ayudarlo a comenzar con la API REST de Tableau, para que pueda crear soluciones que combinen ambos dominios.
Introducción a la API REST de Tableau
Aprender a usar una nueva API puede ser una tarea abrumadora. Estos son los tipos de desafíos en los que la experiencia del desarrollador puede significar la diferencia entre una implementación superficial y la verdadera magia.
Una mirada a la referencia de la API es suficiente para comprender la minuciosidad de la superficie de la API REST de Tableau, y una revisión más profunda de los conceptos clave despejará el resto del camino. Tableau tiene métodos para usuarios, libros de trabajo, fuentes de datos, proyectos, permisos y más. De hecho, si ha usado la querida utilidad de línea de comandos Tabcmd o la biblioteca Python de cliente de Tableau Server en el pasado, debe saber que ambas tecnologías usan la API REST de Tableau.
En otras palabras, puede escribir código que le diga a Tableau qué hacer. Puede simplificar sus funciones como administrador del servidor con la automatización a través de secuencias de comandos programadas o basadas en eventos. Un ejemplo de este tipo de escenario sería un administrador que aprovecha los webhooks de Tableau para recibir notificaciones cuando una fuente de datos en particular se actualiza y luego responde activando una tarea de actualización de extracción separada. El programador integrado puede ayudar al administrador a ejecutar actualizaciones en momentos fijos, mientras que las API de Tableau permiten que estas tareas se activen de forma asincrónica después de que se cumplan ciertas condiciones.
Los lectores interesados en DevOps deben saber que estos métodos pueden realizar tareas útiles, como migrar activos de Tableau entre sitios o entornos. Los desarrolladores pueden responder a eventos de webhook en activos, como cuando un usuario de Tableau actualiza un libro de trabajo de plantilla, usando la interfaz de usuario de Tableau y luego responder a ese evento publicando este nuevo libro de trabajo en un entorno de prueba o producción con la API REST. Los métodos de publicación de la API se pueden integrar en su propio proceso de revisión y aprobación.
Esta aplicación de muestra usa una combinación de las API de Tableau para ofrecer características analíticas completas a una fracción del costo, el esfuerzo y el tiempo que llevaría desarrollar las mismas capacidades internamente. Los desarrolladores pueden solicitar activos de Tableau a través de llamadas HTTP para satisfacer diversas necesidades. Por ejemplo, puede solicitar miniaturas e imágenes de alta resolución de Tableau, de modo que pueda crear hermosos catálogos y menús para ayudar a los usuarios finales a explorar el contenido analítico. Las respuestas de la API REST se personalizan para cada usuario, lo que le permite aplicar las funciones de seguridad integradas de Tableau, incluso cuando solicita activos, como archivos PDF, diapositivas y conjuntos de datos.
[contenido incrustado]
La API REST de Tableau le permite aprovechar la mejor plataforma de visualización de datos de su clase para monetizar sus activos de datos, ya que le permite escribir integraciones entre su aplicación y la capa de Tableau. Tableau ha resuelto muchos de los problemas de datos más desafiantes para clientes de todo el mundo, por lo que la integración con Tableau significa que puede salir al mercado antes y de manera más confiable, y deleitar a sus usuarios con muchas más funciones.
Tienes datos. Sabes que es valioso. Las personas con las que trabaja saben que es valioso. Sus clientes saben que es valioso. Con Tableau, puede ser la primera persona en llevar su idea al mundo. La API REST es la clave para aprovechar Tableau como plataforma. Como resultado, el análisis en su aplicación tendrá muchas funciones y se construirá a escala. Dado que Tableau traduce las interacciones de los usuarios directamente a SQL, un importante punto de venta de Tableau es que libera a los analistas de la dependencia de una capa de servicios web independiente (es decir, un ORM, que es lo que suele escribir SQL para desarrolladores y terminales de API) que debe ser diseñado, protegido, construido y mantenido por grandes equipos de desarrolladores.
Si ha tenido una experiencia similar, esto debería traducirse inmediatamente en mucho tiempo y dinero. ¿Alguna vez has oído hablar del término "backend para una interfaz"? Sin Tableau, muy a menudo sus análisis externos enfrentan un cuello de botella similar: "backend para un tablero". En primer lugar, rara vez los servicios web están diseñados específicamente para un tablero, por lo que a menudo los desarrolladores front-end unen múltiples puntos finales que con el tiempo evolucionan por separado. Esto es una molestia para mantener. Además, la gestión de cambios de toda esta pila es demasiado costosa y requiere mucho tiempo para mantener sus análisis actualizados y modernos. Es por eso que muchas iniciativas ambiciosas dan como resultado gráficos estáticos con pocas distinciones llamativas, como una "información sobre herramientas interesante", pero nunca se vuelven más significativos o interactivos.
Si la visualización de datos no es su negocio principal, pero sus clientes quieren análisis modernos, entonces, ¿por qué se tomaría tantas molestias? Algunas personas aprenden de los consejos de otros, otras personas deben cometer errores ellos mismos. Este último grupo a menudo finalmente reconsidera su estrategia de visualización de datos y elige asociarse con Tableau.
Colección Postman de la API REST de Tableau
Postman brinda una experiencia práctica sin requisitos de codificación a través de un cliente HTTP que puede ayudarlo a planificar nuevas integraciones a la velocidad del pensamiento, al igual que Tableau le permite analizar datos a la velocidad del pensamiento. Te permite concentrarte en lo que importa. Esta es esencialmente la mejor parte de la nueva Colección Postman de Tableau; elimina gran parte de la fricción experimentada al trabajar con una nueva API.
El archivo de colección está emparejado con un archivo de entorno, los cuales están alojados en el espacio de trabajo de Desarrolladores de Salesforce , un espacio de trabajo público de Postman que aloja varias otras colecciones utilizadas en Salesforce. La colección de API de la plataforma Salesforce es extraordinariamente popular con 132.000 bifurcaciones hasta la fecha.
Las instrucciones sobre cómo usar la colección Postman de Tableau y cómo contribuir a ella se pueden encontrar en el repositorio de GitHub . Si ya está familiarizado con la API REST de Tableau y Postman, la forma más fácil de comenzar es bifurcar la colección .
ponerse manos a la obra
Antes de comenzar, asegúrese de bifurcar tanto la colección de la API REST de Tableau como los archivos de entorno como se describe en esta guía . Debe agregar valores para las variables enumeradas en su archivo de entorno, como server
, api-version
y credenciales de usuario. Si prevé que necesitará acceso a más de un sitio de Tableau, puede administrar fácilmente estos sitios bifurcando nuevos archivos de entorno. Aquí hay algunas razones por las que eventualmente querrá acceder a más de un entorno de Tableau:
- Tiene sitios de Tableau para diferentes propósitos, como un sitio para empleados y otro para usuarios externos, incluidos clientes, proveedores y socios.
- Usted mismo aloja Tableau Server y desea probar diferentes configuraciones de servidor o hardware en un entorno que no sea de producción (Nota: Tableau Cloud no requiere estas pruebas ya que Tableau administra esta infraestructura por usted)
- Brinda servicios y consultoría de Tableau o relacionados con los datos a diferentes clientes.
- Quiere acceso anticipado a funciones de prueba que solo están disponibles en Developer Preview, por lo que se unió al Programa para desarrolladores de Tableau y creó un sitio de pruebas para desarrolladores.
Las credenciales de usuario que elija usar son importantes. Los recursos de la API REST responderán con más o menos información según el rol del usuario en el sitio , mientras que otros recursos solo están reservados para los administradores. Además de eso, los permisos asignados a los usuarios de Tableau definirán aún más el acceso al contenido y las funciones del producto. Dada esta información, generalmente es una buena idea seleccionar al menos una opción de autenticación para un usuario administrador (si es posible). Puede obtener más información sobre qué credencial elegir leyendo la documentación del proyecto . La referencia de la API especificará qué permisos y roles de sitio se requieren para enviar solicitudes a cada método en la API REST. Hay otros temas avanzados, como la suplantación de identidad , que son compatibles con la colección y serán útiles para los desarrolladores que crean experiencias personalizadas para los usuarios finales.
Al principio, esto puede parecer mucho para tener en cuenta, pero no se preocupe. Será bastante sencillo interactuar con Tableau, incluso para los usuarios nuevos, pero también ofrece más capas de potencial para aquellos que desean un mayor control.
Su primera solicitud a Tableau debe ser para autenticarse en la API REST. Si tiene éxito, la respuesta incluirá una clave de API (sesión temporal) para usar en solicitudes posteriores a su entorno de Tableau, de modo que pueda identificar quién las está realizando. Su código deberá agregar un encabezado X-Tableau-Auth
con esta clave API como su valor.
Lo bueno de esta colección de Postman es que contiene secuencias de comandos de prueba que tomarán la clave de API obtenida de cualquier solicitud de autenticación exitosa y luego configura las solicitudes futuras para que incluya automáticamente el valor de encabezado correcto. Además de eso, la colección tiene un script opcional de solicitud previa de autenticación automática que autentica al usuario antes de realizar cualquier solicitud, por lo que la sesión del usuario siempre se mantiene actualizada. De esa forma, nunca tendrá que solicitar manualmente una nueva sesión de Tableau después de despertarse y abrir Postman a primera hora de la mañana.
A partir de ahí, la colección Postman se convierte en un arenero interactivo y una navaja suiza. Hace que la API de REST sea accesible y lo ayuda a satisfacer muchas de sus necesidades de Tableau. Para ejecutarlo rápidamente, solicite una lista de todos los libros de trabajo en su sitio utilizando el método Obtener libros de trabajo para el sitio . Tenga en cuenta que la respuesta debe incluir una lista de libros de trabajo con varios atributos.
Llevemos esa solicitud un paso más allá y probemos algunos parámetros de consulta útiles, como expresiones de campo y filtrado . En la pestaña llamada "Params", busque un parámetro llamado "fields" y asígnele un valor de workbook.name,workbook.createdAt,owner.name
, que enumera los campos que desea. Ahora envía la solicitud y mira la respuesta. Esta vez, el XML debería tener muchos menos atributos y aún así contener los campos en el valor del encabezado.
Las expresiones de campo permiten a los desarrolladores especificar los campos que necesitan en lugar de utilizar el conjunto de atributos predeterminado. Para filtrar esta respuesta, busque un parámetro llamado "filtro" y asígnele un valor similar a este patrón: createdAt:gte:2023-04-06T21:45:46Z
. En este caso, querrá reemplazar todo después de createdAt:
gte:
con una de las fechas del libro de trabajo que puede encontrar en la respuesta anterior que usa el mismo formato de fecha/hora.
Este ejercicio simula cómo se pueden usar estas funciones útiles para ajustar la respuesta que obtiene de Tableau.
La colección es útil para desarrolladores experimentados que se sienten cómodos escribiendo sus propias solicitudes. Una vez que sepa qué terminales desea usar y cómo configurar una solicitud, Postman puede generar código para usted en varios idiomas. Puede generar una solicitud cURL rápida, que es una buena solución para tareas improvisadas usando la terminal. También puede generar código de solicitud en Python, JavaScript y otros lenguajes. El siguiente ejemplo ha desactivado el encabezado de aceptación predeterminado generado por Postman (con un valor de */*
) y lo reemplazó con un encabezado agregado manualmente que usa application/json
en su lugar. Esto obliga a Tableau a responder con JSON en lugar de XML. Observe cómo la generación de código en el lado derecho agregó correctamente el encabezado 'Accept': 'application/json'
al código de solicitud de Python. Este es un ahorro de tiempo significativo, incluso para solicitudes simples.
He usado esta funcionalidad en el pasado para generar rápidamente una biblioteca de solicitudes de API REST en algunos de mis proyectos . A medida que implementa más y más funciones de Tableau en su aplicación, una biblioteca de solicitudes es una forma útil de mantener flujos de trabajo más grandes de alto nivel y más fáciles de mantener, mientras que las solicitudes en sí se describen por separado y se importan cuando es necesario. La generación de código y este tipo de estructura de directorios me ayudan a dedicar menos tiempo a preocuparme por los detalles de las bibliotecas HTTP y el lenguaje con el que estoy trabajando, de modo que puedo centrar más mi atención en el panorama general: hacer el trabajo.
Conclusión
La próxima vez que desee hacer algo con Tableau, pero no pueda encontrar una manera de hacerlo con la interfaz de usuario (como administrar webhooks o automatizar una tarea), puede ir a su colección de Postman de confianza y probar algunos métodos para ver si esta tarea es posible a través de la API REST de Tableau. Te sorprenderá la variedad de escenarios que esto te abrirá.
El mejor siguiente paso es obtener una bifurcación de los archivos de Postman y unirse a nosotros, los #datadevs que adoran Tableau y las API en el Programa para desarrolladores de Tableau . Tenemos mucho más contenido, API y recursos para compartir con usted, incluida una zona de pruebas gratuita para desarrolladores para el acceso anticipado a nuevas funciones. Háganos saber si tiene algún comentario y siéntase libre de contribuir a la colección.
Sobre el Autor
Stephen Price es ingeniero de soluciones en Salesforce con experiencia en análisis integrado y la plataforma de desarrollo de Tableau. Contribuyó al lanzamiento inicial de la colección Postman de Tableau como una forma de empoderar a otros, para que puedan crear soluciones con Tableau más fácilmente. Stephen nació y creció en Quito, Ecuador, y actualmente vive en Austin, TX. Además de ser fanático de Tableau, el análisis y el desarrollo de software, disfruta aprender nuevos idiomas, leer sobre historia, jardinería, cuidar a su perro y jugar al didgeridoo.
Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.
Agregar a Slack Suscríbete a RSS
…
Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2023/04/use-the-tableau-rest-api-with-postman-to-architect-integrations.html