I really like the improvements to the version 2.0 REST API, but I have a few suggestions that I think might improve things for our usage scenarios. I also have a few questions down below.
- From what I can tell, currently there is no way to return the list of views for all workbooks in a single call, e.g. through the "Query Workbooks for User" endpoint. I was surprised by this because previous versions of the API returned this information according to the older documentation.
- To go along with the last bullet, since pagination is supported in the resources that return collections I think it would be extremely useful to also expose some kind of first-class filtering mechanism. For example, if I'm trying to find a workbook that has a word in its name, I would need to query for and cycle through all workbooks in my code which is definitely not ideal. This will become even more important as the list of workbooks in an installation continues to grow...
- Expose an easier way to interface the trusted authentication mechanism and the use of the REST API "signin" endpoint. It looks like when you use trusted authentication and use a valid token to make a request to the server a "Set-Cookie" response header value of "workgroup_session_id=<token>; Path=/; HttpOnly" is returned. This is nice because that returned token can be used in the "X-Tableau-Auth" header in REST calls without needing to first invoke the "signin" endpoint. Having an easier way to get this token via the REST API would be really nice so we don't need to sign in as a hard-coded Tableau user in our application -- we can instead use the current user's identity via the trusted authentication. Maybe the "signin" resource can be extended to perform this logic for us?
Are these bullets above accurate with the current state of the API? I am also wondering if I've missed something - are there ways to use the API today, especially to achieve the first two bullets?
Also, to address the first bullet, we are using the "workbooks.xml" endpoint which we have found to be a useful stop-gap measure (documented here: http://tableaulove.tumblr.com/post/69383091006/tableau-server-xml-information-files-the-master). Are these undocumented endpoints going to be deprecated or removed any time soon?
Thanks for any help.