Hi
I am running into few problems while developing a workflow which retrieves the data through Tableau REST APIs
I want to run CURL command based on values collected through Tableau REST API which basically executes “Download Workbook” API point
GET /api/api-version/sites/site-id/workbooks/workbook-id/content
curl "http://MY-SERVER/api/3.1/sites/9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d/workbooks/1a1b1c1d-2e2f-2a2b-3c3..." -X GET -H "X-Tableau-Auth:12ab34cd56ef78ab90cd12ef34ab56cd" -o “c:\files\environment\site\project\my-workbook.twb”
Here server name, site-id , workbook_id , authorization token, environment, site name,project and workbook_name are dynamic based on values selected by user in analytic app.
I am not able to figure out how these dynamic values can be passed to run command arguments (screenshot below) which don’t have flexibility to select fields in the workflow. It seems that static/fixed values can be passed as part of command arguments.
Please can someone provide inputs here.
Solved! Go to Solution.
Hi,
To do this, you will want to Write your command script to a file using the Run command tool, and then execute that script.
Assuming that you had columns with the specified names below, you might use a formula to write your command out to pass in these arguments.
Here's an example of that formula:
'curl "http://'+[server name]+'/api/3.1/sites/'+[site-id]+'/workbooks/'+[workbook_id]+'/content" -X GET -H "X-Tableau-Auth:'+[authorization token]+'" -o “c:\files\'+[environment]+'\'+[site name]+'\'+[project]+'\'+[workbook_name]+'.twb”'
Then, you could use a Select tool and deselect every field except for your formula-generated command, and this should allow you to accomplish what you are looking for.