tableauserverclient
A Python module for working with the Tableau Server REST API.
Decision gist · record as of 2026-08-14
Yes. This is the official Tableau Server client library, actively maintained with no known vulnerabilities, low install friction, and a permissive MIT license. Install it if you need to automate Tableau Server operations from Python or integrate Tableau into a larger workflow. The only constraint is the Python 3.10+ requirement.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; Tableau Server instance must be accessible at runtime.
- Low friction install with a pure Python wheel.
- Actively maintained as of August 2026 with recent releases.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute the package freely provided you include the license notice.
last release 2026-06-25 (50 days) · last repo commit 2026-08-11 · 714 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 47,673,713 downloads/mo, #598 on PyPI
Alternatives
Verify before relying
pip install tableauserverclient
import tableauserverclient as TSC
server = TSC.Server('https://tableau.example.com')
server.auth.sign_in(username, password)
server.workbooks.publish(workbook_path, project_id)- Whether all REST API endpoints are covered or if some operations still require direct API calls.
- Performance characteristics when publishing large workbooks or managing thousands of users.
- Exact version compatibility matrix between TSC and different Tableau Server releases.
What it is and what it does
Tableau Server Client is an official Python wrapper around the Tableau Server REST API, maintained by Tableau. It abstracts the HTTP layer so you can interact with Tableau Server through Python objects and method calls instead of constructing raw REST requests. The library handles authentication, request formatting, and response parsing, letting you focus on the business logic of automating Tableau operations.
Typical use cases include publishing workbooks and data sources on a schedule, provisioning users and groups in bulk, querying metadata about projects and sites, and building automation workflows that integrate Tableau with other systems. It depends on standard libraries like requests and urllib3 for HTTP communication, plus defusedxml for safe XML parsing. The package is actively maintained and supports current Python versions (3.10 through 3.14).
Use it for
- Automate daily or weekly publication of workbooks and data sources from a Python data pipeline.
- Bulk provision or deprovision Tableau users and groups from an identity management system.
- Query and audit Tableau Server metadata—projects, workbooks, users—programmatically.
- Build a custom dashboard or reporting tool that reads Tableau Server state and triggers actions.
- Integrate Tableau operations into a CI/CD or orchestration workflow (e.g., deploy workbooks on release).
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
This is the official Tableau Server client library, actively maintained with no known vulnerabilities, low install friction, and a permissive MIT license. Install it if you need to automate Tableau Server operations from Python or integrate Tableau into a larger workflow. The only constraint is the Python 3.10+ requirement.
Install
tableauserverclient on PyPI
Before you install
Low friction install with a pure Python wheel. Actively maintained as of August 2026 with recent releases. Requires Python 3.10 or later, dropping support for older versions to align with Python's official support timeline.
Requires Python 3.10 or later; Tableau Server instance must be accessible at runtime.
License in practice
MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute the package freely provided you include the license notice.
Quickstart
pip install tableauserverclient
import tableauserverclient as TSC
server = TSC.Server('https://tableau.example.com')
server.auth.sign_in(username, password)
server.workbooks.publish(workbook_path, project_id)
Verify before relying
- Whether all REST API endpoints are covered or if some operations still require direct API calls.
- Performance characteristics when publishing large workbooks or managing thousands of users.
- Exact version compatibility matrix between TSC and different Tableau Server releases.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 5 packagesdefusedxmlpackagingrequestsurllib3typing_extensions |
| Maintenance | Actively maintained 50 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 47,673,713 / month, #598 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14 |
Evidence: tableauserverclient-0.41-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “tableau server rest api client”
- tableauserverclientA Python client library for the Tableau Server REST API that lets you…
- tableau-api-libProvides Python bindings to call Tableau Server's REST API methods,…
- apache-airflow-providers-tableauIntegrates Tableau with Apache Airflow, enabling orchestration of…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
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.
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…
Reads and modifies Tableau workbook and data source files (TWB, TWBX, TDE, TDSX) by programmatically updating their internal XML, without creating files from scratch.
However, verify that it builds cleanly on your Python version before committing to it in production, and be aware that Tableau does not officially support this API.
Automate creation, reading, and modification of Tableau extract (.hyper) files programmatically, enabling custom ETL workflows and data source integration outside Tableau's native connectors.
Install only if you're already committed to Tableau as your BI platform and have a specific ETL or data-source automation need.
Integrates Tableau with Apache Airflow, enabling orchestration of Tableau operations and data workflows through Airflow DAGs.
Install it if you run Airflow and need to automate Tableau operations; the low install friction and permissive license make it a straightforward addition to an…
Provides a Model Context Protocol server that enables AI agents to create, read, and modify Excel workbooks programmatically without requiring Microsoft Excel to be installed.
A Python client library for the Smartsheet API that lets you programmatically read, write, and manage sheets, rows, columns, and other Smartsheet resources from Python applications.
Install it if you need to programmatically interact with Smartsheet from Python; the only prerequisite is a valid Smartsheet API token.
See also SharePlum · google-cloud-monitoring-dashboards · google-cloud-bigtable · google-cloud-tpu