This repository is a maintained fork of Tableau’s document-api-python.
It extends the original Document API with object-oriented access to dashboards, worksheets, filters, and datasource dependencies.
All enhancements are fully backward compatible.
If you are looking for the official Tableau Document API, see the upstream project.
This fork introduces the following major improvements:
- Dashboard objects – structured representation with worksheet containment and dependency tracking
- Worksheet objects – access to datasource dependencies, filters, rows, columns, and column instances
- Filter support – dedicated
Filterclass, including parsing of nestedgroupfilterstructures - Datasource dependencies – new
DatasourceDependencyclass separating fields from dependency columns and instances - Query interface – high-level
workbook.queryAPI for cross-workbook analysis and dependency mapping - Field reference cleaning – normalization of Tableau’s internal field naming conventions
- Workbook TWB XML string input – Modified
Workbookclass to accept TBW XML string as input
Detailed descriptions, examples, and resolved issue references are available in Version 012 Enhancements.
Several long-standing enhancement requests in the upstream project are addressed in this fork, including:
- #33 – Datasource Filters
- #138 – Datasource-dependencies columns passed as fields
- #164 – Expose all child objects of Workbook/Worksheet
- #246 – Missing attributes for meta-data records
- #129 – Retrieve all fields used in a workbook
For a full explanation, see the “Resolved Upstream Issues” section in Version 012 Enhancements.
All original capabilities of the Tableau Document API are preserved, including:
- Support for TWB, TWBX, TDE and TDSX files
- Access to connection information (server, username, database, authentication type, connection type)
- Updating connection details in workbooks and datasources
- Extracting field information from datasources and workbooks
For Hyper files, refer to the Tableau Hyper API.
For more information on the original API, see the Tableau API documentation.