Let’s automate!
Administration of Tableau Server is not a lot of effort. Yet, what if you would like to be even more efficient? What if you would like to have recurrent tasks done by themselves?
Let’s automate!
Tableau Server offers you an incredible amount of control, using our REST API. Eventually, you can do almost everything, and more, what you know in the Tableau Server GUI. However, writing your own scripts from scratch to make REST calls is not the easiest task and for a lot of our users hard to approach. That is why you can always turn to a more accessible resource, which is called Tableau Server Client.
Tableau Server Client is a library offering a basis to develop scripts for Tableau Server. It is written in Python, one of the most commonly used scripting languages. Tasks which consist of many REST calls are integrated into simple methods and applied to the typical Tableau Server objects (workbook, projects, sites,…).
So let’s have a look at a practical example, a challenge I faced with one of our large customers in southern Germany. I have developed this solution in one of my professional services engagements together with Manuel Parfant. He, as the customer’s Tableau Server administrator, implemented our recommended project structure. For each topic within the organization, he created a productive project and a sandbox project. Each department has their own site, so they can control access of users to content. Workbook development is happening in the sandbox projects and successfully developed solutions should then be promoted to the production projects. To prevent an accumulation of already finished workbooks within the sandbox projects, they need to be cleaned out on a regular basis. This sparks the interest of the workbook author to promote his content to the productive project and avoid deletion of his content.
Deletion?!!!
Of course not! We wanted to make sure content is not deleted irreversibly. Sometimes, developing a project takes longer than expected. We have to give users the chance to retrieve their deleted content. The solution is to move the workbooks into a project called “Hidden Sandbox”. This hidden sandbox is simply not reachable, or visible to users other than the administrators.
So how does it look? This video shows how a script runs and the effects on Tableau Server.
The script also checks the age of workbooks and does not move them if they are younger than a specified threshold. This gives the flexibility to configure the scripts to run daily and limits the workbook age across all sandboxes and sites.
Are you are interested in an automation solution and would like to have some help or guidance, on how to successfully deploy it? You can find more information about our Consulting Services here, or leave a comment below.