Tableau REST API Library

Speed up your development with these library functions.

Tableau Server offers a wide range of functionality through its REST API interface. While this interface allows you to script a variety of different tasks, the coding required to use the REST API can be extensive. Our REST API Libraries for .Net, Java, Python, and PHP significantly reduce the amount of coding required to implement your desired interface.

Each Library Includes:

  • 71 powerful functions that speed your integration project
  • More than 5,000+ lines of code in each library
  • All libraries are Free to use
  • We update these libraries regularly

Multiple Language Libraries

Need Some Help?

If you require a custom integration solution, we suggest that you contact Tableau's Professional Services team ( for a comprehensive solution.

Using .Net REST API Library

The .Net REST API Library is packaged into a single .dll file that you can include in your integration project.

using tableauREST9_v1;
// setup the variables
string ts_url = "http://localhost:8000";
string ts_user = "admin";
string ts_pass = "admin";
string ts_site = "";
string user_name = "testuser"; // this is the username for logging into Tableau

// start the tableau controller
tableau_controller tc = new tableau_controller(ts_url, ts_site, ts_user, ts_pass);

// get the users array
DataTable user_list = tc.tsGetWorkbooksByUser(user_name);

Using Java REST API Library

The Java REST API Library is packaged into a single .jar file that you can include in your integration project.

import tabRest.tabRest;

// setup the variables
String ts_url = "http://localhost:8000";
String ts_user = "admin";
String ts_pass = "admin";
String ts_site = ""; 
String user_name = "testuser"; // this is the username for logging into Tableau

// start the tableau controller
String[] user_list = new String[20];

tabRest tab1 = new tabRest(ts_url, ts_user, ts_pass, ts_site);
user_list = tab1.tsGetWorkbooksByUser(user_name);


Library Support

We are in the process of releasing our support systems. Please check back here soon.

Library Function & Status

  1.0.3 1.0.4 0.9 ALPHA  
Workbook Functions .NET JAVA PHP Python
tsAddViewFavorite T X
tsAddWorkbookFavorite T X
tsAddWorkbookPermission T X
tsAddWorkbookTag T X
tsDeleteViewFavorite T X
tsDeleteWorkbook X X
tsDeleteWorkbookFavorite T X
tsDeleteWorkbookPermission T X
tsDeleteWorkbookTag T X
tsDownloadWorkbook X X
tsGetPermissionsFromWorkbook T X
tsGetViewIdFromName T X
tsGetViewNameFromId T X
tsGetViewsFromWorkbook X X
tsGetWorkbookById X X
tsGetWorkbookConnections X X
tsGetWorkbookIcon T X
tsGetWorkbookIdByName X X
tsGetWorkbookNameById X X
tsGetWorkbooksByUser X X
tsGetWorkbookTags T X
tsGetWorkbookViewIcon T X
tsPublishWorkbook X X
tsUpdateWorkbook T X
tsUpdateWorkbookConnection T X
User Functions .NET JAVA PHP Python
tsAddGroup T X
tsAddUser T X
tsAddUserToGroup T X
tsAddUserToSite T X
tsDeleteUserFromGroup T X
tsDeleteUserFromSite T X
tsGetGroupIdByName X X
tsGetGroupNameById T X
tsGetGroupsFromSite T X
tsGetUserById X X
tsGetUserIdByName X X
tsGetUserNameById X X
tsGetUsersFromGroup T X
tsGetUsersFromSite X X
tsUpdateGroup T X
tsUpdateUser T X
Project Functions .NET JAVA PHP Python
tsAddProject T X
tsAddProjectPermission T X
tsDeleteProject T X
tsDeleteProjectPermission T X
tsGetPermissionsFromProject T X
tsGetProjectIdByName X X
tsGetProjectNameById X X
tsGetProjects X X
tsUpdateProject T X
Site Functions .NET JAVA PHP Python
tsAddSite T X
tsDeleteSite T X
tsGetSiteContentUrlByName X X
tsGetSiteIdByName X X
tsGetSiteNameById X X
tsGetSites X X
tsUpdateSite T X
DataSource Functions .NET JAVA PHP Python
tsAddDataSourcePermission T X
tsDeleteDataSource T X
tsDeleteDataSourcePermission T X
tsDownloadDataSource T X
tsGetDataSourceIdByName X X
tsGetDataSourceNameById X X
tsGetDataSources X X
tsGetPermissionsFromDataSource T X
tsPublishDataSource T X
Utility Functions .NET JAVA PHP Python
tsLogin X X
getTsToken X X