You can probably get this using Tableau's Postgres database.
You can look into this more in the Tableau Administrator Guide under Create Custom Administrative Views.
Either way, let me ping Toby Erkson and see what his thoughts are.
I agree with Rody that custom admin view is the way to go. Some helpful info:
1) See Tableau Postgres possible joins here | Tableau Public. Make sure you change "possible joins for" to "readonly" on the top left corner instead of the old account "tableau."
2) Here's the data dictionary for your referemce.
3) Mark Jackson, one of Tableau's Zen masters, has one of my favorite custom admin views. Check it out for inspirations here.
I believe Rody's idea is the best bet. Alternatively, you can parse out the information from the xml although it won't contain the friendly names.
Ninja Edit: You might also find this useful.
and the unsupported way
Rody is right.
Here's a quick and dirty workbook that will get you the basic info you want. The Owner info is for the workbook, not the View (aka Sheet).
Open the workbook and click the Edit Connection button because the connection will not work:
You need to enter in the info necessary for your Tableau Server then go to Sheet 1.
BasicInfo.twb 153.6 KB
All good answers above from everyone. The workbook maybe the easy way go about getting the specific set of data you want. You could create an extract of the workbook and set it up to refresh as well.
Depending on your use case, you can automate most of this by writing a REST API client for retrieving the data and integrating it downstream however you need to. For example, If you need to do this over and over and need to integrate it in your other governance reporting process this may give you an alternate flexible avenue. The API's will give you a lot more information but may not give you everything (like going to postgres will get you).
You can make the appropriate tradeoff's but there are multiple ways of doing this.