What is your idea?
Provide additional filtering and support using the REST API Calls.
What problem are you trying to solve or what scenario would this idea solve?
We embed Tableau into our website and we do this by allowing our users who are logged into our website to create a "widget" where they can select a given view to be displayed.
They set the Site, Project, Workbook, and then View. After which they can setup connections between the Tableau Viz and the other Widgets.
The different Projects/Workbooks/Views are being grabbed using the .XML endpoints (server/workbooks.xml).
I believe we should move to the REST API to get this information, but the REST API is limited.
Here are some requests that are not currently available.
- Get Sites - Currently this is limited to System Admins, though it would be great to get have any user to be able to get the set of Sites they have Read Access.
- Get Workbooks - Currently, the only command that exists is "Get Workbooks for User" - the problem with this is that logged in user is already a user, so why do I need to supply a User Id? Give me the workbooks that the logged in user has Read access.
- The .XML endpoints allow for filtering via project and searching. These would be great for the REST API to have.
- Get Views for a View - get the views that make up a dashboard.
- Get Marks for a View - get the underlying Mark data that is supplied in a View
If these are difficult
Provide a way to link the REST API with the legacy .XML endpoints. Have the .XML endpoints provide the REST API ids (project/workbook/etc), or have the REST API calls provide the legacy integer IDs.
What workaround have you found and used so far (if any)?
Current workarounds for the above are using the .XML endpoints for filtering and searching (workbooks.xml?project=32)...
To get the Views/Sheets that make up a View/Dashboard, I'm loading a 0 width/height Viz and on first interaction I'm getting the sheets for the current sheet. It's a lot to have happen on the client side.
What is your role in your organization?
I'm a software engineer.