### Install and Verify Tabcmd Source: https://context7.com/tableau/tabcmd/llms.txt Install tabcmd using pip and verify the installation by checking its version. ```bash pip install tabcmd ``` ```bash tabcmd -v ``` -------------------------------- ### Install tabcmd using pip Source: https://github.com/tableau/tabcmd/blob/main/README.md Install the latest release of tabcmd directly from the command line using pip. This is a convenient way to get the tool without manual downloads. ```shell pip install tabcmd ``` -------------------------------- ### Install tabcmd Development Version Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Install the current work-in-progress version directly from the Git repository. Use with caution as APIs may change. ```shell pip install git+https://github.com/tableau/tabcmd.git@development ``` -------------------------------- ### Run tabcmd Tests Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Install the necessary dependencies and run the test suite for tabcmd. ```shell pip install .[test] pytest ``` -------------------------------- ### Python script examples for tabcmd Source: https://github.com/tableau/tabcmd/blob/main/README.md Alternative syntax for running tabcmd commands when executing them via a Python script. These examples mirror the basic command structure. ```shell tabcmd.py login --username [username] --password [password] --server [server_name] --site [site_name] ``` ```shell tabcmd.py createproject --name [project_name] ``` ```shell tabcmd.py help ``` -------------------------------- ### Login to Tableau Server/Cloud Source: https://github.com/tableau/tabcmd/blob/main/README.md Example of how to log in to Tableau Server or Tableau Cloud using tabcmd. Ensure you replace placeholders with your actual credentials and server details. ```shell tabcmd login --username [username] --password [password] --server [server_name] --site [site_name] ``` -------------------------------- ### Uninstall tabcmd Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Run this command before installing the stable version if you currently have the development version installed. ```shell pip uninstall tabcmd ``` -------------------------------- ### CSV Example for User Creation Source: https://context7.com/tableau/tabcmd/llms.txt This CSV format is used with the `createusers` command to define user properties such as username, password, full name, license level, and email. ```csv username,password,fullName,licenseLevel,adminLevel,publishingCapability,emailAddress jsmith,P@ssw0rd,John Smith,Creator,None,true,jsmith@example.com agarcia,,Ana Garcia,Viewer,None,false,agarcia@example.com ``` -------------------------------- ### Check tabcmd version Source: https://github.com/tableau/tabcmd/blob/main/README.md Command to check the version of your installed tabcmd. This is helpful for troubleshooting and ensuring compatibility. ```shell tabcmd -v ``` -------------------------------- ### get — Download a workbook, data source, or view file from the server Source: https://context7.com/tableau/tabcmd/llms.txt Retrieves content from Tableau Server by URL path and saves it as a local file. Views can be retrieved as PDF, PNG, or CSV; workbooks as TWB/TWBX; data sources as TDS/TDSX. ```APIDOC ## `get` — Download a workbook, data source, or view file from the server Retrieves content from Tableau Server by URL path and saves it as a local file. Views can be retrieved as PDF, PNG, or CSV; workbooks as TWB/TWBX; data sources as TDS/TDSX. ```bash # Download a workbook as .twbx tabcmd get "workbooks/SalesReport.twbx" \ --filename my_local_copy.twbx # Download a view as PDF tabcmd get "views/SalesReport/RegionalBreakdown.pdf" \ --filename regional.pdf # Download a view as PNG tabcmd get "views/SalesReport/RegionalBreakdown.png" \ --filename regional.png # Download a view as CSV tabcmd get "views/SalesReport/DataTable.csv" \ --filename data.csv # Download a data source tabcmd get "datasources/SalesData.tdsx" \ --filename sales_data.tdsx ``` ``` -------------------------------- ### Display help information Source: https://github.com/tableau/tabcmd/blob/main/README.md Use the `help` command to view available tabcmd commands and their options. This is useful for discovering functionality. ```shell tabcmd help ``` -------------------------------- ### Build and Run tabcmd Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Steps to build the tabcmd package and run it from the command line. Ensure mypy and black checks pass before merging. ```shell pip install build python setup.py build python -m tabcmd.py [command_name] [--flags] ``` -------------------------------- ### Run Newly Created Executable Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Execute the tabcmd executable from a console window in the same directory as the file tabcmd.py. Use --help to see available commands. ```bash dist\windows\tabcmd.exe --help ``` ```bash dist\windows\tabcmd.exe publish --country FR --language FR cookie.twbx ``` -------------------------------- ### Publish Tableau Sample Content Source: https://context7.com/tableau/tabcmd/llms.txt The `publishsamples` command uploads Tableau's built-in sample workbooks to a specified project. Authentication details like username and password are required. ```bash tabcmd publishsamples \ --project "Sample Content" \ --username admin \ --password secret ``` -------------------------------- ### Run tabcmd Tests Against Live Server Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Log in to your Tableau Server and run end-to-end tests against a live instance. This requires server credentials. ```shell python -m tabcmd login {your server info here} pytest -q tests\e2e\online_tests.py -r pfE ``` -------------------------------- ### Create Top-Level Project Source: https://context7.com/tableau/tabcmd/llms.txt Creates a new project at the root level of the Tableau Server. Specify the desired project name using the --name flag. ```bash tabcmd createproject \ --name "Finance Reports" ``` -------------------------------- ### Create a new project Source: https://github.com/tableau/tabcmd/blob/main/README.md Command to create a new project on Tableau Server or Tableau Cloud. Specify the desired project name using the `--name` flag. ```shell tabcmd createproject --name [project_name] ``` -------------------------------- ### Export View as PDF Source: https://context7.com/tableau/tabcmd/llms.txt Exports a specific view from a workbook as a PDF file. Specify the workbook and view name, and the desired output filename. ```bash tabcmd export "SalesWorkbook/RegionalView" \ --pdf \ --filename regional_sales.pdf ``` -------------------------------- ### Basic tabcmd command structure Source: https://github.com/tableau/tabcmd/blob/main/README.md The general syntax for running tabcmd commands. Replace `[command_name]` with the desired action and `[--flags]` with specific options. ```shell tabcmd [command_name] [--flags] ``` -------------------------------- ### Export View as PNG Image Source: https://context7.com/tableau/tabcmd/llms.txt Exports a view as a PNG image file. You can specify dimensions (width, height) and resolution for the output image. ```bash tabcmd export "SalesWorkbook/RegionalView" \ --png \ --filename chart.png \ --width 1200 \ --height 800 \ --resolution high ``` -------------------------------- ### Convert .properties to .po Source: https://github.com/tableau/tabcmd/blob/main/bin/i18n/README.md This command converts the combined .properties file into a human-readable .po file. This step is idempotent and overwrites existing output. ```bash python -m doit po ``` -------------------------------- ### createproject — Create a new project on the server Source: https://context7.com/tableau/tabcmd/llms.txt Creates a project at the top level or within an existing parent project path. ```APIDOC ## `createproject` — Create a new project on the server Creates a project at the top level or within an existing parent project path. ```bash # Create a top-level project tabcmd createproject \ --name "Finance Reports" ``` ``` -------------------------------- ### Download View as PDF Source: https://context7.com/tableau/tabcmd/llms.txt Downloads a specific view from Tableau Server as a PDF file. The URL path must include the .pdf extension. ```bash tabcmd get "views/SalesReport/RegionalBreakdown.pdf" \ --filename regional.pdf ``` -------------------------------- ### Convert .properties to .mo Source: https://github.com/tableau/tabcmd/blob/main/bin/i18n/README.md This command converts strings from .properties files to .mo format for bundling. It combines .properties files, discards unused strings, and normalizes characters. This step is idempotent and overwrites existing output. ```bash python -m doit properties ``` -------------------------------- ### Download Workbook as .twbx Source: https://context7.com/tableau/tabcmd/llms.txt Downloads a published workbook from Tableau Server and saves it locally as a .twbx file. Requires specifying the server path and local filename. ```bash tabcmd get "workbooks/SalesReport.twbx" \ --filename my_local_copy.twbx ``` -------------------------------- ### Create Tableau Projects Source: https://context7.com/tableau/tabcmd/llms.txt Use `createproject` to add new projects to Tableau Server. Projects can include descriptions and be nested within existing ones. The `--continue-if-exists` flag prevents errors if the project already exists. ```bash tabcmd createproject \ --name "Q4 Analysis" \ --description "Fourth quarter financial analysis reports" ``` ```bash tabcmd createproject \ --name "Q4 Reports" \ --parent-project-path "Finance/2024" ``` ```bash tabcmd createproject \ --name "Finance Reports" \ --continue-if-exists ``` -------------------------------- ### Create Extract for Data Source Source: https://context7.com/tableau/tabcmd/llms.txt Schedules the creation of an extract for a published data source. Specify the data source name and its project. ```bash tabcmd createextracts \ --datasource "SalesData" \ --project "Data Sources" ``` -------------------------------- ### createproject Source: https://context7.com/tableau/tabcmd/llms.txt Creates a new project on Tableau Server. Projects can be nested and can optionally succeed silently if they already exist. ```APIDOC ## createproject — Create a project Creates a new project on Tableau Server. ### Method ```bash tabcmd createproject ``` ### Parameters #### Path Parameters - **--name** (string) - Required - The name of the project to create. - **--description** (string) - Optional - A description for the project. - **--parent-project-path** (string) - Optional - The path to the parent project for creating a nested project. - **--continue-if-exists** - Optional - If specified, the command will succeed silently if the project already exists. ### Request Example ```bash # Create a project with description tabcmd createproject \ --name "Q4 Analysis" \ --description "Fourth quarter financial analysis reports" # Create a nested sub-project tabcmd createproject \ --name "Q4 Reports" \ --parent-project-path "Finance/2024" # Create a project, succeeding silently if it already exists tabcmd createproject \ --name "Finance Reports" \ --continue-if-exists ``` ``` -------------------------------- ### Download View as PNG Source: https://context7.com/tableau/tabcmd/llms.txt Downloads a view from Tableau Server as a PNG image file. The URL path must include the .png extension. ```bash tabcmd get "views/SalesReport/RegionalBreakdown.png" \ --filename regional.png ``` -------------------------------- ### createsite Source: https://context7.com/tableau/tabcmd/llms.txt Creates a new site on Tableau Server with various configuration options including quotas, URL, and admin mode. ```APIDOC ## createsite — Create a new site on Tableau Server Creates a new Tableau Server site with configurable user quotas, storage limits, and admin permissions. ### Method ```bash tabcmd createsite ``` ### Parameters #### Path Parameters - **"Site Name"** (string) - Required - The name of the new site. - **--url** (string) - Optional - A custom URL identifier for the site. - **--user-quota** (integer) - Optional - The maximum number of users allowed on the site. - **--storage-quota** (integer) - Optional - The maximum storage space (in MB) allowed for the site. - **--no-site-mode** - Optional - Enables content-only admin mode for the site. - **--extract-encryption-mode** (string) - Optional - Enforces extract encryption for the site. Accepted values: `enforced`. - **--continue-if-exists** - Optional - If specified, the command will succeed silently if the site already exists. ### Request Example ```bash # Create a basic site tabcmd createsite "NewDepartment" # Create a site with a custom URL and user quota tabcmd createsite "Marketing Analytics" \ --url "marketing-analytics" \ --user-quota 50 # Create a site with storage quota (in MB) and content-only admin mode tabcmd createsite "DataTeam" \ --storage-quota 10240 \ --no-site-mode # Create a site with enforced extract encryption tabcmd createsite "SecureData" \ --extract-encryption-mode enforced # Create silently if site already exists tabcmd createsite "Marketing" --continue-if-exists ``` ``` -------------------------------- ### Create Tableau Sites Source: https://context7.com/tableau/tabcmd/llms.txt Use `createsite` to provision new sites on Tableau Server, with options for custom URLs, user quotas, storage limits, and content-only admin modes. The `--continue-if-exists` flag allows for silent creation if the site already exists. ```bash tabcmd createsite "NewDepartment" ``` ```bash tabcmd createsite "Marketing Analytics" \ --url "marketing-analytics" \ --user-quota 50 ``` ```bash tabcmd createsite "DataTeam" \ --storage-quota 10240 \ --no-site-mode ``` ```bash tabcmd createsite "SecureData" \ --extract-encryption-mode enforced ``` ```bash tabcmd createsite "Marketing" --continue-if-exists ``` -------------------------------- ### Create Extract for All Embedded Data Sources in Workbook Source: https://context7.com/tableau/tabcmd/llms.txt Schedules extract creation for all data sources embedded within a specified workbook. Use the --include-all flag. ```bash tabcmd createextracts \ --workbook "SalesReport" \ --project "Finance" \ --include-all ``` -------------------------------- ### Create Encrypted Extract Source: https://context7.com/tableau/tabcmd/llms.txt Schedules the creation of an encrypted extract for a data source. Use the --encrypt flag. ```bash tabcmd createextracts \ --datasource "SalesData" \ --project "Secure" \ --encrypt ``` -------------------------------- ### createsiteusers Source: https://context7.com/tableau/tabcmd/llms.txt Adds existing server users to the current site using a CSV file and assigns them a specified role. ```APIDOC ## createsiteusers — Add users to the current site from a CSV file Adds existing server users to the current site with specified roles. ### Method ```bash tabcmd createsiteusers ``` ### Parameters #### Path Parameters - **siteusers.csv** (file) - Required - The path to the CSV file containing user data for the site. #### Query Parameters - **--role** (string) - Required - The role to assign to the users in the site (e.g., `Explorer`). ### Request Example ```bash tabcmd createsiteusers siteusers.csv --role Explorer ``` ``` -------------------------------- ### Publish Workbooks and Data Sources Source: https://context7.com/tableau/tabcmd/llms.txt Upload Tableau content like workbooks (.twbx) and data sources (.tds, .hyper) to a Tableau Server project. Supports overwriting, appending, and replacing existing content. ```bash tabcmd publish SalesReport.twbx \ --server https://my-server.example.com \ --username admin \ --password secret ``` ```bash tabcmd publish SalesReport.twbx \ --project "Finance Reports" \ --overwrite ``` ```bash tabcmd publish SalesReport.twbx \ --project "Q4 Reports" \ --parent-project-path "Finance/2024" ``` ```bash tabcmd publish Sales.tdsx \ --project "Data Sources" \ --db-username dbuser \ --db-password dbpass \ --save-db-password ``` ```bash tabcmd publish GoogleAnalytics.tdsx \ --project "Marketing" \ --oauth-username analytics@example.com \ --save-oauth ``` ```bash tabcmd publish /reports/folder/ \ --project "Automated Reports" \ --overwrite ``` ```bash tabcmd publish /reports/ \ --filetype twbx \ --recursive \ --project "Automated Reports" \ --overwrite ``` ```bash tabcmd publish Dashboard.twbx \ --name "Executive Dashboard" \ --project "Leadership" \ --tabbed \ --overwrite ``` ```bash tabcmd publish NewData.hyper \ --project "Data Sources" \ --append ``` ```bash tabcmd publish NewData.hyper \ --project "Data Sources" \ --replace ``` -------------------------------- ### List Tableau Sites Source: https://context7.com/tableau/tabcmd/llms.txt The `listsites` command displays all sites accessible to the current user. It can also retrieve specific information, such as the extract encryption mode for each site. ```bash tabcmd listsites ``` ```bash tabcmd listsites --get-extract-encryption-mode ``` -------------------------------- ### Log in to Tableau Server/Cloud Source: https://context7.com/tableau/tabcmd/llms.txt Authenticate to Tableau Server or Cloud using username/password or a Personal Access Token (PAT). Credentials are cached for subsequent commands. ```bash tabcmd login \ --username admin@example.com \ --password MyP@ssword \ --server https://my-tableau-server.example.com \ --site MySiteName ``` ```bash tabcmd login \ --server https://10az.online.tableau.com \ --site MyCloudSite \ --token-name "my-automation-token" \ --token-value "AbCdEfGhIjKlMnOpQrStUvWxYz123456" ``` ```bash tabcmd login \ --server https://my-server.example.com \ --site MySite \ --username admin \ --password-file /secure/path/password.txt ``` ```bash tabcmd login \ --server https://my-server.example.com \ --username admin \ --password secret \ --proxy corpproxy:8080 \ --timeout 60 ``` ```bash tabcmd login \ --server https://my-server.example.com \ --username admin \ --password secret \ --no-cookie ``` ```bash tabcmd login \ --server https://my-server.example.com \ --username admin \ --password secret \ --no-certcheck ``` -------------------------------- ### Update Localization Strings Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Use this command to regenerate updated strings for packaging. Ensure strings are added/edited in the specified properties file. ```python python -m doit properties po mo ``` -------------------------------- ### Build Windows Executable with PyInstaller Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Builds a Windows executable package using PyInstaller. Ensure you are on a Windows platform to build for Windows. The output is placed in the dist\windows directory. ```bash pyinstaller tabcmd-windows.spec --clean --distpath .\dist\windows ``` -------------------------------- ### Convert .po to .mo Source: https://github.com/tableau/tabcmd/blob/main/bin/i18n/README.md This command converts .po files into .mo files, which are not human-readable. It also validates the .mo files by loading them with gettext. This step is idempotent and overwrites existing output. ```bash python -m doit mo ``` -------------------------------- ### Export Commands Source: https://context7.com/tableau/tabcmd/llms.txt Commands for exporting views and workbooks in various formats like PDF, PNG, and CSV. ```APIDOC ## Export a view as PDF tabcmd export "SalesWorkbook/RegionalView" \ --pdf \ --filename regional_sales.pdf ## Export a full workbook as PDF (all sheets) tabcmd export "SalesWorkbook" \ --fullpdf \ --filename full_report.pdf \ --pagelayout landscape \ --pagesize a4 ## Export a view as PNG image tabcmd export "SalesWorkbook/RegionalView" \ --png \ --filename chart.png \ --width 1200 \ --height 800 \ --resolution high ## Export a view as CSV data tabcmd export "SalesWorkbook/DataView" \ --csv \ --filename data.csv ## Export with URL filter applied tabcmd export "SalesWorkbook/RegionalView" \ --pdf \ --filter "Region=West&Year=2024" \ --filename west_2024.pdf ``` -------------------------------- ### Export Full Workbook as PDF Source: https://context7.com/tableau/tabcmd/llms.txt Exports an entire workbook, including all sheets, as a single PDF. Options for page layout and size are available. ```bash tabcmd export "SalesWorkbook" \ --fullpdf \ --filename full_report.pdf \ --pagelayout landscape \ --pagesize a4 ``` -------------------------------- ### Generate Version Metadata Source: https://github.com/tableau/tabcmd/blob/main/contributing.md This command generates the version metadata file, which is used to store the version number reflected in the executable. ```python python -m doit version ``` -------------------------------- ### Manage Tableau Groups Source: https://context7.com/tableau/tabcmd/llms.txt Use `creategroup` to create a new group and `deletegroup` to remove an existing group from Tableau Server. Both commands require the group name as an argument. ```bash tabcmd creategroup --name "BI Analysts" ``` ```bash tabcmd deletegroup --name "OldTeam" ``` -------------------------------- ### Create Users from CSV Source: https://context7.com/tableau/tabcmd/llms.txt The `createusers` command imports users from a CSV file into Tableau Server. Specify roles, authentication types, and control error handling with `--complete` or `--no-complete`. The CSV must include columns like `username`, `password`, and `fullName`. ```bash tabcmd createusers users.csv ``` ```bash tabcmd createusers users.csv --role Viewer ``` ```bash tabcmd createusers users.csv --auth-type SAML ``` ```bash tabcmd createusers users.csv --complete ``` ```bash tabcmd createusers users.csv --no-complete ``` -------------------------------- ### Download View as CSV Source: https://context7.com/tableau/tabcmd/llms.txt Downloads the data from a view on Tableau Server as a CSV file. The URL path must include the .csv extension. ```bash tabcmd get "views/SalesReport/DataTable.csv" \ --filename data.csv ``` -------------------------------- ### Calculate Test Coverage Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Execute the coverage script to determine the test coverage percentage for the tabcmd project. ```shell bin/coverage.sh ``` -------------------------------- ### publishsamples Source: https://context7.com/tableau/tabcmd/llms.txt Publishes the built-in Tableau sample workbooks to a specified project on Tableau Server. ```APIDOC ## publishsamples — Publish Tableau sample workbooks to a project Publishes the built-in Tableau sample workbooks to a specified project. ### Method ```bash tabcmd publishsamples ``` ### Parameters #### Path Parameters - **--project** (string) - Required - The name of the project to publish the samples to. - **--username** (string) - Required - The username for authentication. - **--password** (string) - Required - The password for authentication. ### Request Example ```bash tabcmd publishsamples \ --project "Sample Content" \ --username admin \ --password secret ``` ``` -------------------------------- ### Export View with URL Filter Source: https://context7.com/tableau/tabcmd/llms.txt Exports a view as a PDF while applying a URL filter to the data. This allows for exporting specific subsets of data based on filter criteria. ```bash tabcmd export "SalesWorkbook/RegionalView" \ --pdf \ --filter "Region=West&Year=2024" \ --filename west_2024.pdf ``` -------------------------------- ### Check Types with Mypy Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Run Mypy to perform static type checking on the tabcmd codebase and identify potential type errors. ```shell mypy tabcmd tests ``` -------------------------------- ### Add Site Users from CSV Source: https://context7.com/tableau/tabcmd/llms.txt Use `createsiteusers` to add existing Tableau Server users to the current site, assigning them a specified role. This command requires a CSV file listing the users. ```bash tabcmd createsiteusers siteusers.csv --role Explorer ``` -------------------------------- ### Download Data Source Source: https://context7.com/tableau/tabcmd/llms.txt Downloads a published data source from Tableau Server as a .tdsx file. Specify the server path and local filename. ```bash tabcmd get "datasources/SalesData.tdsx" \ --filename sales_data.tdsx ``` -------------------------------- ### Incremental Refresh of Data Source Source: https://context7.com/tableau/tabcmd/llms.txt Performs an incremental refresh of a data source extract. This is more efficient than a full refresh if only new data needs to be added. ```bash tabcmd refreshextracts \ --datasource "SalesData" \ --incremental ``` -------------------------------- ### Publish Tableau Workbook Without Prior Login Source: https://context7.com/tableau/tabcmd/llms.txt Publish a Tableau workbook to a Tableau Server or Cloud site without needing to log in interactively first. Ensure all required parameters like server URL, site, username, and password/token are provided. The `--overwrite` flag replaces an existing workbook with the same name. ```bash tabcmd publish Dashboard.twbx \ --server https://my-server.example.com \ --site MySite \ --username admin \ --password secret \ --project "Finance" \ --overwrite \ --no-cookie \ --logging-level debug \ --timeout 120 ``` -------------------------------- ### Create Extract for Specific Embedded Data Sources Source: https://context7.com/tableau/tabcmd/llms.txt Schedules extract creation for only specific data sources embedded within a workbook. List the data source names separated by commas. ```bash tabcmd createextracts \ --workbook "SalesReport" \ --project "Finance" \ --embedded-datasources "Orders,Customers" ``` -------------------------------- ### Refresh Data Source Extract (Async) Source: https://context7.com/tableau/tabcmd/llms.txt Triggers an asynchronous extract refresh job for a data source. The command returns immediately without waiting for the job to complete. ```bash tabcmd refreshextracts \ --datasource "SalesData" \ --project "Data Sources" ``` -------------------------------- ### Autoformat Code with Black Source: https://github.com/tableau/tabcmd/blob/main/contributing.md Use the Black code formatter to automatically style your Python code according to project standards. ```shell black . ``` -------------------------------- ### Log out from Tableau Server/Cloud Source: https://context7.com/tableau/tabcmd/llms.txt End the current session with Tableau Server/Cloud and remove the cached session file. ```bash tabcmd logout # Output: Succeeded ``` -------------------------------- ### createextracts — Create extracts for a published workbook or data source Source: https://context7.com/tableau/tabcmd/llms.txt Schedules an extract creation job on the server for a given workbook or data source. Supports encryption and targeting specific embedded data sources within a workbook. ```APIDOC ## `createextracts` — Create extracts for a published workbook or data source Schedules an extract creation job on the server for a given workbook or data source. Supports encryption and targeting specific embedded data sources within a workbook. ```bash # Create an extract for a data source tabcmd createextracts \ --datasource "SalesData" \ --project "Data Sources" # Create an extract for all embedded data sources in a workbook tabcmd createextracts \ --workbook "SalesReport" \ --project "Finance" \ --include-all # Create an extract for specific embedded data sources tabcmd createextracts \ --workbook "SalesReport" \ --project "Finance" \ --embedded-datasources "Orders,Customers" # Create an encrypted extract tabcmd createextracts \ --datasource "SalesData" \ --project "Secure" \ --encrypt ``` ``` -------------------------------- ### createusers Source: https://context7.com/tableau/tabcmd/llms.txt Adds users to Tableau Server from a CSV file, creating them if they do not already exist. Supports role assignment and authentication type specification. ```APIDOC ## createusers — Create users from a CSV file Adds users to Tableau Server from a CSV file. If the user does not yet exist on the server, they are created first. CSV columns include `username`, `password`, `fullName`, `licenseLevel`, `adminLevel`, `publishingCapability`, `emailAddress`. ### Method ```bash tabcmd createusers ``` ### Parameters #### Path Parameters - **users.csv** (file) - Required - The path to the CSV file containing user data. #### Query Parameters - **--role** (string) - Optional - Assigns a specific role to all imported users. - **--auth-type** (string) - Optional - Specifies the authentication type for the users (e.g., `SAML`). - **--complete** - Optional - Stops the command on the first error encountered. - **--no-complete** - Optional - Continues the command even if some users fail to import. ### Request Example ```bash # Create users from a CSV file tabcmd createusers users.csv # Assign a specific role to all imported users tabcmd createusers users.csv --role Viewer # Specify authentication type tabcmd createusers users.csv --auth-type SAML # Stop on first error tabcmd createusers users.csv --complete # Continue even if some users fail tabcmd createusers users.csv --no-complete ``` ### Example CSV File (`users.csv`) ```csv username,password,fullName,licenseLevel,adminLevel,publishingCapability,emailAddress jsmith,P@ssw0rd,John Smith,Creator,None,true,jsmith@example.com agarcia,,Ana Garcia,Viewer,None,false,agarcia@example.com ``` ``` -------------------------------- ### listsites Source: https://context7.com/tableau/tabcmd/llms.txt Displays a list of all sites accessible to the current user on Tableau Server, with options to include encryption mode. ```APIDOC ## listsites — List all sites on the server Displays a list of all sites the current user has access to. ### Method ```bash tabcmd listsites ``` ### Parameters #### Query Parameters - **--get-extract-encryption-mode** - Optional - If specified, includes extract encryption mode information in the output. ### Request Example ```bash # List all accessible sites tabcmd listsites # List sites with extract encryption mode info tabcmd listsites --get-extract-encryption-mode ``` ``` -------------------------------- ### Add Users to Group Source: https://context7.com/tableau/tabcmd/llms.txt The `addusers` command assigns users from a CSV file to a specified group on Tableau Server. Use `--no-complete` to continue processing even if some users are not found. ```bash tabcmd addusers "Data Team" --users team_members.csv ``` ```bash tabcmd addusers "Finance Group" \ --users finance_users.csv \ --no-complete ``` -------------------------------- ### Export View as CSV Data Source: https://context7.com/tableau/tabcmd/llms.txt Exports the data from a specific view as a CSV file. This is useful for data analysis outside of Tableau. ```bash tabcmd export "SalesWorkbook/DataView" \ --csv \ --filename data.csv ``` -------------------------------- ### creategroup / deletegroup Source: https://context7.com/tableau/tabcmd/llms.txt Manages groups on Tableau Server by creating new groups or deleting existing ones. ```APIDOC ## creategroup / deletegroup — Manage groups Creates or deletes a group on the server. ### Method ```bash tabcmd creategroup tabcmd deletegroup ``` ### Parameters #### Path Parameters - **--name** (string) - Required - The name of the group to create or delete. ### Request Example ```bash # Create a group tabcmd creategroup --name "BI Analysts" # Delete a group tabcmd deletegroup --name "OldTeam" ``` ``` -------------------------------- ### encryptextracts / decryptextracts / reencryptextracts — Manage extract encryption Source: https://context7.com/tableau/tabcmd/llms.txt Controls extract encryption at the site level. `encryptextracts` encrypts all extracts on the current site, `decryptextracts` removes encryption, and `reencryptextracts` re-encrypts using new keys. ```APIDOC ## `encryptextracts` / `decryptextracts` / `reencryptextracts` — Manage extract encryption Controls extract encryption at the site level. `encryptextracts` encrypts all extracts on the current site, `decryptextracts` removes encryption, and `reencryptextracts` re-encrypts using new keys. ```bash # Encrypt all extracts on the current site tabcmd encryptextracts MySiteName # Decrypt all extracts on the current site tabcmd decryptextracts MySiteName # Re-encrypt all extracts on the current site (key rotation) tabcmd reencryptextracts MySiteName ``` ``` -------------------------------- ### editsite Source: https://context7.com/tableau/tabcmd/llms.txt Modifies settings for an existing Tableau Server site, including name, URL, quotas, status, and encryption. ```APIDOC ## editsite — Modify an existing site's settings Updates site properties such as name, URL, user quota, storage quota, status, and encryption mode. ### Method ```bash tabcmd editsite ``` ### Parameters #### Path Parameters - **"Site Name"** (string) - Required - The name of the site to edit. - **--site-name** (string) - Optional - The new name for the site. - **--url** (string) - Optional - The new URL identifier for the site. - **--user-quota** (integer) - Optional - The new maximum number of users allowed on the site. - **--storage-quota** (integer) - Optional - The new maximum storage space (in MB) allowed for the site. - **--status** (string) - Optional - The new status of the site. Accepted values: `SUSPENDED`. - **--extract-encryption-mode** (string) - Optional - The new extract encryption mode for the site. Accepted values: `enforced`. ### Request Example ```bash # Rename a site tabcmd editsite "OldName" \ --site-name "NewName" # Suspend a site tabcmd editsite "StagingSite" \ --status SUSPENDED # Update user and storage quotas tabcmd editsite "TeamSite" \ --user-quota 100 \ --storage-quota 20480 # Enable extract encryption on a site tabcmd editsite "SecureSite" \ --extract-encryption-mode enforced # Update site URL tabcmd editsite "MarketingSite" \ --url "mktg-analytics-2024" ``` ``` -------------------------------- ### Delete Data Source from Project Source: https://context7.com/tableau/tabcmd/llms.txt Deletes a published data source from a specific project on Tableau Server. Use the --datasource and --project flags. ```bash tabcmd delete "LegacyData" \ --datasource \ --project "Archive" ``` -------------------------------- ### Edit Tableau Site Settings Source: https://context7.com/tableau/tabcmd/llms.txt The `editsite` command allows modification of existing site properties, including renaming, suspending, updating quotas, and enforcing extract encryption. The `--url` option can also be used to change a site's custom URL. ```bash tabcmd editsite "OldName" \ --site-name "NewName" ``` ```bash tabcmd editsite "StagingSite" \ --status SUSPENDED ``` ```bash tabcmd editsite "TeamSite" \ --user-quota 100 \ --storage-quota 20480 ``` ```bash tabcmd editsite "SecureSite" \ --extract-encryption-mode enforced ``` ```bash tabcmd editsite "MarketingSite" \ --url "mktg-analytics-2024" ``` -------------------------------- ### Refresh Tableau Extracts Using Personal Access Token Source: https://context7.com/tableau/tabcmd/llms.txt Refresh Tableau extracts using a Personal Access Token (PAT) for authentication. This method is recommended for unattended automation, especially against MFA-enabled Tableau Cloud deployments. The `--no-cookie` flag ensures stateless execution. ```bash tabcmd refreshextracts \ --datasource "SalesData" \ --server https://10az.online.tableau.com \ --site MyCloudSite \ --token-name "automation-token" \ --token-value "AbCdEfGhIjKlMnOpQrStUvWxYz123456" \ --no-cookie ``` -------------------------------- ### Encrypt All Extracts on Site Source: https://context7.com/tableau/tabcmd/llms.txt Encrypts all existing extracts on the current Tableau Server site. This command applies encryption to all data sources and workbooks with extracts. ```bash tabcmd encryptextracts MySiteName ``` -------------------------------- ### deletesite Source: https://context7.com/tableau/tabcmd/llms.txt Permanently removes a site and all its associated content from Tableau Server. ```APIDOC ## deletesite — Delete a site from Tableau Server Permanently removes a site and all its content. ### Method ```bash tabcmd deletesite ``` ### Parameters #### Path Parameters - **"Site Name"** (string) - Required - The name of the site to delete. ### Request Example ```bash tabcmd deletesite "OldSite" ``` ``` -------------------------------- ### deleteproject Source: https://context7.com/tableau/tabcmd/llms.txt Deletes a project and all its contents from Tableau Server. Can target top-level or nested projects. ```APIDOC ## deleteproject — Delete a project from the server Removes a project and all its contents from Tableau Server. ### Method ```bash tabcmd deleteproject ``` ### Parameters #### Path Parameters - **--name** (string) - Required - The name of the project to delete. - **--parent-project-path** (string) - Optional - The path to the parent project if deleting a nested project. ### Request Example ```bash # Delete a top-level project tabcmd deleteproject --name "Old Reports" # Delete a nested project tabcmd deleteproject \ --name "Q1 Reports" \ --parent-project-path "Finance/2023" ``` ``` -------------------------------- ### addusers Source: https://context7.com/tableau/tabcmd/llms.txt Adds users listed in a CSV file to a specified group on Tableau Server. ```APIDOC ## addusers — Add users to a group Assigns users listed in a CSV file to a specified group on the server. ### Method ```bash tabcmd addusers ``` ### Parameters #### Path Parameters - **"Group Name"** (string) - Required - The name of the group to add users to. - **--users** (file) - Required - The path to the CSV file containing the list of users to add. - **--no-complete** - Optional - Continues the command even if some users are not found or cannot be added. ### Request Example ```bash # Add users from CSV to a group tabcmd addusers "Data Team" --users team_members.csv # Continue even if some users are not found tabcmd addusers "Finance Group" \ --users finance_users.csv \ --no-complete ``` ``` -------------------------------- ### Refresh Workbook Extract with Timeout Source: https://context7.com/tableau/tabcmd/llms.txt Triggers a synchronous extract refresh for a workbook with a specified timeout in seconds. If the job exceeds the timeout, it will be cancelled. ```bash tabcmd refreshextracts \ --workbook "SalesReport" \ --synchronous \ --timeout 300 ``` -------------------------------- ### Delete Tableau Site Source: https://context7.com/tableau/tabcmd/llms.txt Use `deletesite` to permanently remove a site and all its associated content from Tableau Server. ```bash tabcmd deletesite "OldSite" ``` -------------------------------- ### Refresh Workbook Extract (Synchronous) Source: https://context7.com/tableau/tabcmd/llms.txt Triggers a synchronous extract refresh job for a workbook. The command will block and wait until the refresh job is completed. ```bash tabcmd refreshextracts \ --workbook "SalesReport" \ --project "Finance" \ --synchronous ``` -------------------------------- ### Re-encrypt All Extracts on Site Source: https://context7.com/tableau/tabcmd/llms.txt Re-encrypts all extracts on the current Tableau Server site, typically used for key rotation or security updates. This process ensures extracts are protected with the latest encryption keys. ```bash tabcmd reencryptextracts MySiteName ``` -------------------------------- ### Remove Site Users Source: https://context7.com/tableau/tabcmd/llms.txt The `deletesiteusers` command removes a list of users from the current Tableau Server site, based on a provided CSV file. ```bash tabcmd deletesiteusers users_to_remove.csv ``` -------------------------------- ### Delete Extract from Data Source Source: https://context7.com/tableau/tabcmd/llms.txt Removes the extract from a published data source, reverting it to a live connection. Specify the data source and its project. ```bash tabcmd deleteextracts \ --datasource "SalesData" \ --project "Data Sources" ``` -------------------------------- ### Delete Extract from Workbook Source: https://context7.com/tableau/tabcmd/llms.txt Removes all extracts embedded within a published workbook, reverting them to live connections. Use the --include-all flag. ```bash tabcmd deleteextracts \ --workbook "SalesReport" \ --project "Finance" \ --include-all ``` -------------------------------- ### Delete Workbook from Nested Project Source: https://context7.com/tableau/tabcmd/llms.txt Deletes a workbook from a project that is nested within other projects. Use --project and --parent-project-path to specify the location. ```bash tabcmd delete "Q1Report" \ --workbook \ --project "Q1" \ --parent-project-path "Finance/2023" ``` -------------------------------- ### refreshextracts — Trigger an extract refresh job Source: https://context7.com/tableau/tabcmd/llms.txt Submits an extract refresh job to the server for a workbook or data source. Can run synchronously (blocking until the job completes) or asynchronously. ```APIDOC ## `refreshextracts` — Trigger an extract refresh job Submits an extract refresh job to the server for a workbook or data source. Can run synchronously (blocking until the job completes) or asynchronously. ```bash # Refresh a data source extract (async, returns immediately) tabcmd refreshextracts \ --datasource "SalesData" \ --project "Data Sources" # Refresh a workbook extract synchronously (wait for completion) tabcmd refreshextracts \ --workbook "SalesReport" \ --project "Finance" \ --synchronous # Incremental refresh of a data source tabcmd refreshextracts \ --datasource "SalesData" \ --incremental # Refresh with a timeout when running synchronously tabcmd refreshextracts \ --workbook "SalesReport" \ --synchronous \ --timeout 300 ``` ``` -------------------------------- ### Delete Workbook Source: https://context7.com/tableau/tabcmd/llms.txt Deletes a published workbook from Tableau Server. Specify the workbook name and use the --workbook flag. By default, it targets the Default project. ```bash tabcmd delete "OldSalesReport" --workbook ``` -------------------------------- ### delete — Delete a workbook or data source from the server Source: https://context7.com/tableau/tabcmd/llms.txt Removes a published workbook or data source from a specified project on Tableau Server. ```APIDOC ## `delete` — Delete a workbook or data source from the server Removes a published workbook or data source from a specified project on Tableau Server. ```bash # Delete a workbook from the Default project tabcmd delete "OldSalesReport" --workbook # Delete a data source from a specific project tabcmd delete "LegacyData" \ --datasource \ --project "Archive" # Delete a workbook from a nested project tabcmd delete "Q1Report" \ --workbook \ --project "Q1" \ --parent-project-path "Finance/2023" ``` ``` -------------------------------- ### deletesiteusers Source: https://context7.com/tableau/tabcmd/llms.txt Removes a list of users from the current site on Tableau Server, based on a provided CSV file. ```APIDOC ## deletesiteusers — Remove users from the current site Removes a list of users from the current site based on a CSV file. ### Method ```bash tabcmd deletesiteusers ``` ### Parameters #### Path Parameters - **users_to_remove.csv** (file) - Required - The path to the CSV file containing the list of users to remove from the site. ### Request Example ```bash tabcmd deletesiteusers users_to_remove.csv ``` ``` -------------------------------- ### Decrypt All Extracts on Site Source: https://context7.com/tableau/tabcmd/llms.txt Removes encryption from all extracts on the current Tableau Server site. This makes the extract data accessible without decryption keys. ```bash tabcmd decryptextracts MySiteName ``` -------------------------------- ### Delete Tableau Projects Source: https://context7.com/tableau/tabcmd/llms.txt The `deleteproject` command removes a project and all its contents from Tableau Server. It can target top-level projects or nested projects using the `--parent-project-path` option. ```bash tabcmd deleteproject --name "Old Reports" ``` ```bash tabcmd deleteproject \ --name "Q1 Reports" \ --parent-project-path "Finance/2023" ``` -------------------------------- ### deleteextracts — Delete extracts for a workbook or data source Source: https://context7.com/tableau/tabcmd/llms.txt Removes the extract from a published workbook or data source, converting it back to a live connection. ```APIDOC ## `deleteextracts` — Delete extracts for a workbook or data source Removes the extract from a published workbook or data source, converting it back to a live connection. ```bash # Delete extract from a data source tabcmd deleteextracts \ --datasource "SalesData" \ --project "Data Sources" # Delete extract from a workbook (all embedded) tabcmd deleteextracts \ --workbook "SalesReport" \ --project "Finance" \ --include-all ``` ``` -------------------------------- ### Remove Users from Group Source: https://context7.com/tableau/tabcmd/llms.txt Use `removeusers` to remove users listed in a CSV file from a specified group on Tableau Server. ```bash tabcmd removeusers "Data Team" --users removed_members.csv ``` -------------------------------- ### removeusers Source: https://context7.com/tableau/tabcmd/llms.txt Removes users listed in a CSV file from a specified group on Tableau Server. ```APIDOC ## removeusers — Remove users from a group Removes users listed in a CSV file from a specified group. ### Method ```bash tabcmd removeusers ``` ### Parameters #### Path Parameters - **"Group Name"** (string) - Required - The name of the group to remove users from. - **--users** (file) - Required - The path to the CSV file containing the list of users to remove. ### Request Example ```bash tabcmd removeusers "Data Team" --users removed_members.csv ``` ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.