Skip to main content

Web server Tableau uses to run Python scripts.

Project description

TabPy (the Tableau Python Server) is an external service implementation which expands Tableau's capabilities by allowing users to execute Python scripts and saved functions via Tableau's table calculations.



Breaking changes

  • TabPy fails with 400 when it is not configure for authentication but credentials are provided by client.

Bug fixes

  • When TabPy is running with no console attached it is not failing with 500 when trying to respond with 401 status.
  • tabpy.query() failing when auth is configured.


  • Minor code cleanup.



  • Authorization is now required for the /info API method. This method did not check authentication previously. This change is backwards compatible with Tableau clients.
  • Improved config parsing flexibility. Previously the TABPY_EVALUATE_TIMEOUT setting would be set to a default if tabpy couldn't parse the value. Now it will throw an exception at startup.



  • Minor: feature name changed to analytics extensions.
  • Startup script files deleted.
  • Index page updated.


  • TabPy is now Tableau Supported (used to be Community Supported).



  • Models deployment doesn't depend on pip._internal anymore.
  • Package size reduced.



  • TabPy works with Python 3.8 now.
  • Documentation updates with referencing Tableau Help pages.
  • Added Client.remove() method for deleting deployed models.

Bug Fixes

  • Fixed failing Ctrl+C handler.
  • Fixed query_timeout bug.
  • Fixed None in result collection bug.
  • Fixed script evaluation with missing result/return bug.
  • Fixed startup failure on Windows for Python 3.8.



  • Added Ctrl+C handler
  • Added configurable buffer size for HTTP requests
  • Added anvoa to supported pre-deployed models in tabpy



  • Enabled the use of environment variables in the config file.



  • Fixed file names for package building.
  • Fixed reading version info for /info call.



  • TabPy is pip package now
  • Models are deployed with updated script



  • Added t-test model
  • Fixed models call with /evaluate for HTTPS
  • Migrated to Tornado 6
  • Timeout is configurable with TABPY_EVALUATE_TIMEOUT config file option



  • Scripts, documentation, and integration tests for models
  • Small bug fixes
  • Added request context logging as a feature controlled with TABPY_LOG_DETAILS configuration setting.
  • Updated documentation for /info method and v1 API.
  • Added integration tests.



  • Added basic access authentication (all methods except /info)
  • tabpy-tools can deploy models to TabPy with authentication on
  • Increased unit tests coverage
  • Travis CI for merge requests: unit tests executed, code style checking


Breaking changes

  • Logger configuration now is in TabPy config file.


  • Remove versioneer and just replace it with VERSION file
  • Require Python 3.6.5
  • Require jsonschema to be compatible with 2.3.0
  • Added setup instructions (known issues) for CentOS


  • Fixed dependency on tabpy-tools in startup scripts
  • Fixed Python version dependency in tabpy-server setup script


Breaking changes

  • The config file is now not just Python code but an actual config
  • Tornado config file has a different setting for CORS
  • Setup scripts are deleted - setup (if needed) happens with the startup script
  • tabpy-client is tabpy-tools now


  • Secure connection (HTTPS) is supported with Tableau 2019.2 and newer versions
  • Documentation is improved with more examples added
  • Versioning is done with Versioneer and github release tags
  • Improved logging
  • Unit tests are passing now
  • Configurations for Postman and Swagger are available to use those against running TabPy


  • Initial version

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for tabpy, version 2.2.0
Filename, size File type Python version Upload date Hashes
Filename, size tabpy-2.2.0.tar.gz (83.2 kB) File type Source Python version None Upload date Hashes View
Filename, size tabpy-2.2.0-py2.py3-none-any.whl (108.5 kB) File type Wheel Python version py2.py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page