Tableau View Extractor
DataSelf API - Beta Version
Many organizations store data in their DataSelf’s cloud Tableau site(s) for optimized reporting and data analysis. The Tableau View Extractor allows them to easily and securely download their data for further reporting or manipulation using other tools such as Excel.
The Tableau View Extractor can extract the list of available workbooks and views from an API-dedicated Tableau project and then extract their data.
Endpoint
https://api.beta.dataself.com/dw6/entities/<entity id>/extract?token=<user token>&source=tableau-view&view=<view id>
Parameters
<entity id>: ETL+ Entity ID, e.g.: abccorp
token=<user token>: ETL+ user token - you receive it in your DataSelf Product Registration email. To retrieve it, search your inbox for “DataSelf Product Registration“ or log into your ETL+ → Settings → Client Info → Send → check your email for the product registration.
view=<view id>: Optional. If not used, the endpoint returns the list of available Tableau views, workbooks, and view IDs from the ds_tableau_api Tableau Project. When this parameter is used, it’ll return the view’s data unpivoted. You might need to create optimized Tableau views for the API extraction (e.g., remove the view totals and subtotals and other simple calculations that can be done in Excel).
Example:
Extract the list of Tableau views: https://api.beta.dataself.com/dw6/entities/abccorp/extract?token=xx&source=tableau-view
To extract a Tableau view: https://api.beta.dataself.com/dw6/entities/abccorp/extract?token=xx&source=tableau-view&view=viewid
Output options
CSV download: use the endpoint on a web browser. You might need to right-click the text and Save As into a local CSV file.
Excel: go to the Data ribbon → From Web → paste the endpoint:
Click Ok.
Set the Delimiter to Comma.
If the table has undergone structural changes since the last extraction on this Excel install (cache), click the Refresh icon.
Click Load.
If you see errors on the
Queries & Connections
panel, mouse over the errors section and click on it to open the Power Query Editor. Scan through the shown tables for “Error”, click on them to get a description on the bottom panel. The most common fix to these errors is by going to the main query in Power Query → select Changed Type on the right panel → edit the Table.TransformColumnType expression (drop down at the top of the table), for instance, a column set toInte64.Type
must be changed totype text
.You might need to pivot/unpivot the table to view it like the Tableau view.
Power BI: Get data → Web → paste the endpoint → Ok → Anonymous → Connect:
Set the Delimiter to Comma.
If the table has undergone structural changes since the last extraction on this Excel install (cache), click the Refresh icon.
Click Load.
If you see errors on the Load panel, click
View errors
to open the Power Query Editor. Scan through the shown tables for “Error”, click on them to get a description on the bottom panel. The most common fix to these errors is by going to the main query in Power Query → select Changed Type on the right panel → edit the Table.TransformColumnTypes expression (drop down at the top of the table), for instance, a column set toInte64.Type
must be changed totype text
.
Security
IP Whitelisting: This feature only works behind DataSelf VPN or via IP whitelisting. Contact DataSelf support to whitelist your public IP.
Tableau Site: Add ds_tableau_api user to your Tableau Embedded site. In the future, the user will add their own Site Admin credentials.
Dedicated Tableau Project: The endpoint only accesses views saved in the ds_tableau_api top-level project.
ETL+ User: The ETL+ API user token ties users to their ETL+ entities and their Tableau site(s).
SSL enabled.
Notes/Issues
We recommend cleaning up Tableau views for data extraction such as removing totals, subtotals, and hidden or unnecessary dimensions and measures.
Endpoint syntax is case-sensitive, except for the parameters.
With the beta API, some extracted characters, such as commas and line breaks, can mess up the CSV file.
The order of the parameters after ? is not relevant.