tableau-api-lib
This library enables developers to call any method seen in Tableau Server's REST API documentation.
What it is and what it does
tableau-api-lib is a Python wrapper around Tableau Server's REST API that lets you call any documented API method and receive the HTTP response directly. Instead of manually constructing HTTP requests, you import the library, configure a connection with your server credentials, and call methods like query_sites() or query_workbooks_on_site() that map directly to Tableau's API reference. Each method returns a response object whose JSON body you parse to extract the data you need.
The library is designed for automating Tableau administrative tasks—downloading PDFs or images of dashboards across multiple sites, querying users and groups, managing permissions, or chaining API calls to build workflows that Tableau Server does not provide natively. It depends on requests, urllib3, pandas, requests-toolbelt, bleach, typeguard, and packaging to handle HTTP communication, data manipulation, and type validation.
Use it for:
- Automate bulk export of dashboards or views as PDFs or images across multiple Tableau sites and workbooks.
- Query all sites, workbooks, users, and groups on a Tableau Server and build administrative reports or inventories.
- Programmatically manage Tableau Server permissions, ownership, or metadata without manual UI interaction.
- Unpack paginated API results using the extract_pages() utility to handle large result sets beyond the default 100-item page size.
- Chain multiple REST API calls together to accomplish tasks not directly supported by a single Tableau Server API endpoint.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to call Tableau Server's REST API methods, returning HTTP responses with status codes and JSON bodies for automating Tableau administrative tasks.
Yes, if you need to automate Tableau Server tasks and can accept dormant maintenance. The library is stable and covers the full REST API surface, install friction is low, and there are no known vulnerabilities. However, verify compatibility with your Tableau Server version and be prepared to maintain or fork it if Tableau's API changes significantly—no updates have been released since 2022-10-15.
Install
tableau-api-lib on PyPI
pip
pip install tableau-api-libuv
uv add tableau-api-libpoetry
poetry add tableau-api-libInstalling tableau-api-lib
Before you install
Low install friction with a pure-Python wheel and common dependencies. However, the package is dormant—last commit was 2023-10-24 and latest release 2022-10-15, over 1399 days ago. No active maintenance signal.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute it freely with minimal restrictions.
Quickstart
pip install tableau-api-lib
from tableau_api_lib import TableauServerConnection
config = {'tableau_prod': {'server': 'https://your-server.com', 'api_version': '2.0', 'username': 'user', 'password': 'pass', 'site_name': 'site', 'site_url': 'url'}}
connection = TableauServerConnection(config_json=config)
connection.sign_in()
response = connection.query_sites()
print(response.json())
connection.sign_out()
Requires a running Tableau Server instance with valid credentials and network access to authenticate and make API calls.
Verify before relying
- Whether the library remains compatible with current Tableau Server API versions given the dormant maintenance status.
- Whether all 7 runtime dependencies remain actively maintained and secure.
Package facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — requests, urllib3, pandas, requests-toolbelt, bleach, typeguard, packaging |
| Maintenance | dormant — 1,399 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,166,930/month — #4,277 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: tableau_api_lib-0.1.50-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
tableauserverclientA Python client library for the Tableau Server…
permissive · top 1,000 on PyPI
tableauhyperapiAutomate creation, reading, and modification of…
permissive · top 5,000 on PyPI
tableaudocumentapiReads and modifies Tableau workbook and data…
permissive · top 15,000 on PyPI
SharePlumSharePlum provides a Python interface to…
permissive · top 5,000 on PyPI
fastapi-paginationAdds pagination support to FastAPI applications…
permissive · top 5,000 on PyPI
apache-airflow-providers-tableauIntegrates Tableau with Apache Airflow,…
permissive · top 5,000 on PyPI
pantabConverts DataFrames to and from Tableau Hyper…
permissive · top 15,000 on PyPI
dominodatalabProvides Python bindings to interact with the…
permissive · top 15,000 on PyPI
sharepyHandles authentication to SharePoint Online and…
copyleft · top 15,000 on PyPI
tplink-omada-clientA Python client library for interacting with…
permissive · top 15,000 on PyPI