tableauhyperapi
Hyper API for Python
What it is and what it does
Tableau Hyper API is a Python library for programmatic interaction with Tableau's native extract format (.hyper files). It lets you create new extracts, open existing ones, and perform insert, delete, update, and read operations on the data within them. This is useful when you need to build data sources that Tableau doesn't natively connect to, or when you want to automate complex ETL pipelines with custom logic that goes beyond Tableau's built-in refresh capabilities.
The library is maintained by Tableau and released as platform-specific wheels for macOS (both Intel and ARM), Linux, and Windows. It depends on cffi for C foreign function interface bindings. The package is actively maintained (last release 7 days ago) and carries an Apache-2.0 license, making it suitable for both open-source and commercial projects.
Use it for:
- Build custom ETL pipelines that extract, transform, and load data into Tableau extracts on a schedule outside Tableau's native connectors.
- Create Tableau extract files for proprietary or unsupported data sources, then publish them to Tableau Server for consumption.
- Implement rolling-window or incremental update logic for large datasets by reading and modifying existing .hyper files programmatically.
- Automate data validation and quality checks on extract files before publishing to Tableau.
- Integrate Tableau extract generation into a larger data pipeline or orchestration framework (e.g., Airflow, dbt).
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Automate creation, reading, and modification of Tableau extract (.hyper) files programmatically, enabling custom ETL workflows and data source integration outside Tableau's native connectors.
Yes, if you need to automate Tableau extract creation or modification outside Tableau's UI or native connectors. The active maintenance, permissive license, and platform-specific wheel distribution make it reliable for production use. Medium install friction is manageable for most teams. No known vulnerabilities. Install only if you're already committed to Tableau as your BI platform and have a specific ETL or data-source automation need.
Install
tableauhyperapi on PyPI
pip
pip install tableauhyperapiuv
uv add tableauhyperapipoetry
poetry add tableauhyperapiInstalling tableauhyperapi
Before you install
Medium install friction due to platform-specific wheels (macOS x86_64/arm64, Linux, Windows); depends on cffi. Released 7 days ago with active maintenance status, suggesting ongoing support.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most deployment contexts.
Quickstart
pip install tableauhyperapi
from tableauhyperapi import HyperProcess, Connection, TableDefinition, SqlType
with HyperProcess() as hyper:
with Connection(hyper.endpoint, 'myfile.hyper') as connection:
# Create, insert, or query data in .hyper files
Requires Python 3.6+; platform-specific binary wheels mean installation is OS-dependent and may require matching your exact architecture (x86_64 or arm64 on macOS).
Verify before relying
- Whether cffi must be pre-installed or is automatically resolved during tableauhyperapi installation
- Performance characteristics and scalability limits for large extract files or high-volume ETL operations
- Compatibility with specific Tableau Server or Desktop versions beyond Python version support
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — cffi |
| Maintenance | actively maintained — 7 days since the last release |
| First released | |
| Downloads | 1,434,845/month — #3,902 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: tableauhyperapi-0.0.26225-py3-none-macosx_10_11_x86_64.whl; tableauhyperapi-0.0.26225-py3-none-macosx_13_0_arm64.whl; tableauhyperapi-0.0.26225-py3-none-manylinux2014_x86_64.whl; tableauhyperapi-0.0.26225-py3-none-win_amd64.whl
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
hyperleaupGenerates Tableau Hyper files directly from…
permissive · top 15,000 on PyPI
pantabConverts DataFrames to and from Tableau Hyper…
permissive · top 15,000 on PyPI
petlpetl extracts, transforms, and loads tables of…
permissive · top 5,000 on PyPI
tableaudocumentapiReads and modifies Tableau workbook and data…
permissive · top 15,000 on PyPI
tableau-api-libProvides Python bindings to call Tableau…
permissive · top 5,000 on PyPI
tableauserverclientA Python client library for the Tableau Server…
permissive · top 1,000 on PyPI
apache-airflow-providers-tableauIntegrates Tableau with Apache Airflow,…
permissive · top 5,000 on PyPI
dltdlt automates extraction, schema inference, and…
permissive · top 5,000 on PyPI
python-pptxpython-pptx creates, reads, and updates…
permissive · top 1,000 on PyPI
pbxprojReads, modifies, and writes Xcode .pbxproj…
permissive · top 15,000 on PyPI