# tableau Api Tableau REST API (rest_api) - Full Documentation [Skip to main content](#main-content) # About Tableau Help ## Addressing Implicit Bias in Technical Language In an effort to align with one of our core company values, equality, we have changed terminology to be more inclusive where possible. Because changing terms in code can break current implementations, we maintain the current terminology in the following places: - Tableau APIs: methods, parameters, and variables - Tableau CLIs: commands and options - Installers, installation directories, and terms in configuration files - (Undefined variable: Variables.PT\_server\_long) (we plan to make changes to non-inclusive terminology in the web interface, error messages, and related documentation soon.) - Third-party systems documentation For more information about our ongoing effort to address implicit bias, see [Salesforce Updates Technical Language in Ongoing Effort to Address Implicit Bias](https://www.salesforce.com/news/stories/salesforce-updates-technical-language-in-ongoing-effort-to-address-implicit-bias/) on the Salesforce website. [Skip to main content](#main-content) # Analytics Extensions Settings Methods Enable and configure [analytics extensions](https://help.tableau.com/current/server/en-us/config_r_tabpy.htm) on sites and, for on premise installations, on servers. With these extensions you can extend Tableau dynamic calculations with languages like R and python, and with other tools and platforms. For more information, see [Analytics Extensions API](https://tableau.github.io/analytics-extensions-api/). When upgrading from a server version less than 2020.2, analytics extensions must be enabled on each site even if external services were enabled on the server being upgraded. Connections for sites must be ported manually. Using the analytics extensions settings methods you can: - Enable and disable analytics extensions for a Tableau server (on-premise only) or for a site. - Create and manage an extension's connections to the service hosting your custom calculations. # Use Postman Our Postman collection of requests enables you to construct, send, and examine HTTP requests to the Tableau Server or Tableau Cloud API without writing initial code. Postman is a free online app used by many developers for prototyping API calls, investigating issues, and generating request code in a variety of languages. Postman: [Analytics Extensions Settings Methods](https://www.postman.com/salesforce-developers/workspace/salesforce-developers/folder/12721794-2273366b-11e3-454c-8f8a-f68a59a7b375) ## Add analytics extension connection to site Adds a new analytics extension connection for an external service to a site. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server or site administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:create\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) POST {server}/api/-/settings/site/extensions/analytics/connections [view details](#) ## Delete analytics extension connection from site Deletes a specific analytics extension connection for an external service from a site. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** Can only be called by users with site or server administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** Not available. [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) DELETE {server}/api/-/settings/site/extensions/analytics/connections/{connection\_luid} [view details](#) ## Remove current analytics extension connection for workbook Remove the currently used analytics extension connection to an external service from the specified workbook. The connection remains configured, and is available for further usage by the workbook. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users that have permissions to the specified workbook. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:delete\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) DELETE {server}/api/-/settings/site/extensions/analytics/workbooks/{workbook\_luid}/selected\_connection [view details](#) ## Get analytics extension details Get the details of a specified analytics extension connection to an external service. **Version:** Available in API 3.11 (Tableau Cloud March 2021/ Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** Can only be called by users with site or server administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/site/extensions/analytics/connections/{connection\_luid} [view details](#) ## List analytics extension connections on site Lists a site's analytics extension connections for external services. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server or site administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/site/extensions/analytics/connections [view details](#) ## Get enabled state of analytics extensions on server Gets the enabled/disabled state of analytics extensions on a server. **Version:** Available in API 3.11 ( Tableau Server 2021.1) and later. Not available for Tableau Cloud. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:extensions\_server\_settings:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for connected apps](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/server/extensions/analytics [view details](#) ## Get enabled state of analytics extensions on site Gets the enabled/disabled state of analytics extensions on a site. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server or site administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/site/extensions/analytics [view details](#) ## List analytics extension connections of workbook Lists basic details of each analytics extension connection available for a specified workbook, including connection type and name. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users that have permissions to the specified workbook. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/site/extensions/analytics/workbooks/{workbook\_luid}/connections [view details](#) ## Get current analytics extension for workbook Gets basic details, including connection type and name, of the analytics extension connection to an external service that the specified workbook is currently using. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users that have permissions to the specified workbook. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:read\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/settings/site/extensions/analytics/workbooks/{workbook\_luid}/selected\_connection [view details](#) ## Update analytics extension connection of site Updates the details of specified analytics extension connection for an external service to a site. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** Can only be called by users with site or server administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:update\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) PUT {server}/api/-/settings/site/extensions/analytics/connections/{connection\_luid} [view details](#) ## Enable or disable analytics extensions on server Enables or disables analytics extensions on a server. **Version:** Available in API 3.11 ( Tableau Server 2021.1) and later. Not available for Tableau Cloud. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:extensions\_server\_settings:update\`. Added in API 3.28. Access Scopes Overview: [Access scopes for connected apps](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) PUT {server}/api/-/settings/server/extensions/analytics [view details](#) ## Update enabled state of analytics extensions on site Enables or disables analytics extensions on a site. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by users with server or site administrator permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:update\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) PUT {server}/api/-/settings/site/extensions/analytics [view details](#) ## Update analytics extension for workbook Updates the analytics extension connection to external service currently used by a workbook. **Version:** Available in API 3.11 (Tableau Cloud March 2021 / Server 2021.1) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users that have permissions to the specified workbook. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:analytics\_extensions:update\`. Added in API 3.28. Access Scopes Overview: [Access scopes for UATs](https://help.tableau.com/current/api/cloud-manager/en-us/docs/unified_access_tokens.html#scopes) and access scopes for connected apps: [Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) or [Server](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) PUT {server}/api/-/settings/site/extensions/analytics/workbooks/{workbook\_luid}/selected\_connection [view details](#) [Skip to main content](#main-content) # Ask Data Lens Methods - Retired * * * ## Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * * * * Ask data lenses enable you to refine the way a user's natural language query is interpreted, based on the specific audience they belong to. For instance, you might make one lens for medical staff at a hospital, and another for administrative staff. A lens allows you to define synonyms to associate key words with common terms used for them. For instance, "SF" for "San Francisco", or "Rx" for "prescription". You can also configure recommended visualizations for each lens. > Introduced: Tableau Cloud June 2022. Not currently available for Tableau Server. > > Using the Tableau REST API, you can: > > - Create a lens and configure its properties > - Delete a lens > - Import an existing lens > - Get a list of lenses on a site or the details of a specified lens ## Use Postman Our Postman collection of requests enables you to construct, send, and examine HTTP requests to the Tableau Server or Tableau Cloud API without writing initial code. Postman is a free online app used by many developers for prototyping API calls, investigating issues, and generating request code in a variety of languages. Postman: [Ask Data Lens Methods - Retired](https://www.postman.com/salesforce-developers/workspace/salesforce-developers/folder/12721794-42ceab2a-996a-4466-a9b7-aa8e5239d560) ## Create ask data lens - Retired in API 3.22 * * * Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * Create an ask data lens. **Version:** Available in API 3.16 ( Tableau Cloud June 2022 / Server 2022.3) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users who have Create permissions for lenses on the site. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:lenses:create\` [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) POST {server}/api/-/askdata/lenses [view details](#) ## Delete ask data lens - Retired in API 3.22 * * * Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * Delete an ask data lens. **Version:** Available in API 3.16 ( Tableau Cloud June 2022 / Server 2022.3) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users with administrator and lens owner permissions. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:lenses:delete\` [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) DELETE {server}/api/-/askdata/lenses/{lens\_id} [view details](#) ## Get ask data lens - Retired in API 3.22 * * * Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * Get the details of the specified ask data lens. **Version:** Available in API 3.16 ( Tableau Cloud June 2022 / Server 2022.3) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by users who have Read access to the lens. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:lenses:read\` [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/askdata/lenses/{lens\_id} [view details](#) ## Import ask data lens - Retired in API 3.22 * * * Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * Import an existing ask data lens on a server to a site, and optionally transform the metadata of the lens in the process. **Version:** Available in API 3.16 ( Tableau Cloud June 2022 / Server 2022.3) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can only be called by server administrators or site administrators. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:lenses:create\` [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) POST {server}/api/-/askdata/lenses/import [view details](#) ## List ask data lenses in site - Retired in API 3.22 * * * Retired in API 3.22 (Cloud February 2024 / Server 2024.2) > > [!WARNING] > > > > **Important changes for Ask Data and Metrics** > > Tableau's Ask Data and Metrics features were retired in Tableau Cloud in February 2024 and in Tableau Server version 2024.2. With advances in natural language technologies, we're developing an improved interface that will make it easier to ask questions of your data and stay on top of changes. For more information, see [How Tableau GPT and Tableau Pulse are reimagining the data experience](https://www.tableau.com/blog/tableau-pulse-and-tableau-gpt). * * * Returns a list of ask data lenses in a site. **Version:** Available in API 3.16 ( Tableau Cloud June 2022 / Server 2022.3) and later. [Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm) **Permissions:** This method can be called by any user. Responses will include only the lenses to the user has access to. [Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm) **License:** No additional license required. **Access Scope:** \`tableau:lenses:read\` [Tableau Cloud](https://help.tableau.com/current/online/en-us/connected_apps_scopes.htm) | [Tableau Server-Windows](https://help.tableau.com/current/server/en-us/connected_apps_scopes.htm) | [Tableau Server-Linux](https://help.tableau.com/current/server-linux/en-us/connected_apps_scopes.htm) GET {server}/api/-/askdata/lenses [view details](#) [Skip to main content](#main-content) # Authentication Methods Using the authentication methods of the Tableau REST API you can: - Sign in a user to Tableau Server or Tableau Cloud - Authenticate with a [personal access token](https://help.tableau.com/current/server/en-us/security_personal_access_tokens.htm) (PAT) for improved security with granular monitoring and revocation - If you're any Tableau Cloud user, you can list and revoke PATs - If you're a Tableau Cloud site admin, you can list and revoke users' PATs - Authenticate with username and password for quick manual sign in for all users and user impersonation for administrators - Authorize access using a Tableau connected app and a JSON Web Token (JWT) - Authorize access using a unified access token and a JSON Web Token (JWT) - Impersonate a user if you are a Tableau Server administrator, using username and password or PAT - Sign out a user from a Tableau server - Switch the from the current site you are signed into, to another on the server without authenticating again This functionality relates to the UI elements and concepts described at: [Sign in to Tableau Server or Online](https://help.tableau.com/current/pro/desktop/en-us/sign_in_server.htm). The [Tableau Server Client library](https://tableau.github.io/server-client-python/), a Python wrapper for the REST API, offers the following related items: [Auth Methods](https://tableau.github.io/server-client-python/docs/api-ref#authentication); and [Sign In and Out](https://tableau.github.io/server-client-python/docs/sign-in-out). ## Use Postman Our Postman collection of requests enables you to construct, send, and examine HTTP requests to the Tableau Server or Tableau Cloud API without writing initial code. Postman is a free online app used by many developers for prototyping API calls, investigating issues, and generating request code in a variety of languages. [Postman: Authenticate](https://www.postman.com/salesforce-developers/salesforce-developers/folder/2b4ttqa/authenticate) ## List Personal Access Tokens List all personal access tokens (PATs). If you're a site admin, list PATs of a user when you are the site admin on all sites that the PAT owner is a member of. This method is not available for Tableau Server. **Version:** Available in API 3.21 (Tableau Cloud October 2023) and later._[Version Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_versions.htm)_ **License:** No additional license required. **Permissions:** Any Tableau Cloud user. If you're a Tableau Cloud site admin, you can list the PATs of a user when you are the site admin on all sites that the PAT owner is a member of. _[Permissions Overview](https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_concepts_permissions.htm)_ **JWT Access Scope:** Not available. #### URI GET /api/api-version/sites/site-luid/users/user-luid/personal-access-tokens #### URI Parameter Values
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user. The user LUID is returned after you successfully authenticate to the Tableau REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Forbidden | You can only list PATs that are yours. |
| 403 | 403010 | Cross-site access is forbidden | You're a site admin and can't list PATs when you're not the site admin for all sites the PAT owner is a member of. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Revoke server admin tokens forbidden, | The user does not have the server administrator permissions required to call this method. |
| 404 | 404000 | Server not found | The Tableau Server in the URI doesn't correspond to an existing server. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user. The user LUID is returned after you successfully authenticate to the Tableau REST API. |
| pat-name | The name of the PAT you want to revoke. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The credentials token provided in the request header was invalid or has expired. |
| 403 | 403004 | Forbidden | You can only revoke PATs that are yours. |
| 403 | 403010 | Cross-site access is forbidden | You're a site admin and can't revoke a PAT when you're not the site admin for all sites the PAT owner is a member of. |
| 404 | 404051 | Personal access token not found | The PAT couldn't be revoked because it does not exist. |
| 405 | 405000 | Not supported | This error can occur for the following reasons:
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| personal-access-token-name |
The name of the personal access token when signing in with a personal access token. The token name is available on a user’s account page on Tableau server or online. |
| personal-access-token-secret |
The secret value of the personal access token when signing in with a personal access token. The value of the secret is available only in the dialog that appears when a user creates a personal access token as described in the Tableau Help. |
| username |
The name of the user when signing in with username and password. The name and password in the <credentials> element can represent any user
in the specified site. If the user is not an administrator, they might have limited permissions to perform subsequent operations.
Note: If the server is configured to use Active Directory authentication, and if the user name is not unique across domains, you must include the domain as part of the user name (for example, domain_name\Adam). |
| password | The password when signing in with username and password. |
| json-web-token | A JSON Web Token (JWT) associated with a Tableau connected app or unified access token (Tableau Cloud only).
Tableau connected apps JWT: If using Tableau connected apps, the JWT uses a shared secret provided by the Tableau connected app and signed by your external application. Depending on the method used to create the connected app, a JWT can be generated by the connected app as part of the external app's call to sign in to Tableau. The JWT must include access scopes that determine which REST methods the external app can call. Unified access tokens: Starting in December 2025, if using unified access tokens (UATs), the JWT uses a shared secret as part of the UAT configuration. Added in API 3.27, Tableau Cloud only. |
| is-uat | Enables JWT authorization using a unified access token (UAT) when set to true. Added in API 3.27, Tableau Cloud only. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
For Tableau Server, to specify the default site, omit
For Tableau Cloud, a sign-in request must have a |
| user-to-impersonate | The LUID of a user to sign in as. For impersonation when a system administrator signs in with user name and password. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains both username/password and a personal access token, or contains malformed XML. |
| 401 | 401001 | Login error | The credentials (name or password, or personal access token name or secret) are invalid for the specified site, or the site contentURL is invalid. |
| 401 | 401001 | Login error | Login is blocked because several requests with invalid credentials were made. |
| 401 | 401001 | Login error | The Administrator requires the user to update their password. |
| 401 | 401001 | Login error | The password has expired. |
| 401 | 401009 | Login error | The request body is missing or empty. |
| 405 | 405000 | Invalid request method | Request type was not POST.
If you are signing in to a Tableau Cloud site, this error may be caused by leaving the pod name out of the server address in the URI. The error can also be caused by attempting to make a request to a SSL-protected server using HTTP, rather than HTTPS. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
For Tableau Server, to specify the default site, omit
For Tableau Cloud, a sign-in request must have a |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authentication credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authentication credentials were provided. |
| 401 | 401003 | Switch site error | There was a problem switching sites. The site might be unavailable or is not found. |
| 403 | 403070 | Cannot switch to the same site | The site specified as the destination site is also the current site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| Scenario or use case | Personal access tokens (PATs) | Connected apps JWT | Unified access tokens (UATs) JWT | Username and password |
| Access | ||||
| Enables Tableau REST API access | Tableau Cloud, Tableau Server | Tableau Cloud, Tableau Server | Tableau Cloud | Tableau Server, limited in Tableau Cloud |
| Permissions | ||||
| Restricts setup to server administrators | Tableau Server | |||
| Restricts setup to site administrators | Tableau Cloud | |||
| Restricts setup to cloud administrators | Tableau Cloud | |||
| Permits setup to all users | Tableau Cloud, Tableau Server | Tableau Server, limited in Tableau Cloud | ||
| Supports centralized setup | Tableau Cloud | |||
| Security and session management | ||||
| Allows single token revocation | Tableau Cloud | |||
| Allows concurrent user sessions | Tableau Cloud, Tableau Server | Tableau Cloud | ||
| Supports user impersonation | Tableau Server | Tableau Server | ||
| Supports access scopes | Tableau Cloud, Tableau Server | Tableau Cloud |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | The domain to add to the pool. Root domains and subdomains are supported. |
| newPoolLuid | The UUID of the Bridge pool to add the domain to. Must be a user-created pool (not a reserved system pool). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name, invalid pool ID, domain already exists, or pool not found | Domain must conform to valid format; pool ID must be valid UUID and exist; domain must not already be in this pool. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503904 | Unexpected server error | An unexpected error occurred while adding the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the allow rule to add projects to. |
| mode | Required. The operation mode; must be add for this method. |
| project | Required. One or more project IDs to add. Each entry requires an id. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing or empty project list, invalid project or rule UUID, or projects not found on the site. |
| 400 | 503910 | Invariant violation | Attempted to add projects to a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 409 | 503912 | Project already present | One or more of the projects is already associated with this routing rule. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503921 | Unexpected server error | An unexpected error occurred while adding projects. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain to block or unblock. |
| isBlocked | Set to true to block the domain; set to false to unblock (remove from blocked list). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name or missing isBlocked | Domain must conform to valid format; isBlocked parameter is required. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503905 | Unexpected server error | An unexpected error occurred while blocking the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| name | Required. Display name for the pool, 1–80 characters. Must be unique within the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 / 400929 | Missing, empty, invalid, or duplicate pool name | Pool name required, 1–80 characters; must be unique on the site. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503900 | Unexpected server error | An unexpected error occurred while creating the pool. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| domain | Required. The domain the rule matches, for example example.com. Both root domains and subdomains are supported. |
| isBlocked | Required. true creates a block rule; false creates an allow rule. The request is rejected if this attribute is omitted. |
| poolId | Required for allow rules (isBlocked=false). The UUID of the target Bridge pool. Must be omitted for block rules. |
| project | Optional. One or more project IDs that scope an allow rule to specific projects. Each entry requires an id. Must be omitted for block rules. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing routingRule, missing isBlocked, blank or invalid domain, blank or invalid poolId, poolId missing for an allow rule, invalid UUID, or invalid, empty, or not-found projects. |
| 400 | 503910 | Invariant violation | poolId or project supplied for a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 409 | 503911 | Duplicate routing rule | A routing rule already exists for this domain and project scope. |
| 409 | 503931 | Domain already blocked | The domain is already blocked by an existing block rule. |
| 409 | 503932 | Domain-only rule exists | A domain-only (unscoped) allow rule already exists for this domain; at most one is allowed. |
| 409 | 503933 | Blocked domain has allow rules | The domain being blocked still has allow rules; remove them before blocking the domain. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503916 | Unexpected server error | An unexpected error occurred while creating the rule. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503003 | Unexpected server error | An unexpected error occurred while deleting the Bridge client. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| pool-id | The unique identifier (UUID) of the pool to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid pool ID or pool not found | Pool ID must be valid UUID and exist on the site. |
| 400 | 503902 | System pool | Cannot delete reserved system pools. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503902 | Unexpected server error | An unexpected error occurred while deleting the pool. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain name to remove from the system. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name or domain not found | Domain must conform to valid format and must exist in the system. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503907 | Unexpected server error | An unexpected error occurred while deleting the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the routing rule to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | The routing-rule-id is not a valid UUID. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503920 | Unexpected server error | An unexpected error occurred while deleting the rule. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to retrieve. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503002 | Unexpected server error | An unexpected error occurred while retrieving the Bridge client. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503908 | Unexpected server error | An unexpected error occurred while retrieving the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the routing rule to retrieve. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | The routing-rule-id is not a valid UUID. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503919 | Unexpected server error | An unexpected error occurred while retrieving the rule. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503918 | Unexpected server error | An unexpected error occurred while listing the rules. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| poolId | Optional. Filter by specific pool; returns only Bridge clients assigned to this pool. Mutually exclusive with onlyDefaultPool and onlyUnassigned. |
| onlyDefaultPool | Optional. If true, returns only Bridge clients in the default pool. Mutually exclusive with poolId and onlyUnassigned. |
| onlyUnassigned | Optional. If true, returns only Bridge clients not assigned to any pool. Mutually exclusive with poolId and onlyDefaultPool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | BAD_REQUEST | Multiple filters specified | Only one filter parameter can be specified at a time (poolId, onlyDefaultPool, or onlyUnassigned). |
| 400 | BAD_REQUEST | Invalid poolId | The poolId specified is reserved and cannot be used as a filter. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503002 | Unexpected server error | An unexpected error occurred while retrieving Bridge clients. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503903 | Unexpected server error | An unexpected error occurred while retrieving pools. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to move. |
| poolId | Required when using moveToNamedPool. The UUID of the Bridge pool to move the client to. |
| moveToDefaultPool | Set to true to move the Bridge client to the default pool. Use in place of moveToNamedPool. |
| moveToUnassigned | Set to true to move the Bridge client to unassigned status. Use in place of moveToNamedPool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | BAD_REQUEST | Multiple operations specified | Cannot specify more than one move operation in a single request. |
| 400 | BAD_REQUEST | No operation / Missing poolId / Invalid poolId | Request must contain exactly one valid move operation; poolId required for moveToNamedPool and must be a valid UUID. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 404 | 503005 | Pool not found | The specified poolId does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503004 | Unexpected server error | An unexpected error occurred while moving the Bridge client. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the allow rule to remove projects from. |
| mode | Required. The operation mode; must be remove for this method. |
| project | Required. One or more project IDs to remove. Each entry requires an id. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing or empty project list, or invalid project or rule UUID. |
| 400 | 503910 | Invariant violation | Attempted to remove projects from a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503922 | Unexpected server error | An unexpected error occurred while removing projects. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| pool-id | The unique identifier (UUID) of the pool to update. |
| name | Required. New display name for the pool, 1–80 characters, unique on the site (excluding the current pool). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 / 400929 | Invalid pool ID, missing name, or duplicate name | Pool ID must be valid UUID; name required, 1–80 characters, unique (excluding current pool). |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503901 | Unexpected server error | An unexpected error occurred while updating the pool. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain to move. |
| newPoolLuid | Required. The UUID of the target Bridge pool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name, invalid pool ID, domain not found, or pool not found | Domain and pool ID must be valid; domain and pool must exist on the site. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503906 | Unexpected server error | An unexpected error occurred while updating the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The current domain name. |
| newDomainName | Required. The new domain name. Must not already exist in the system. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid existing/new domain name, domain not found, or new name exists | Domain names must conform to valid format; existing domain must exist; new name must not already be in use. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503906 | Unexpected server error | An unexpected error occurred while updating the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the routing rule to update. |
| domain | Optional. A new domain for the rule. |
| isBlocked | Optional. Changes the rule between a block rule (true) and an allow rule (false). |
| poolId | Required when transitioning to an allow rule. The UUID of the target Bridge pool. Must be omitted when the rule is, or becomes, a block rule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Empty update (no attributes supplied), invalid routing-rule-id or poolId UUID, blank or invalid domain, or poolId missing when transitioning to an allow rule. |
| 400 | 503910 | Invariant violation | poolId supplied while the rule is, or becomes, a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 409 | 503911 | Duplicate routing rule | The update would collide with an existing rule for the same domain and project scope. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503917 | Unexpected server error | An unexpected error occurred while updating the rule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to set permissions for. |
| user-id | The ID of the user to add permissions for. |
| group-id | The ID of the group to add permissions for. |
| capability-name |
The capability to assign. The only valid capability for a collection is Read. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a collection, but the caller doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | User not found | The user in the request body wasn't found. |
| 404 | 404012 | Group not found | The group in the request body wasn't found. |
| 404 | 404013 | Resource not found |
The capability to remove the permission for. The only valid capability name for a collection is Read. The only valid capability mode is Allow or Deny. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The only valid capability for a collection is Read. The only valid capability mode is Allow or Deny. For more information, see Permissions. |
| capability-mode | Allow to delete an allow permission, or Deny to delete a deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a collection. The only valid capability for a collection is Read. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | Resource not found | The user ID in the URI wasn't found. |
| 404 | 404012 | Resource not found | The group ID in the URI wasn't found. |
| 404 | 404013 | Resource not found | The capability in the URI isn't recognized. |
| 404 | 404014 | Resource not found | The user or group permission wasn't found on the collection. Check the permissions on the collection that you're trying to remove and try again. |
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| name | Name of the connected app. |
| enabled | (Optional) Controls whether the connected app is enabled or not. Value can be "true" or "false". If the state is not specified, the connected app is set to "false" and not enabled by default. |
| project_id |
(Optional, embedding workflows only) The IDs of the projects that the connected app's access level is scoped to. To get a project's project ID, see Query Projects. You can specify one project, multiple projects, all projects on a site.
Note: The stand-alone projectId attribute will be retired in a future release so we recommend using projectIds attribute instead. |
| domainSafelist |
(Optional, embedding workflows only) A list of domains the connected app is allowed to be hosted. Specify one or more URLs, separated by spaces, using a format described in Domain allowlist rules in the Tableau Server Help or Domain allowlist rules in the Tableau Cloud Help. Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. For example: |
| unrestrictedEmbedding | (Optional, embedding workflows only) Controls whether the connected app can be hosted on all domains. If "true" value is specified, the connected app can be hosted on all domains. If "false" value is specified, the connected app can only be hosted on the domains specified in the <domainSafelist> attribute. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| URL | The entity id of your identity provider (IdP) or URL that uniquely identifies your IdP. |
| URI |
(Optional) The JSON Web Key (JKWS) of the EAS. |
| name |
(Optional) The name of the connected app. If the name attribute is not specified, the connected app name defaults to "External Authorization Server." This attribute is available starting from API version 3.22 (February 2024). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Issuer URL missing | The required issuer URL is missing from the request body. |
| 400 | 400157 | Unexpected EAS error | There was a unexpected error when creating the connected app. |
| 400 | 400161 | EAS limit exceeded | The site has reached its limit of EAS that can be registered or the external authorization server (EAS) ID is not in the correct format. |
| 400 | 400194 | Issuer URL already configured | Another connected app on the site is using the same issuer URL. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 400 | 400144 | Secret limit exceeded |
The connected app has already reached its two secret maximum. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| eas-id | The unique ID of the registered EAS. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404047 | EAS not found | The requested EAS could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| secret-id | The unique ID of the connected app secret. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| eas-id | The unique ID of the registered EAS. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404047 | EAS not found | The requested EAS could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| secret-id | The unique ID of the connected app secret. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| name | (Optional) The new name of the connected app. |
| enabled | (Optional) Controls whether the connected app is enabled or not. Value can be "true" or "false". If the state is not specified, the connected app is set to "false" and not enabled by default. |
| project_id |
(Optional, embedding workflows only) The ID of the project that the connected app's access level is scoped to. To get the project ID, see Query Projects. You can specify one project, multiple projects, and all projects on a site.
Note: The stand-alone projectId attribute will be retired in a future release so we recommend using projectIds attribute instead. |
| domainsafelist |
(Optional, embedding workflows only ) A list of domains the connected app is allowed to be hosted. Specify one or more URLs, separated by spaces, using a format described in Domain allowlist rules in the Tableau Server Help or Domain allowlist rules in the Tableau Cloud Help. Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. For example: |
| unrestrictedEmbedding | (Optional, embedding workflows only) Controls whether the connected app can be hosted on all domains. If "true" value is specified, the connected app can trust and connect to all domains. If "false" value is specified, the connected app can only be hosted on the domains specified in the <domainSafelist> attribute. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| eas-id | The unique ID of the registered EAS. |
| URL | (Optional) The entity id of your identity provider (IdP) or URL that uniquely identifies your IdP. |
| URI |
(Optional) The JSON Web Key (JKWS) of the EAS. |
| name |
(Optional) The name of the connected app. If the name attribute is not specified, the connected app name defaults to "External Authorization Server." This attribute is available starting from API version 3.22 (February 2024). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Issuer URL missing | The request body contains an empty issuer URL attribute. |
| 400 | 400157 | Unexpected EAS error | There was an unexpected error when updating the connected app. |
| 400 | 400194 | Issuer URL already configured | Another connected app on the site is using the same issuer URL. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404047 | EAS not found | The requested EAS could not be found. |
| Label value name | Category |
| Certified | Certification |
| Deprecated | Data Quality Warning |
| Stale data | Data Quality Warning |
| Under maintenance | Data Quality Warning |
| Warning | Data Quality Warning |
| Extract refresh failed | Data Quality Warning |
| Flow run failed | Data Quality Warning |
| Sensitive data1 | Sensitivity |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to add tags to. |
| datasource-id | The data source to add the tag to. If the data source is already tagged with a tag that's included in the request body, those tags are ignored and the data source retains them. If the <tags> element is empty, no new tags are added to the data source. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400075 | Error adding tags | There was a problem adding tags to the specified data source. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404004 | Data source not found | The data source ID in URI doesn't correspond to an existing data source. |
| 404 | 404009 | Data source ID mismatch | The request body contains a data source ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to add. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Optional. Element type sent to the TDS service. For this operation, use FieldDescription or TableDescription. Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Element name. |
| tdsElementList[].column | Not applicable to this method. The add converter has no Column branch, so a column payload on an add element is not copied and the element is reported as a per-element failure. |
| tdsElementList[].description | Required for this method. Description text for a FieldDescription or TableDescription element. When description is null, the field is left unset so the TDS service can report a per-element failure instead of HTTP 500. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 409, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 409 | Per-element already exists | One or more elements already exist. The body lists only the failed elements. | |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| datasource-luid | The LUID of the data source. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsWorkCopy | Required. Work copy identifiers. |
| tdsWorkCopy.workCopyLuid | LUID of the new work copy. |
| tdsWorkCopy.datasourceLuid | Optional. LUID of the published data source. Not returned by this method; returned by Publish Work Copy. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid data source LUID | The data source LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | Data source not found or not visible to the caller | The data source LUID in the URI doesn't correspond to an existing data source in the site, or the caller doesn't have permission to access it. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 405 | 405003 | Composable data source | Creating a work copy is not supported for composable data sources (data sources that have one or more immediate parent published data sources). |
| 405 | 405004 | Semantic Data Model (SDM) data source | Creating a work copy is not supported for Semantic Data Model (SDM) data sources. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 429 | Work copy limit exceeded | The maximum number of open work copies is reached. Publish an existing work copy before creating a new one. | |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user called this method but doesn't have Read (view) and Delete permission for the data source. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source in the site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to remove the tag from. |
| tag-name | The name of the tag to remove from the data source. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400077 | Error deleting tag | There was a problem deleting the tag from the specified data source. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified data source. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified data source. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to delete. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Required for this method. Element type of the element to delete (Column, FieldDescription, or TableDescription). Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Name of the element to delete. |
| tdsElementList[].column | Not applicable to this method. Delete uses elementType and name only; other content is ignored. |
| tdsElementList[].description | Not applicable to this method. Delete uses elementType and name only; other content is ignored. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to download. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the data source specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the data source. You can use this parameter to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403028 | Read forbidden | A non-administrator user attempted to download a data source, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasource-luid | The LUID of the data source to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to download. |
| revision-number | The revision number of the data source to download. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403028 | Read forbidden | A non-administrator user attempted to download a data source, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source to get revisions for. |
| datasource-id | The ID of the data source to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403054 | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. | |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site to publish to. |
| overwrite-flag | true to overwrite a data source that has the same name, or false
to fail if the specified data source already exists. The default is false. If overwrite-flag
is set to true but the data source doesn't already exist, the operation succeeds.
You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| replace-flag | (New in 2025.1) A boolean value (true or false). Set to true to replace the data in an existing data source. The default is false. |
| asJob-value | A Boolean value that is used to publish data sources asynchronously. If you set this value to false (the default), the publishing process runs as a synchronous process. If a data source is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. |
| append-flag | true to append the data being published to an existing data source that has the same name. The default
is false. If append-flag
is set to true but the data source doesn't already exist, the operation fails.
In order to append data to a published data source on Tableau Server, both the source file and the published file must be
an extract with the file extension If an extract was stored using the multiple tables option, you can't append data to it. You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| upload-session-luid | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session LUID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| datasource-file-type | hyper, tds, tdsx, or tde the kind of file that you are uploading. This value is required if you are calling Publish Data Source in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| datasource-name | (Required) The name to assign to the data source when it is saved on the server. |
| remote-query-agent-flag | (Optional) When true, this flag will allow your Tableau Cloud site to use Tableau Bridge clients. Bridge allows you to maintain data sources with live connections to supported on-premises data sources.
|
| datasource-description | (Optional) A description of the data source. |
| connection-username | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag | (Optional) If the data source connection is configured to use OAuth, set this to true to specify
that the value of the name attribute in the
connectionCredentials element is an OAuth username. In that case, no password is
required and the value of the embed attribute specifies whether to embed the OAuth
credential with the data source.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The LUID of the project to assign the data source to. If the project is not specified, the data source will be published to the default project. |
| datasource-file-name | The file name (including extension) of the data source file to upload. This attribute is used in the request body only if the request also includes the content of the data source file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-datasource-file | The content of the data source file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| askDataEnablement | This attribute is not available in API 3.12 and later (Tableau Cloud September 2021 / Server 2021.3). |
| parentDataSourceUrls | The name (URL) of the immediately referenced published data source that the data source being published depends on. For a composed data source, you must include one entry for each top-level parent data source in the data model. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400000 | Missing data source | There is no attachment in the request for the data source. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be set to true or false. |
| 400 | 400008 | Invalid append value | The append parameter must be set to true or false. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400010 | Invalid data source filename | The name of the data source file did not end with the suffix .hyper, .tds, .tdsx, or .tde. |
| 400 | 400010 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than hyper, tds, tdsx, or tde. |
| 400 | 400010 | Unexpected attachments | The message had both a uploadSessionId parameter and an attachment, or the message contained more than one attachment. |
| 400 | 400011 | Publishing error | The data source could not be published for some other reason than those specified earlier. |
| 400 | 400011 | Bad Request | The request is invalid. This can occur if more than one of the conflict resolution parameters (overwrite, append, or replace) is set to true. Only one of these parameters can be true in a single request. |
| 400 | 400019 | Malformed request body | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400055 | Incompatible overwrite and append values | The overwrite and append parameter cannot both be set to true. |
| 400 | 400129 | Invalid Ask Data enablement | The enablement setting in the request body is not valid for the current server configuration. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a data source, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user who is unlicensed attempted to publish a data source. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A data source with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The data source could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The append parameter is true but the data source name specified in the request body does not correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the request body doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| datasource | Required. Published data source name and optional description. Other data source fields are not read by this method. |
| datasource.name | Required. Name of the data source to publish. A null, empty, or whitespace-only value is HTTP 400 with error code 400008. |
| datasource.description | Optional. Description of the published data source. May be null, empty, or whitespace. |
| tdsWorkCopy | Required. Work copy and published data source identifiers. |
| tdsWorkCopy.workCopyLuid | Optional. LUID of the work copy. Not returned by this method; returned by Create Work Copy. |
| tdsWorkCopy.datasourceLuid | LUID of the newly published data source. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Datasource name missing | The published data source name is missing or blank. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | Work copy not found or not visible to the caller | The work copy LUID in the URI doesn't correspond to an existing work copy, or the caller doesn't have permission to access it. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The site that contains the data source. |
| datasource-id | The ID of the data source to get. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a data source, but the caller doesn't have Connect permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data sources. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of data sources to return. You can filter on predefined fields such as name and updatedAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the data sources or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the Rest API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to return connection information about. |
error Code| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| datasource-luid | The LUID of the data source. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
elementType | Required. The kind of element to return. Allowed values are Column, FieldDescription, and TableDescription. |
name | Optional. The name of a single element to read. When omitted, the call lists elements of the requested elementType. When this value is non-empty and the TDS service returns gRPC NOT_FOUND, the API responds 404 with error code 404065. |
5
| tdsElementList[] | Required. Elements read from the data source or work copy. Empty when the TDS service returns no records. |
| tdsElementList[].elementType | Optional. Element type. Not set by the read converter for this operation. |
| tdsElementList[].name | Required. Name of the element, set from the gRPC read result or from the failure record when the record failed. |
| tdsElementList[].column | Optional. Present when the read result is a column. Mutually exclusive with description. |
| tdsElementList[].column.caption | Optional. Column display caption from the TDS service. |
| tdsElementList[].column.role | Optional. Column role, FieldRole.name() from the TDS service. |
| tdsElementList[].column.type | Optional. Column field type, FieldType.name() from the TDS service. |
| tdsElementList[].description | Optional. Description text. Present when the read result is a field description or a table description. Mutually exclusive with column. |
| tdsElementList[].error | Optional. Present only when this read record failed. The HTTP status of the read stays 200. |
| tdsElementList[].error.code | Required (within error). The raw gRPC status code for the failed record — not a translated HTTP code and not a Tableau 6-digit error code. |
| tdsElementList[].error.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid data source LUID | The data source LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Invalid elementType | elementType must be Column, FieldDescription, or TableDescription. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | 404065 | TDS element not found | No element with the requested name exists. Returned only when the name query parameter is non-empty. A missing data source or work copy is not given this code. |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
elementType | Required. The kind of element to return. Allowed values are Column, FieldDescription, and TableDescription. |
name | Optional. The name of a single element to read. When omitted, the call lists elements of the requested elementType. When this value is non-empty and the TDS service returns gRPC NOT_FOUND, the API responds 404 with error code 404065. |
5
| tdsElementList[] | Required. Elements read from the data source or work copy. Empty when the TDS service returns no records. |
| tdsElementList[].elementType | Optional. Element type. Not set by the read converter for this operation. |
| tdsElementList[].name | Required. Name of the element, set from the gRPC read result or from the failure record when the record failed. |
| tdsElementList[].column | Optional. Present when the read result is a column. Mutually exclusive with description. |
| tdsElementList[].column.caption | Optional. Column display caption from the TDS service. |
| tdsElementList[].column.role | Optional. Column role, FieldRole.name() from the TDS service. |
| tdsElementList[].column.type | Optional. Column field type, FieldType.name() from the TDS service. |
| tdsElementList[].description | Optional. Description text. Present when the read result is a field description or a table description. Mutually exclusive with column. |
| tdsElementList[].error | Optional. Present only when this read record failed. The HTTP status of the read stays 200. |
| tdsElementList[].error.code | Required (within error). The raw gRPC status code for the failed record — not a translated HTTP code and not a Tableau 6-digit error code. |
| tdsElementList[].error.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Invalid elementType | elementType must be Column, FieldDescription, or TableDescription. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | 404065 | TDS element not found | No element with the requested name exists. Returned only when the name query parameter is non-empty. A missing data source or work copy is not given this code. |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| datasource-id | The ID of the data source to remove the revision for. |
| revision-number | The revision number of the data source to remove. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user attempted to remove a data source revision, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403055 | Cannot delete head revision | The head (first) version cannot be deleted. To remove the data source, call Delete Data Source. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to update. |
| connection-id | The ID of the connection. To determine what connections are available for a data source, call Query Data Source Connections. |
| upload-session-id | The upload session ID. A user-generated identifier that is unique to a request. If the server receives more than one request with the same ID within 24 hours, all subsequent requests will be treated as duplicates and ignored by the server. This can be used to guarantee idempotency of requests. |
| actions-type | (Required) The definition of the operation(s) to perform on the data in the target hyper file. |
| source-schema-name | (Optional) The name of the source database schema for the data to be updated. A value is not required unless there are multiple schemas in the database. |
| source-table-name | (Required) The name of the source database table containing the data to be updated. |
| target-schema-name | (Optional) The name of the target hyper file schema of the data to be updated from the source database. A value is not required unless there are multiple schemas in the database. |
| target-table-name | (Required) The name of the table containing the data to be updated in the target hyper file. |
| condition | (Required for insert, upsert, and delete)A declaration that defines a comparison operation between source and target data or between source or target data and a user provided constant. For details and examples, see Update Data in Published Live-to-Hyper Data Sources. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed JSON. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403062 | Update data source multiple connections forbidden | A connection ID is required because the data source has multiple connections. Consider using Update Data in Hyper Connection to specify the connection. (This error does not apply to that Connection method) |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source LUID in the request body doesn't correspond to an existing data source. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404008 | Operation not supported | The operation requested is not supported, the source data for the connection must be a Hyper file/database. |
| 404 | 404020 | Connection not found | No resource was found for the specified connection and data source. (This error does not apply to Update Data in Hyper Data Source) |
| 405 | 405000 | Invalid request method | Request type was not PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| 409 | 409094 | Data update job already exists | A data update job for the datasource is already queued or in progress. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to update. |
| upload-session-id | The upload session ID. A user-generated identifier that is unique to a request. If the server receives more than one request with the same ID within 24 hours, all subsequent requests will be treated as duplicates and ignored by the server. This can be used to guarantee idempotency of requests. |
| actions-type | (Required) The definition of the operation(s) to perform on the data in the target hyper file. |
| source-schema-name | (Optional) The name of the source database schema for the data to be updated. A value is not required unless there are multiple schemas in the database. |
| source-table-name | (Required) The name of the source database table containing the data to be updated. |
| target-schema-name | (Optional) The name of the target hyper file schema of the data to be updated from the source database. A value is not required unless there are multiple schemas in the database. |
| target-table-name | (Required) The name of the table containing the data to be updated in the target hyper file. |
| condition | (Required for insert, upsert, and delete)A declaration that defines a comparison operation between source and target data or between source or target data and a user provided constant. For details and examples, see Update Data in Published Live-to-Hyper Data Sources. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed JSON. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403062 | Update data source multiple connections forbidden | A connection ID is required because the data source has multiple connections. Consider using Update Data in Hyper Connection to specify the connection. (This error does not apply to that Connection method) |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source LUID in the request body doesn't correspond to an existing data source. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404008 | Operation not supported | The operation requested is not supported, the source data for the connection must be a Hyper file/database. |
| 404 | 404020 | Connection not found | No resource was found for the specified connection and data source. (This error does not apply to Update Data in Hyper Data Source) |
| 405 | 405000 | Invalid request method | Request type was not PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| 409 | 409094 | Data update job already exists | A data update job for the datasource is already queued or in progress. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
datasource name
|
(Optional) The new name of a the data source. |
project
|
(Optional) The LUID of a project to add the data source to. |
owner
|
(Optional) The LUID of a user to assign the data source to as owner. |
datasource certification-status
|
(Optional) A Boolean value that indicates whether the data source is certified. To learn more about data source certification, see Use Certified and Recommended Data Sources and Tables. |
datasource certification-note
|
(Optional) A note that provides more information on the certification of the data source, if applicable. |
datasource encryptExtracts
|
(Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. |
askDataEnablement
|
This attribute is removed in API 3.12 and later (Tableau Cloud September 2021 / Server 2021.3).
(Optional) Determines if a data source allows use of Ask Data. The value can be
If |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Invalid parameter value | A user attempted to rename a datasource to a name containing only spaces, or to a name with more 255 characters. |
| 400 | 400129 | Invalid Ask Data enablement | The requested enablement setting in the request body does not correspond to the site configuration. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change the owner for the data source. |
| 403 | 403030 | Project update forbidden | A non-administrator user tried to change the project for the data source, but the caller doesn't have Write permission for the project. |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403141 | Update forbidden | A user attempted to update a data source that they do not have permissions to update. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT or PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
| connection-luid | The LUID of the connection to update. To determine what connections are available for a data source, call Query Data Source Connections. |
| connection serverAddress | The new server for the connection. |
| connection serverPort | The new port for the connection |
| connection authenticationType | Added in version 3.27.
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| connection userName | The new username for the connection. |
| connection password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
| connectionLuids | An array of connection LUIDs in the data source that you are updating. |
| connection serverAddress | The new server for the connection. |
| connection serverPort | The new port for the connection |
| connection authenticationType |
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| connection userName | The new username for the connection. |
| connection password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user attempted to update a data source, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404004 | Data source not found | The data source ID in the URI is unknown. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409093 | Operation already in Queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to update. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Optional. Element type sent to the TDS service. For this operation, use Column, FieldDescription, or TableDescription. Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Element name. |
| tdsElementList[].column | Used when elementType is Column. At most one of caption, type, and role may be set — setting more than one is HTTP 400 with no numeric sub-code. A column with none of them set is a no-op update. |
| tdsElementList[].column.caption | Optional. The caption to set. |
| tdsElementList[].column.role | Optional. An accepted FieldRole constant other than FIELD_ROLE_UNKNOWN or UNRECOGNIZED — either of those is rejected as HTTP 400 with error code 400008. |
| tdsElementList[].column.type | Optional. An accepted FieldType constant other than FIELD_TYPE_UNKNOWN or UNRECOGNIZED — either of those is rejected as HTTP 400 with error code 400008. |
| tdsElementList[].description | Used when elementType is FieldDescription or TableDescription. Description text to set. When description is null, the field is left unset so the TDS service can report a per-element failure instead of HTTP 500. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 409, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | 400008 | Invalid column type or role | type or role is not an accepted field type or role. FIELD_TYPE_UNKNOWN, FIELD_ROLE_UNKNOWN, and UNRECOGNIZED are rejected. The accepted names are not in the staged sources. |
| 400 | Column update sets more than one field | A column update may set at most one of caption, type, or role. | |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 409 | Per-element already exists | One or more elements already exist. The body lists only the failed elements. | |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasource-luid | The LUID of the data source to download the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
extractRefresh type
|
The type of extract refresh being scheduled. Valid values include:
|
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
workbook id or datasource id or virtualConnection id |
The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. |
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400225 | Duplicate starting item | startingItemIds contains a duplicate table LUID. |
| 409 | 409090 | Extract operation not allowed | The virtual connection has no extract-configured tables; all tables are live. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 404 | 404026 | Task not found | The task for the extract refresh could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| workbook-id | The LUID of the workbook. |
| encryption-flag | If true, then Tableau will attempt to encrypt the created extracts. If false, or no encrypt parameter is appended to the URI, then the extract won't be encrypted, unless encryption is enforced by site or workbook configuration. An error will be returned when encrypt equals true and encryption is disabled in the site or workbook. |
| datasource-id | LUID of the embedded data source to be extracted. |
| extract-all-datasources-flag | Boolean. If true, then all data sources in the workbook will have an extract created for them. If false, then a data source must be supplied in the request. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the datasource. |
| encryption-flag | If true, then Tableau will attempt to encrypt the created extracts. If false, or no encrypt parameter is appended to the URI, then the extract won't be encrypted, unless encryption is enforced by site or workbook configuration. An error will be returned when encrypt equals true and encryption is disabled in the site or workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection whose extract is to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409128 | No extract to delete. | The virtual connection has no extract. Neither the active revision nor any of its tables has extracts enabled. |
| 400 | 409099 | Unable to delete the extract. | A generic error occurred while converting the virtual connection to live and deleting its extract. |
| 403 | 409098 | User not authorized to delete the extract. | The user must be able to see the virtual connection and must have permission to convert its extract to live. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. This error also occurs if the virtual connection has no active revision. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the workbook containing the extract to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the datasource whose extract is to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the extract refresh task. |
| task-id | The LUID of the extract refresh task to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404026 | Task not found | The task id in the URI doesn't correspond to an existing extract refresh task. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh that you want information about. |
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404026 | Task not found | The task ID in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the refresh tasks. |
| schedule-id | The ID of the schedule to get extract information for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400047 | Invalid schedule type | The schedule type does not represent an extract refresh task. (For example, it might be a subscription task.) |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404 | Schedule not found | The schedule ID in the URI doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh task that you want to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400047 | Extract refresh error | The task specified is not an extract refresh task. |
| 400 | 409090 | Extract operation not allowed | The extract operation is not allowed for the asset that the task refreshes. |
| 403 | 403004 | Operation on resource unauthorized | The user is not authorized to run the task. |
| 403 | 409082 | Run now disabled | The Run Now setting is disabled for the site. |
| 404 | 404003 | Unknown resource | The task ID in the URI doesn't correspond to an existing task. |
| 404 | 404049 | Virtual connection not found | The virtual connection that the task refreshes no longer exists. |
| 405 | 405000 | Method not allowed | The request type was not POST. |
| 409 | 409093 | Operation already in queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| task-id | The LUID of the extract refresh task. Use Get extract refresh tasks on site to find tasks by name. |
extractRefresh type
|
enumeration: The type of extract refresh being scheduled. Valid values include:
|
||||||||||
workbook id or datasource id or virtualConnection id |
LUID: The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. | ||||||||||
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
||||||||||
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
||||||||||
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
||||||||||
schedule frequency
|
enumeration: The scheduled frequency for triggering the extract refresh. Valid values include:
|
||||||||||
frequencyDetails start
|
time: If the schedule frequency is Daily, Weekly, or Monthly, then start is the time of day on
which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The request did not include a valid schedule payload. |
| 400 | 409004 | Invalid parameter | A value in the request is invalid or missing. This includes an invalid or missing schedule or interval value, or start and end times that are not valid for the schedule. For hourly and daily schedules that use hour intervals, the difference between start and end must be a multiple of one hour. This error also includes transactionLevel sent for a task that is not a virtual connection task, a startingItemIds entry that is not a valid ID, or more startingItemIds entries than the maximum allowed per request. |
| 400 | 400225 | Duplicate table ID | startingItemIds contains the same table ID more than once. |
| 400 | 400223 | Table not found | A table ID in startingItemIds is not in the virtual connection's active revision. |
| 400 | 400224 | Table not in extract mode | A table ID in startingItemIds refers to a table that is in live mode. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request. |
| 403 | 403200 | Virtual connection task forbidden | The user cannot see, or cannot manage or refresh the extract of, the virtual connection that the task refreshes. |
| 404 | 404026 | Task not found | The task does not exist, is not an extract refresh task, or targets content that no longer exists. |
| 404 | 404023 | Schedule not found | The task's existing schedule could not be found while merging the new schedule values. |
| 405 | 405000 | Method not allowed | The site is not on Tableau Cloud, or the task refreshes a virtual connection and virtual connection custom-schedule tasks are disabled for the site. |
| 409 | 409130 | Task state invalid | The stored virtual connection task is in an unexpected state and must be repaired or recreated. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| datasource-id | The ID of the data source to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a data source to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404011 | Data source not found | The data source ID in the request body doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| flow-id | The ID of the flow to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a data source to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the metric. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| metric-id | The ID of the metric to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a metric to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404028 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| project-id | The ID (not name) of the project to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Access to favorites denied | A non-administrator user called this method but doesn't have permission to add a project to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| view-id | The ID (not name) of the view to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to add a view to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404011 | View not found | The view ID in the request body doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. If the label is already in use for another workbook, an error is returned. |
| workbook-id | The ID (not name) of the workbook to add as a favorite. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label |
The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Access to Favorites forbidden |
A non-administrator user called this method but doesn't have permission to add a workbook to the specified user's favorites. This will always be the case when the user references in the URI identifies a user other than the user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the request body doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to remove the favorite from. |
| datasource-id | The ID of the data source to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a data source from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | Data source not a favorite | The data source ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404011 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to remove the favorite from. |
| datasource-id | The ID of the data source to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a data source from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | Flow not a favorite | The flow ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404027 | Data source not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| user-id | The ID of the user to remove the favorite from. |
| project-id | The ID of the project to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a project from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| user-id | The ID of the user to remove the favorite from. |
| view-id | The ID of the view to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden Favorites access | A non-administrator user attempted to delete a view from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | View not a favorite | The view ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to remove the favorite from. |
| workbook-id | The ID of the workbook to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Access to Favorites forbidden | A non-administrator user attempted to delete a workbook from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404010 | Workbook not a favorite | The workbook ID in the URI exists but belongs to a different user. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| user-id | The ID of the user for which you want to get a list favorites. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to view the specified user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| user-id | The ID of the user for which you want to get a list favorites. |
| favorite-id | The ID of the favorite you want to move. |
| content-type |
The content type of a favorite. To specify the type, use one of the following values:
|
| favorite-id-after | The ID of the favorite that should follow, or come after, the favorite you want to move. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to view the specified user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404010 | Favorite not found | The favorite ID specified doesn't correspond to a user's favorite. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| datasource-id | The ID of the flow. |
| flow-id | The flow-id value for the flow you want to add permissions to. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has already been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a flow are:
For more information, see Permissions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a flow. Valid capabilities for a flow are ChangeHierarchy, ChangePermissions, Delete, Execute, ExportXml (Download), Read (view), and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the flow. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| schedule-id | The ID of the schedule that you are associating with the flow. The schedule that you are adding to must have Flow as the schedule type. |
| flow-id |
The ID of the flow to add to the schedule. This will include all the output steps in the flow and any output steps created in the future. |
| parameter-id |
The ID of the flow parameter. Use the Flow Methods method to get the flow parameter ID. A parameter is a global placeholder value such as a number, text value, or boolean value that can replace a constant value in a flow. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| overrideValue |
The run-time value for the flow parameter. You must specify this if the parameter is required. Use the Flow Methods method to see if the parameter is required and to get a list of allowed values if the parameter is expecting a value from an enumerated list. Note: Parameters are options and only relevant for flows that contains parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400148 | Invalid parameter override value | The run-time value provided for the flow parameter is invalid. |
| 400 | 400149 | Missing run-time parameter value. | The run-time value for a required flow parameters was not provided. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403098 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404043 | Flow parameter not found | The flow parameter information was not provided. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-run-id | The ID of the flow run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403135 | Flow run already complete | The flow run is already complete so it could not be canceled. |
| 403 | 403137 | User does not have permissions to cancel flow run | In addition to server administrators and site administrators, users can cancel a flow run if they initiated the flow run or created the flow run scheduled task and have "Run Flow Now" permissions for the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404036 | Flow run not found | The flow run ID in the URI doesn't correspond to an existing flow run. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
flow.id | (Required)The LUID of the flow the task is being scheduled for. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user called this method but doesn't have Read (view) and Delete permission for the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name | The capability to remove the permission for. Valid capabilities for a flow are:
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a flow. Valid capabilities for a flow are ChangeHierarchy, ChangePermissions, Delete, Execute, ExportXml (Download), Read (view), and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the flow. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allowor Denyat the end of the URI. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allowor Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to download. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403097 | Read forbidden | A non-administrator user attempted to download a flow, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| flow-luid | The LUID of the flow to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on the destination site. |
destinationSiteLuid
|
(Required) The site LUID of the destination site. |
destinationServerUrl
|
(Required) The destination Tableau Server or Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Flow not found | The flow LUID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-run-id | The ID of the flow run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Get forbidden | User does not have permissions to get the flow run. A user can view a flow run if they have permission to view the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404036 | Flow run not found | The flow run ID in the URI doesn't correspond to an existing flow run. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| filter-expression | (Optional) An expression that lets you specify a subset to return. You can filter on predefined fields such as the userId of the user who started the flow run, flowId, progress, startedAt, and completedAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Get forbidden | User does not have permissions to get the flow run. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the filter doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the scheduled flow run task that you want information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404026 | Task not found | The task ID in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| linked-task-id | The ID of the scheduled linked task that you want information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404045 | Linked task not found | The task ID in the URI doesn't correspond to an existing linked task. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400154 | Generic query linked task error | Could not get a list of linked tasks for some reason other than the ones specified below. |
| 403 | 403155 | Linked tasks disabled | Linked tasks has been disabled for your site or server. |
| 403 | 403004 | Operation unauthorized | You do not have permissions to see the list of linked tasks |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a flow that has the same name, or false to fail if the specified flow already exists. The default is false. If overwrite-flag is set to true but the flow doesn't already exist, the operation succeeds. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| flow-file-type | tfl or tflx to indicate whether you have uploaded a flow file (tfl) or a packaged flow file (tflx). This value is only necessary and required if you upload a file in multiple parts. In the Publish Flow call after completing file upload, specify the file type. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| name | The name to assign to the flow when it is saved on the server. |
| description | The description of the flow. |
| server-address | Specify the server address for an input connections. |
| port-number | Specify the port number for input connections. |
| connection-username | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the flow input connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag |
(Optional) If the flow input connection is configured to use OAuth, set this to If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The ID of the project to assign the flow to. |
| content-of-flow-file | The file itself if you are including it in the request body. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400089 | Missing flow name | Flow name is required and was not specified. |
| 403 | 403007 | Invalid permissions | The caller does not have the necessary permissions to publish the flow. |
| 400 | 400090 | Missing flow payload | The flow information (the structure containing the flow description, flow project) was not included in the request body. |
| 400 | 400086 | Invalid flow attachment | The name of the flow doesn't end in .tfl or .tflx. |
| 400 | 400087 | Generic flow publishing error | The flow could not be published for some other reason than those specified earlier. |
| 409 | 409041 | Flow already found in destination | The flow name should be unique, or the overwrite flag parameter should be set to true. |
| 403 | 403008 | Insufficient storage quota | The flow could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to return information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query the flow, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flows. |
| filter-expression | (Optional) An expression that lets you specify a subset of flows to return. You can filter on predefined fields such as name, tags, and createdAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which flow information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403101 | Read forbidden | A non-administrator user attempted to query flows for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get flows for. |
| isOwner | (Optional) trueto return only flows that the specified user owns, or falseto return all flows that the specified user has at least read access to. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for flows at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403101 | Read forbidden | A non-administrator user attempted to query flows for the user, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to return connection information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403092 | Read forbidden | A user who is not a server administrator user attempted to query the flow connections, but the caller doesn't have Readpermission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| flow-id |
The ID of the flow to add to the schedule. This will include all the output steps in the flow and any output steps created in the future. |
| flow-outputstep-id |
The ID of the output steps you want to run. This parameter is optional. If you don't specify the output steps, all the output steps in the flow will be included. You can specify one or more output steps. Use the Flow Methods method to get the list of flow-outputstep-ids. |
| flow-run-mode |
The mode to use for running this flow, either full or incremental. This parameter is optional. If you don't specify an option the run mode will be full. The flow must be configured with incremental options on the input nodes to refresh incrementally. |
| parameter-id |
The ID of the flow parameter. Use the Flow Methods method to get the flow parameter ID. A parameter is a global placeholder value such as a number, text value, or boolean value that can replace a constant value in a flow. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| overrideValue |
The run-time value for the flow parameter. You must specify this if the parameter is required. Use the Flow Methods method to see if the parameter is required and to get a list of allowed values if the parameter is expecting a value from an enumerated list. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400132 | Invalid flow run mode | The specified flow run mode is not valid. |
| 400 | 400148 | Invalid parameter override value | The run-time value specified is not valid. |
| 400 | 400149 | Parameter override value missing | The run-time value for the parameter was not specified and is required. |
| 403 | 403149 | Flow cannot be run | The flow parameter setting is disabled on the site preventing the flow run. |
| 403 | 403150 | Flow cannot be run | The flow cannot be run because flow parameters contain parameter domain type "any" but the Allow parameters that can accept any input setting is disabled on the site. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404043 | Flow parameter not found | The parameter ID specified in the request body does not match any of the existing parameters for this flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the flow run task that you want to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400084 | Flow run task error | The task specified is not a flow run task. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| linked-task-id | The ID of the linked task to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400153 | Generic error | Unable to run the linked task for some reason other than the ones specified below. |
| 403 | 403155 | Linked task cannot be run | The linked task setting is disabled on the site. |
| 404 | 404045 | Linked task not found | The linked task ID in the URI doesn't correspond to an existing linked task. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409082 | Run now forbidden | Run now setting has been disabled. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| new-project-id | (Optional) The ID of a project to add the flow to. |
| new-owner-id | (Optional) The ID of a user to assign the flow to as owner. The new owner must be the user calling this method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change the owner for the flow. |
| 403 | 403030 | Project update forbidden | A non-administrator user tried to change the project for the flow, but the caller doesn't have Write permission for the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 409 | 409041 | Flow name conflict | The flow name in the request already belongs to the specified site. For the purpose of uniqueness checks, flow names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| connection-id | The ID of the connection to update. To determine what connections are available for a flow, call Query Flow. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | true to embed the password; otherwise, false. |
| authenticationType | Added in API 3.28.
The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for Alternatively, you can inspect the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403103 | Update forbidden | A non-administrator user tried to update a flow, but the caller doesn't have Write permission. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change connection information for the flow, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| id | The ID of the flow connection to update. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | true to embed the password; otherwise, false. |
| authenticationType |
The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for Alternatively, you can inspect the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403103 | Update forbidden | A non-administrator user tried to update a flow, but the caller doesn't have Write permission. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change connection information for the flow, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow. |
| user-id | The ID of the user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403184 | Ownership changes are disabled | On Tableau Server, a machine administrator can use TSM to to enable or disable content ownership changes. For more information, see wgserver.change_owner.enabled in tsm configuration set Options |
| 403 | 403187 | Permission denied | You must be a site administrator, a server administrator, or the flow owner to change the ownership of a flow. |
| 404 | 404061 | Resource not found | The flow id and/or user id can't be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| flow-luid | The LUID of the flow to upload the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
userLuidPair
|
(Required) The user IDs needed to map source site flow owner to destination site flow owner. |
sourceSiteUserLuid
|
(Required) The user ID of the flow owner from the source site; an attribute of the |
destinationSiteUserLuid
|
(Required) The user ID of the flow owner on the destination site; an attribute of the associatedUserLuidMapping element. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. You can get this value by calling the Download Flow Encrypted Keychain method. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| key | Value (example) |
X-Tableau-Auth | fDgkilutQqmJn0znEZr7Sg|0CHx3E9Sird1cOHv4yNVK86Y7opMmhKz |
| HTTP Status Code | Error | Details |
|---|---|---|
| 400 | Resource unavailable in API version. | The API version specified in the URI is valid, but the specified resource is not available in that version of the API. |
| 400 | Malformed XML in request body | The request body contains malformed XML. |
| 400 | Invalid request body | The XML in the request body is well-formed XML, but it does not meet the format defined in the XML schema. |
| 401 | Not authenticated | The client attempted to access an API method without authentication credentials. |
| 403 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 403 | Cross-site access forbidden | The client attempted to access or modify a resource on one site using an authentication token that was created for another site. |
| 404 | Invalid API version | The API version in the URI is not valid. |
| BAD_REQUEST | 400000 |
| NONADMIN_ASSET_TARGET | 400001 |
| EMPTY_ASSET_TARGET | 400002 |
| USER_VALIDATION_ERROR | 400003 |
| INVALID_SITE_UPDATE_VALUE | 400004 |
| INVALID_FAVORITE_LABEL | 400005 |
| INVALID_PAGE_NUMBER | 400006 |
| INVALID_PAGE_SIZE | 400007 |
| INVALID_PARAMETER_VALUE | 400008 |
| INVALID_CAPABILITY_FOR_RESOURCE | 400009 |
| INVALID_DATASOURCE_ATTACHMENT | 400010 |
| GENERIC_PUBLISHING_ERROR | 400011 |
| GENERIC_UPDATE_USER_ERROR | 400012 |
| INVALID_SITE_ROLE | 400013 |
| GENERIC_CREATE_GROUP_ERROR | 400014 |
| GENERIC_CREATE_FILE_UPLOAD_ERROR | 400015 |
| FILE_SIZE_LIMIT_EXCEEDED | 400016 |
| GENERIC_APPEND_FILE_UPLOAD_ERROR | 400017 |
| INVALID_USER_FULL_NAME | 400018 |
| MALFORMED_IMPORT_ELEMENT | 400019 |
| INVALID_WORKBOOK_ATTACHMENT | 400020 |
| GENERIC_QUERY_GROUP_USERS_ERRROR | 400021 |
| GENERIC_ADD_USER_TO_GROUP_ERROR | 400022 |
| GENERIC_QUERY_WORKBOOKS_ERROR | 400023 |
| INVALID_SYNC_MODE | 400024 |
| GENERIC_QUERY_SITE_USERS_ERROR | 400025 |
| GENERIC_DOWNLOAD_WORKBOOK_ERROR | 400026 |
| GENERIC_QUERY_WORKBOOK_DATA_CONNECTIONS_ERROR | 400027 |
| GENERIC_QUERY_GROUPS_ERROR | 400028 |
| GENERIC_DELETE_WORKBOOK_ERROR | 400029 |
| GENERIC_DELETE_DATASOURCE_ERROR | 400030 |
| GENERIC_QUERY_JOB_ERROR | 400031 |
| GENERIC_UPDATE_GROUP_ERROR | 400032 |
| GENERIC_UPDATE_DATASOURCE_CONNECTIONS_ERROR | 400033 |
| INVALID_RESOURCE_QUALIFIER | 400034 |
| INVALID_WORKBOOK_NAME | 400035 |
| GENERIC_UPDATE_WORKBOOK_ERROR | 400036 |
| GENERIC_DOWNLOAD_DATASOURCE_ERROR | 400037 |
| GENERIC_QUERY_SITE_USER_ERROR | 400038 |
| GENERIC_UPDATE_WORKBOOK_CONNECTION_ERROR | 400039 |
| GENERIC_UPDATE_DATASOURCE_ERROR | 400040 |
| ATTRIBUTE_VALUE_EXCEEDS_LIMIT | 400041 |
| REQUEST_PERMISSIONS_PAYLOAD_CONTAINS_UNEXPECTED_ELEMENT | 400042 |
| INVALID_USER_EMAIL | 400043 |
| GENERIC_DELETE_SITE_ERROR | 400044 |
| GENERIC_DELETE_GROUP_ERROR | 400045 |
| GENERIC_REMOVE_USER_FROM_SITE_ERROR | 400046 |
| GENERIC_QUERY_EXTRACT_REFRESHES_ERROR | 400047 |
| GENERIC_QUERY_VIEW_IMAGE_PREVIEW_ERROR | 400048 |
| GENERIC_ADD_TAGS_TO_WORKBOOK_ERROR | 400049 |
| GENERIC_QUERY_WORKBOOK_ERROR | 400050 |
| GENERIC_DELETE_TAG_FROM_WORKBOOK_ERROR | 400051 |
| GENERIC_QUERY_WORKBOOK_IMAGE_PREVIEW_ERROR | 400052 |
| GENERIC_QUERY_VIEWS_ERROR | 400053 |
| INVALID_APPEND_TO_DATASOURCE_FILE_TYPE | 400054 |
| CANNOT_OVERWRITE_AND_APPEND_DATASOURCE | 400055 |
| GENERIC_DELETE_REVISION_ERROR | 400056 |
| GENERIC_DOWNLOAD_REVISION_ERROR | 400057 |
| GENERIC_QUERY_REVISION_ERROR | 400058 |
| GENERIC_DELETE_SCHEDULE_ERROR | 400059 |
| GENERIC_QUERY_SUBSCRIPTIONS_ERROR | 400060 |
| GENERIC_UPDATE_SITE_ERROR | 400061 |
| GENERIC_DELETE_SUBSCRIPTION_ERROR | 400062 |
| GENERIC_CREATE_SUBSCRIPTION_ERROR | 400063 |
| GENERIC_CREATE_SCHEDULE_ERROR | 400064 |
| GENERIC_FILTER_QUERY_ERROR | 400065 |
| GENERIC_SORT_ORDER_ERROR | 400066 |
| INVALID_SUBSCRIPTION_SUBJECT | 400067 |
| INVALID_SUBSCRIPTION_TARGET | 400068 |
| INVALID_SUBSCRIPTION_SCHEDULE_TYPE | 400069 |
| GENERIC_UPDATE_SCHEDULE_ERROR | 400070 |
| GENERIC_QUERY_SCHEDULE_ERROR | 400071 |
| GENERIC_CREATE_PROJECT_ERROR | 400072 |
| GENERIC_UPDATE_PROJECT_ERROR | 400073 |
| GENERIC_QUERY_VIEW_IMAGE_ERROR | 400074 |
| GENERIC_ADD_TAGS_TO_DATASOURCE_ERROR | 400075 |
| GENERIC_ADD_TAGS_TO_VIEW_ERROR | 400076 |
| GENERIC_DELETE_TAG_FROM_DATASOURCE_ERROR | 400077 |
| GENERIC_DELETE_TAG_FROM_VIEW_ERROR | 400078 |
| GENERIC_QUERY_PROJECT_ERROR | 400079 |
| GENERIC_QUERY_VIEW_PDF_ERROR | 400080 |
| GENERIC_QUERY_VIEW_DATA_ERROR | 400081 |
| GENERIC_QUERY_VIEW_EXPORT_ERROR | 400082 |
| QUERY_VIEW_DATA_NODATA_ERROR | 400083 |
| INVALID_TASK_TYPE | 400084 |
| USER_CANNOT_BE_CREATED | 400085 |
| INVALID_FLOW_ATTACHMENT | 400086 |
| GENERIC_FLOW_PUBLISHING_ERROR | 400087 |
| GENERIC_QUERY_FLOW_ERROR | 400088 |
| MISSING_PUBLISH_FLOW_NAME | 400089 |
| MISSING_PUBLISH_FLOW_PAYLOAD | 400090 |
| GENERIC_QUERY_METRIC_ERROR | 400091 |
| GENERIC_DELETE_METRIC_ERROR | 400092 |
| GENERIC_DOWNLOAD_FLOW_ERROR | 400093 |
| GENERIC_QUERY_FLOWS_ERROR | 400094 |
| GENERIC_DELETE_FLOW_ERROR | 400095 |
| GENERIC_QUERY_FLOW_TASKS_ERROR | 400096 |
| GENERIC_UPDATE_FLOW_CONNECTIONS_ERROR | 400097 |
| GENERIC_ADD_TAGS_TO_FLOW_ERROR | 400098 |
| GENERIC_DELETE_TAG_FROM_FLOW_ERROR | 400099 |
| GENERIC_UPDATE_FLOW_ERROR | 400100 |
| GENERIC_QUERY_WORKBOOK_PDF_ERROR | 400101 |
| INVALID_SUBSCRIPTION_ATTACHMENTS_TYPE | 400102 |
| GENERIC_QUERY_LABEL_ERROR | 400103 |
| GENERIC_QUERY_LABELS_ERROR | 400104 |
| GENERIC_DELETE_LABEL_ERROR | 400105 |
| GENERIC_DELETE_LABELS_ERROR | 400106 |
| GENERIC_ADD_ERROR | 400107 |
| GENERIC_ADD_LABELS_TO_CONTENT_ERROR | 400108 |
| MISSING_LABEL_PAYLOAD | 400109 |
| CANNOT_CREATE_WEBHOOKS_ERROR | 400110 |
| CANNOT_DELETE_WEBHOOKS_ERROR | 400111 |
| CANNOT_QUERY_WEBHOOKS_ERROR | 400112 |
| CANNOT_TEST_WEBHOOKS_ERROR | 400113 |
| GENERIC_WORKBOOK_DOWNGRADE_ERROR | 400114 |
| QUERY_WORKBOOK_DOWNGRADE_INVALID_VERSION_NUMBER_ERROR | 400115 |
| QUERY_WORKBOOK_DOWNGRADE_UNSUPPORTED_VERSION_ERROR | 400116 |
| GENERIC_SEARCH_ERROR | 400117 |
| INVALID_WEBHOOK_DESTINATION | 400118 |
| GENERIC_UPDATE_DATA_ROLE_ERROR | 400119 |
| NO_EXPLICIT_PERMISSIONS_FOR_EMBEDDED | 400120 |
| GENERIC_ADD_TAGS_TO_METRIC_ERROR | 400121 |
| GENERIC_DELETE_TAG_FROM_METRIC_ERROR | 400122 |
| GENERIC_UPDATE_METRIC_ERROR | 400123 |
| CANNOT_UPDATE_WEBHOOKS_ERROR | 400124 |
| INVALID_GRANT_LICENSE_MODE | 400125 |
| GENERIC_QUERY_WORKBOOK_POWERPOINT_ERROR | 400126 |
| CANNOT_SET_WEBHOOK_STATUS_CHANGE_REASON | 400127 |
| GENERIC_QUERY_VIEW_ERROR | 400128 |
| GENERIC_QUERY_VIEW_CROSSTAB_ERROR | 400130 |
| GENERIC_QUERY_FLOW_RUN_ERROR | 400131 |
| INVALID_FLOW_RUN_MODE | 400132 |
| INVALID_SUBSCRIPTION_SENDIFVIEWEMPY | 400133 |
| GENERIC_QUERY_DATA_QUALITY_TRIGGER_ERROR | 400134 |
| GENERIC_QUERY_DATA_QUALITY_TRIGGERS_ERROR | 400135 |
| GENERIC_ADD_UPDATE_DATA_QUALITY_TRIGGERS_ERROR | 400136 |
| GENERIC_UPDATE_DATA_QUALITY_TRIGGER_ERROR | 400137 |
| GENERIC_DELETE_DATA_QUALITY_TRIGGER_ERROR | 400138 |
| GENERIC_DELETE_DATA_QUALITY_TRIGGERS_ERROR | 400139 |
| INVALID_SITE_SETTINGS_PARAMETER | 400140 |
| INCOMPATIBLE_DOCUMENT_VERSION_ERROR | 400141 |
| CANNOT_RUN_FLOW_WITHOUT_OUTPUT_STEPS_ERROR | 400142 |
| GENERIC_CONNECTED_APP_ERROR | 400143 |
| EXCEEDED_SECRET_LIMIT_ERROR | 400144 |
| INVALID_CONNECTED_APP_UPDATE_VALUE | 400145 |
| INVALID_CONNECTED_APP_SECRET_ID | 400146 |
| INVALID_VIEW_OPTIONS_RIGHT | 400147 |
| FLOW_PARAMETER_OVERRIDE_INVALID | 400148 |
| FLOW_PARAMETER_OVERRIDE_MISSING | 400149 |
| GENERIC_RUN_FLOW_ERROR | 400150 |
| FLOW_RUN_FORBIDDEN | 400151 |
| MISSING_CSV_FILE | 400152 |
| GENERIC_RUN_LINKED_TASK_ERROR | 400153 |
| GENERIC_QUERY_LINKED_TASK_ERROR | 400154 |
| PUBLISH_TO_SALESFORCE_APPS_INVALID_SALESFORCE_OAUTH_CREDENTIAL_ID | 400155 |
| PUBLISH_TO_SALESFORCE_APPS_SALESFORCE_CLIENT_ERROR | 400156 |
| GENERIC_EXTERNAL_AUTHZ_SERVER_ERROR | 400157 |
| GENERIC_ADD_TAGS_ERROR | 400158 |
| GENERIC_DELETE_TAG_ERROR | 400159 |
| AUTHZ_SERVER_LIMIT_EXCEEDED | 400161 |
| ISSUER_ALREADY_CONFIGURED_ON_SITE | 400194 |
| UNSUPPORTED_LANGUAGE_PROVIDED | 400217 |
| UNSUPPORTED_LOCALE_PROVIDED | 400218 |
|
SCIM_CONFIGURATION_LIMIT_EXCEEDED SCIM_API_TOKEN_ALREADY_PRESENT |
400802 |
| EXTERNAL_USER_NOT_ENTITLED | 400984 |
| NO_AUTH_CREDENTIALS | 401000 |
| LOGIN_ERROR | 401001 |
| INVALID_AUTH_CREDENTIALS | 401002 |
| SWITCH_SITE_ERROR | 401003 |
| MUST_BE_ADMIN_USER | 403000 |
| MISSING_AUTH_TOKEN | 403001 |
| CANNOT_DELETE_DEFAULT_SITE | 403002 |
| CANNOT_DELETE_DEFAULT_PROJECT | 403003 |
| OPERATION_ON_RESOURCE_UNAUTHORIZED | 403004 |
| CANNOT_RENAME_DEFAULT_PROJECT | 403005 |
| SERVER_ADMIN_NOT_CONFIGURED | 403006 |
| PUBLISHING_UNAUTHORIZED | 403007 |
| PUBLISHING_OVERWRITE | 403130 |
| PUBLISHING_CONCURRENT_UPDATE | 403131 |
| PUBLISHING_CONNECTION_CHECK | 403132 |
| INSUFFICIENT_SITE_STORAGE_REMAINING | 403008 |
| UPDATE_USER_FORBIDDEN | 403009 |
| AUTHENTICATED_SITE_MISMATCHED | 403010 |
| AD_NOT_CONFIGURED | 403011 |
| QUERY_GROUP_USERS_FORBIDDEN | 403012 |
| ADD_USER_TO_GROUP_FORBIDDEN | 403013 |
| PAGE_SIZE_LIMIT_EXCEEDED | 403014 |
| CREATE_FILE_UPLOAD_FORBIDDEN | 403015 |
| APPEND_FILE_UPLOAD_FORBIDDEN | 403016 |
| REMOVE_USER_FROM_GROUP_FORBIDDEN | 403017 |
| QUERY_WORKBOOKS_FORBIDDEN | 403018 |
| DOWNLOAD_WORKBOOK_FORBIDDEN | 403019 |
| CANNOT_MODIFY_AD_GROUP_NAME | 403020 |
| QUERY_WORKBOOK_DATA_CONNECTIONS_FORBIDDEN | 403021 |
| CANNOT_CHANGE_NON_LOCAL_USER_PASSWORD | 403022 |
| UPDATE_DATASOURCE_CONNECTIONS_FORBIDDEN | 403023 |
| UPDATE_WORKBOOK_NAME_FORBIDDEN | 403024 |
| MOVE_WORKBOOK_PROJECT_PERMISSIONS_FORBIDDEN | 403025 |
| MOVE_WORKBOOK_WORKBOOK_PERMISSIONS_FORBIDDEN | 403026 |
| UPDATE_WORKBOOK_OWNER_FORBIDDEN | 403027 |
| DOWNLOAD_DATASOURCE_FORBIDDEN | 403028 |
| UPDATE_WORKBOOK_CONNECTION_FORBIDDEN | 403029 |
| MOVE_DATASOURCE_PROJECT_PERMISSIONS_FORBIDDEN | 403030 |
| MOVE_DATASOURCE_DATASOURCE_PERMISSIONS_FORBIDDEN | 403031 |
| UPDATE_DATASOURCE_OWNER_FORBIDDEN | 403032 |
| UPDATE_WORKBOOK_SHOW_TABS_FORBIDDEN | 403033 |
| ADD_USER_TO_SITE_FORBIDDEN | 403034 |
| QUERY_PERMISSION_TEMPLATES_FOR_DATASOURCE_FORBIDDEN | 403035 |
| QUERY_PERMISSION_TEMPLATES_FOR_WORKBOOK_FORBIDDEN | 403036 |
| API_VERSION_DEPRECATED | 403037 |
| DELETE_PERMISSION_TEMPLATES_FOR_DATASOURCE_FORBIDDEN | 403038 |
| OPERATION_FORBIDDEN_PROJECT_LOCKED | 403039 |
| GROUP_MEMBERSHIP_UPDATE_FORBIDDEN | 403040 |
| UPDATE_PROJECT_FORBIDDEN | 403041 |
| ADD_PERMISSION_TEMPLATES_FOR_DATASOURCE_FORBIDDEN | 403042 |
| ADD_PERMISSION_TEMPLATES_FOR_WORKBOOK_FORBIDDEN | 403043 |
| DELETE_PERMISSION_TEMPLATES_FOR_WORKBOOK_FORBIDDEN | 403044 |
| CREATE_PROJECT_FORBIDDEN | 403045 |
| DELETE_PROJECT_FORBIDDEN | 403046 |
| REMOVE_USER_FROM_SITE_FORBIDDEN | 403047 |
| DELETE_ALL_USERS_GROUP_FORBIDDEN | 403048 |
| NEW_CONTENT_OWNER_MUST_BE_ADMIN | 403049 |
| CHANGE_DATASOURCE_OWNER_DISABLED | 403050 |
| QUERY_EXTRACT_REFRESHES_FORBIDDEN | 403051 |
| UPDATE_WORKBOOK_FORBIDDEN | 403052 |
| CONTENT_REVISIONS_DISABLED | 403053 |
| QUERY_DATASOURCE_REVISIONS_FORBIDDEN | 403054 |
| CANNOT_DELETE_HEAD_REVISION | 403055 |
| QUERY_WORKBOOK_REVISIONS_FORBIDDEN | 403056 |
| DELETE_SCHEDULE_FORBIDDEN | 403057 |
| QUERY_SUBSCRIPTIONS_FORBIDDEN | 403058 |
| DELETE_SUBSCRIPTION_FORBIDDEN | 403059 |
| CREATE_SUBSCRIPTION_FORBIDDEN | 403060 |
| CREATE_SCHEDULE_FORBIDDEN | 403061 |
| UPDATE_DATASOURCE_MULTIPLE_CONNECTIONS_FORBIDDEN | 403062 |
| CREATE_SUBSCRIPTION_FORBIDDEN_USER_HAS_NO_PERMISSIONS_TO_CONTENT | 403063 |
| CREATE_SUBSCRIPTION_FORBIDDEN_USER_EMAIL_MISSING | 403064 |
| UPDATE_SUBSCRIPTION_FORBIDDEN | 403065 |
| UPDATE_SCHEDULE_FORBIDDEN | 403066 |
| CREATE_SUBSCRIPTION_FORBIDDEN_USER_UNLICENSED | 403067 |
| QUERY_VIEW_IMAGE_DISABLED | 403068 |
| QUERY_SITES_FORBIDDEN | 403069 |
| CANNOT_SWITCH_TO_SAME_SITE | 403070 |
| QUERY_GROUPS_FORBIDDEN | 403071 |
| QUERY_VIEW_PDF_DISABLED | 403072 |
| CANNOT_MOVE_DEFAULT_PROJECT | 403073 |
| CANNOT_MOVE_PROJECT_TO_DESCENDANT | 403074 |
| QUERY_VIEW_DATA_DISABLED | 403075 |
| REFRESH_WORKBOOK_FORBIDDEN | 403076 |
| REFRESH_DATASOURCE_FORBIDDEN | 403077 |
| CREATE_TASK_FORBIDDEN | 403078 |
| QUERY_BACKGROUND_JOBS_DISABLED | 403079 |
| CANCEL_BACKGROUND_JOBS_DISABLED | 403080 |
| CANCEL_BACKGROUND_JOBS_TYPE_UNSUPPORTED | 403081 |
| CANCEL_BACKGROUND_JOBS_ALREADY_COMPLETE | 403091 |
| QUERY_FLOW_DATA_CONNECTIONS_FORBIDDEN | 403092 |
| ADD_PERMISSION_TEMPLATES_FOR_FLOW_FORBIDDEN | 403093 |
| QUERY_PERMISSION_TEMPLATES_FOR_FLOW_FORBIDDEN | 403094 |
| DELETE_PERMISSION_TEMPLATES_FOR_FLOW_FORBIDDEN | 403095 |
| VIEW_PERMISSIONS_CANNOT_BE_CHANGED | 403096 |
| DOWNLOAD_FLOW_FORBIDDEN | 403097 |
| UPDATE_FLOW_OWNER_FORBIDDEN | 403098 |
| MOVE_FLOW_PROJECT_PERMISSIONS_FORBIDDEN | 403099 |
| MOVE_FLOW_FLOW_PERMISSIONS_FORBIDDEN | 403100 |
| QUERY_FLOWS_FORBIDDEN | 403101 |
| FLOW_RUN_BULKED | 403102 |
| UPDATE_FLOW_CONNECTIONS_FORBIDDEN | 403103 |
| CANNOT_REFRESH_LIVE_CONNECTIONS | 403104 |
| QUERY_WORKBOOK_PDF_DISABLED | 403105 |
| SITE_IS_NOT_ENABLED_FOR_MATERIALIZED_VIEWS | 403106 |
| WORKBOOK_TOO_LARGE_TO_MATERIALIZE | 403107 |
| MATERIALIZED_VIEWS_FEATURE_DISABLED | 403108 |
| WEBHOOKS_DISABLED | 403109 |
| QUERY_WORKBOOK_DOWNGRADE_FORBIDDEN | 403110 |
| DATA_ROLE_VALUES_TOO_LARGE_TO_MATERIALIZE | 403111 |
| OPERATION_NOT_ALLOWED_ON_EMBEDDED_DATABASE | 403112 |
| OPERATION_NOT_ALLOWED_ON_EMBEDDED_TABLE | 403113 |
| ADD_PERMISSION_TEMPLATES_FOR_TABLE_FORBIDDEN | 403114 |
| QUERY_PERMISSION_TEMPLATES_FOR_TABLE_FORBIDDEN | 403115 |
| DELETE_PERMISSION_TEMPLATES_FOR_TABLE_FORBIDDEN | 403116 |
| OPERATION_FORBIDDEN_DATABASE_LOCKED | 403117 |
| UPDATE_METRIC_FORBIDDEN | 403118 |
| UPDATE_METRIC_OWNER_FORBIDDEN | 403119 |
| MOVE_METRIC_PROJECT_PERMISSIONS_FORBIDDEN | 403120 |
| MOVE_METRIC_METRIC_PERMISSIONS_FORBIDDEN | 403121 |
| REFRESH_METRIC_FORBIDDEN | 403122 |
| UPDATE_METRIC_NAME_FORBIDDEN | 403123 |
| QUERY_METRICS_FORBIDDEN | 403124 |
| VIEW_RECOMMENDATIONS_DISABLED | 403125 |
| MATERIALIZED_VIEWS_DOES_NOT_SUPPORT_ENCRYPTED_EXTRACTS | 403126 |
| MATERIALIZED_VIEWS_DOES_NOT_SUPPORT_NON_EMBEDDED_CREDENTIALS | 403127 |
| QUERY_WORKBOOK_POWERPOINT_DISABLED | 403128 |
| OPERATION_NOT_ALLOWED_ON_DATABASE | 403129 |
| QUERY_USER_PERMISSIONS_FORBIDDEN | 403133 |
| QUERY_SHEET_CROSSTAB_EXCEL_DISABLED | 403134 |
| FLOW_RUN_ALREADY_COMPLETE | 403135 |
| CANCEL_FLOW_RUNS_DISABLED | 403136 |
| CANCEL_FLOW_RUN_FORBIDDEN | 403137 |
| QUERY_PERMISSION_TEMPLATES_FOR_METRICS_FORBIDDEN | 403138 |
| GET_LOCATION_FOR_CONTENT_FORBIDDEN | 403139 |
| CANNOT_MOVE_PUBLISHED_DATASOURCE_TO_PERSONAL_SPACE | 403140 |
| UPDATE_DATASOURCE_FORBIDDEN | 403141 |
| QUERY_PERMISSION_TEMPLATES_FOR_DATAROLE_FORBIDDEN | 403142 |
| QUERY_PERMISSION_TEMPLATES_FOR_LENS_FORBIDDEN | 403143 |
| INVALID_REQUEST_FORMAT_FOR_API_VERSION | 403144 |
| UPDATE_WORKBOOK_VIEW_OPTIONS_FORBIDDEN | 403145 |
| UPDATE_WORKBOOK_VIEW_OPTIONS_FORBIDDEN_BY_PROJECT | 403146 |
| UPDATE_PROJECT_VIEW_OPTIONS_FORBIDDEN | 403147 |
| UPDATE_PROJECT_VIEW_OPTIONS_FORBIDDEN_BY_PROJECT | 403148 |
| FLOW_PARAMETERS_DISABLED_ON_SITE | 403149 |
| FLOW_PARAMETERS_ANY_TYPE_DISABLED_ON_SITE | 403150 |
| BROADCAST_DISABLED_ON_THE_SITE | 403151 |
| QUERY_PERMISSION_TEMPLATES_FOR_DATABASE_FORBIDDEN | 403152 |
| DELETE_PERMISSION_TEMPLATES_FOR_DATABASE_FORBIDDEN | 403153 |
| ADD_PERMISSION_TEMPLATES_FOR_DATABASE_FORBIDDEN | 403154 |
| LINKED_TASKS_DISABLED | 403155 |
| MOVE_EXTERNAL_ASSET_PERMISSIONS_FORBIDDEN | 403156 |
| FEATURE_DISABLED | 403157 |
| CALLING_USER_INSUFFICIENT_PERMISSIONS | 403182 |
| USER_LANG_ASSIGNMENT_FORBIDDEN | 403193 |
| USER_LOCALE_ASSIGNMENT_FORBIDDEN | 403194 |
| SITE_NOT_FOUND | 404000 |
| VERSION_NOT_FOUND | 404001 |
| USER_NOT_FOUND | 404002 |
| UNKNOWN_RESOURCE | 404003 |
| DATASOURCE_NOT_FOUND | 404004 |
| PROJECT_NOT_FOUND | 404005 |
| WORKBOOK_NOT_FOUND | 404006 |
| TAG_NOT_FOUND | 404007 |
| OPERATION_NOT_SUPPORTED | 404008 |
| MISMATCHED_LUID | 404009 |
| FAVORITE_NOT_FOUND | 404010 |
| VIEW_NOT_FOUND | 404011 |
| GROUP_NOT_FOUND | 404012 |
| CAPABILITY_NOT_FOUND | 404013 |
| PERMISSION_NOT_FOUND | 404014 |
| FILE_UPLOAD_NOT_FOUND | 404015 |
| AD_DOMAIN_NOT_FOUND | 404016 |
| AD_GROUP_NOT_FOUND | 404017 |
| JOB_NOT_FOUND | 404018 |
| MISMATCH_AD_GROUP_DOMAIN_NAME_ON_SYNC | 404019 |
| DATA_CONNECTION_NOT_FOUND | 404020 |
| CAPABILITY_NOT_ASSIGNED | 404021 |
| USER_NOT_FOUND_IN_GROUP | 404022 |
| SCHEDULE_NOT_FOUND | 404023 |
| REVISION_NOT_FOUND | 404024 |
| SUBSCRIPTION_NOT_FOUND | 404025 |
| TASK_NOT_FOUND | 404026 |
| FLOW_NOT_FOUND | 404027 |
| METRIC_NOT_FOUND | 404028 |
| CONTENT_NOT_FOUND | 404029 |
| LABEL_NOT_FOUND | 404030 |
| DATABASE_NOT_FOUND | 404031 |
| TABLE_NOT_FOUND | 404032 |
| DATA_ROLE_NOT_FOUND | 404033 |
| WEBHOOK_NOT_FOUND | 404034 |
| RECOMMENDATION_NOT_FOUND | 404035 |
| FLOW_RUN_NOT_FOUND | 404036 |
| DATA_QUALITY_TRIGGER_NOT_FOUND | 404037 |
| COLLECTION_NOT_FOUND | 404038 |
| PERSONAL_SPACE_NOT_FOUND | 404039 |
| LOCATION_NOT_FOUND | 404040 |
| CONNECTED_APP_NOT_FOUND | 404041 |
| CONNECTED_APP_SECRET_NOT_FOUND | 404042 |
| FLOW_PARAMETER_NOT_FOUND | 404043 |
| BROADCAST_NOT_FOUND | 404044 |
| LINKED_TASK_NOT_FOUND | 404045 |
| LENS_NOT_FOUND | 404046 |
| EXTERNAL_AUTHZ_SERVER_NOT_FOUND | 404047 |
| API_TOKEN_NOT_FOUND | 404050 |
| PERSONAL_ACCESS_TOKEN_NOT_FOUND | 404051 |
| SCIM_CONFIGURATION_NOT_FOUND | 404057 |
| METHOD_NOT_ALLOWED | 405000 |
| UNACCEPTABLE_MEDIA_TYPE | 406000 |
| USER_ALREADY_ON_SITE | 409000 |
| SITE_NAME_EXISTS | 409001 |
| SITE_URL_EXISTS | 409002 |
| USER_ASSET_CONFLICT | 409003 |
| INVALID_PARAMETER | 409004 |
| CANNOT_ADD_USER_WITH_GUEST_ROLE | 409005 |
| PROJECT_NAME_EXISTS | 409006 |
| FAVORITE_LABEL_EXISTS | 409007 |
| CONFLICTING_PERMISSION | 409008 |
| GROUP_NAME_EXISTS | 409009 |
| EMAIL_EXISTS | 409010 |
| USER_ALREADY_IN_GROUP | 409011 |
| WORKBOOK_NAME_ALREADY_EXISTS | 409012 |
| WORKBOOK_ALREADY_EXISTS_IN_DESTINATION | 409013 |
| INSUFFICIENT_USER_LICENSES | 409014 |
| DATASOURCE_ALREADY_EXISTS | 409015 |
| IMPLICITLY_ADDED_SYSTEM_ADMIN | 409016 |
| USER_ALREADY_MEMBER_OF_SITE | 409017 |
| UPDATE_USER_SITE_USER_QUOTA_REACHED | 409018 |
| SITE_ID_EXISTS | 409019 |
| INVALID_SITE_ID | 409020 |
| SCHEDULE_NAME_EXISTS | 409021 |
| GUEST_ACCESS_CANNOT_BE_SET | 409022 |
| DATAALERT_NOT_FOUND | 409023 |
| GENERIC_QUERY_DATAALERTS_ERROR | 409024 |
| QUERY_DATAALERTS_FORBIDDEN | 409025 |
| GENERIC_DELETE_DATAALERT_ERROR | 409026 |
| DELETE_DATAALERT_FORBIDDEN | 409027 |
| ADD_RECIPIENT_TO_DATAALERTS_FORBIDDEN | 409028 |
| DELETE_DATAALERT_RECIPIENT_FORBIDDEN | 409029 |
| UPDATE_DATAALERT_FORBIDDEN | 409030 |
| NO_ENCRYPTABLE_EXTRACTS | 409031 |
| ENCRYPT_EXTRACTS_FORBIDDEN | 409032 |
| EXTRACT_ENCRYPTION_NOT_ENABLED_ON_SERVER | 409033 |
| CANNOT_ENCRYPT_ON_SITE_WITH_DISABLED_ENCRYPTION | 409034 |
| CANNOT_DECRYPT_ON_SITE_WITH_ENFORCED_ENCRYPTION | 409035 |
| CANNOT_PUBLISH_ENCRYPTED_ON_SITE_WITH_DISABLED_ENCRYPTION | 409036 |
| CANNOT_PUBLISH_UNENCRYPTED_ON_SITE_WITH_ENFORCED_ENCRYPTION | 409037 |
| REKEY_SITE_EXTRACTS_FORBIDDEN | 409038 |
| CANNOT_REKEY_EXTRACTS_ON_SITE_WITH_DISABLED_ENCRYPTION | 409039 |
| GENERIC_REKEY_SITE_EXTRACTS_ERROR | 409040 |
| FLOW_ALREADY_EXISTS_IN_DESTINATION | 409041 |
| DECRYPT_EXTRACTS_FORBIDDEN | 409042 |
| GENERIC_ENCRYPT_SITE_EXTRACTS_ERROR | 409043 |
| GENERIC_DECRYPT_SITE_EXTRACTS_ERROR | 409044 |
| GENERIC_DATABASE_ERROR | 409045 |
| GENERIC_QUERY_DATABASE_ERROR | 409046 |
| GENERIC_DELETE_DATABASE_ERROR | 409047 |
| GENERIC_ADD_TAGS_TO_DATABASE_ERROR | 409048 |
| GENERIC_DELETE_TAG_FROM_DATABASE_ERROR | 409049 |
| GENERIC_UPDATE_DATABASE_ERROR | 409050 |
| UPDATE_DATABASE_FORBIDDEN | 409051 |
| GENERIC_TABLE_ERROR | 409052 |
| GENERIC_QUERY_TABLE_ERROR | 409053 |
| GENERIC_DELETE_TABLE_ERROR | 409054 |
| GENERIC_ADD_TAGS_TO_TABLE_ERROR | 409055 |
| GENERIC_DELETE_TAG_FROM_TABLE_ERROR | 409056 |
| GENERIC_UPDATE_TABLE_ERROR | 409057 |
| UPDATE_TABLE_FORBIDDEN | 409058 |
| GENERIC_COLUMN_ERROR | 409059 |
| GENERIC_QUERY_COLUMN_ERROR | 409060 |
| GENERIC_DELETE_COLUMN_ERROR | 409061 |
| GENERIC_ADD_TAGS_TO_COLUMN_ERROR | 409062 |
| GENERIC_DELETE_TAG_FROM_COLUMN_ERROR | 409063 |
| UPDATE_COLUMN_FORBIDDEN | 409064 |
| GENERIC_UPDATE_COLUMN_ERROR | 409065 |
| COLUMN_NOT_FOUND | 409066 |
| EXTRACT_CREATION_FORBIDDEN | 409067 |
| CANNOT_CREATE_EXTRACT_ON_EXTRACT_DATASOURCE | 409068 |
| CANNOT_CREATE_EXTRACT_DUPLICATE | 409069 |
| GENERIC_EXTRACT_CREATION_ERROR | 409070 |
| CANNOT_CREATE_ENCRYPTED_EXTRACT_WHEN_EXTRACTION_SETTINGS_DISABLED | 409071 |
| CANNOT_CREATE_UNENCRYPTED_EXTRACT_WHEN_EXTRACTION_SETTINGS_ENFORCED | 409072 |
| CANNOT_CREATE_ENCRYPTED_EXTRACT_MIXED_WITH_UNENCRYPTED_DATASOURCE | 409073 |
| CANNOT_CREATE_UNENCRYPTED_EXTRACT_MIXED_WITH_ENCRYPTED_DATASOURCE | 409074 |
| ENCRYPT_PARAMETER_REQUIRED | 409075 |
| NO_VALID_DATASOURCE_TO_CREATE_EXTRACT | 409076 |
| CANNOT_CREATE_EXTRACT_WHEN_PENDING_EXTRACT_EXISTS | 409077 |
| DELETE_EXTRACT_FORBIDDEN | 409078 |
| GENERIC_DELETE_EXTRACT_FOR_DATASOURCE_ERROR | 409079 |
| GENERIC_DELETE_EXTRACTS_FOR_WORKBOOK_ERROR | 409080 |
| DATA_ROLE_ALREADY_EXISTS_ERROR | 409081 |
| RUN_NOW_FORBIDDEN | 409082 |
| DELETE_EMBEDDED_DATASOURCE_NOTSUPPORTED | 409083 |
| GENERIC_CREATE_VIEW_RECOMMENDATIONS_DISMISSAL_ERROR | 409084 |
| GENERIC_DELETE_VIEW_RECOMMENDATIONS_DISMISSAL_ERROR | 409085 |
| METRIC_ALREADY_EXISTS_IN_DESTINATION | 409086 |
| DATA_ACCELERATION_INFO_ACCESS_FORBIDDEN | 409087 |
| GENERIC_UNGROUP_DATABASE_ERROR | 409088 |
| EXTRACT_OPERATION_NOT_ALLOWED | 409090 |
| ADMIN_SCHEDULES_NOT_SUPPORTED | 409091 |
| BATCH_CREATE_TAGS_ERROR | 409092 |
| EXTRACT_OPERATION_ALREADY_QUEUED | 409093 |
| DATA_UPDATE_JOB_ALREADY_QUEUED | 409094 |
| GENERIC_ASSET_ANCHOR_ERROR | 409095 |
| ASSET_ANCHOR_RETRIEVAL_FORBIDDEN | 409096 |
| ASSET_ANCHOR_INVALID_PARAMETER | 409097 |
| INVALID_LOCATION_TYPE_VALUE | 409100 |
| INVALID_MISSING_LOCATION_TYPE | 409101 |
| INVALID_MISSING_LOCATION_ID | 409102 |
| INVALID_TYPE_LOCATION_PROJECT | 409103 |
| PERSONAL_SPACE_FEATURE_DISABLED | 409104 |
| SITE_SWITCH_DISABLED | 409105 |
| CONTENT_MIGRATION_NOT_AUTHORIZED | 409107 |
| USER_NOTIFICATION_PREFERENCES_INVALID_TYPE | 409109 |
| USER_NOTIFICATION_PREFERENCES_INVALID_CHANNEL | 409110 |
| USER_NOTIFICATION_PREFERENCES_FF_DISABLED | 409111 |
| CONTENT_MIGRATION_ALREADY_EXISTS | 409112 |
| USER_NOTIFICATION_PREFERENCES_UPDATE_PREFERENCES_FORBIDDEN | 409113 |
| USER_NOTIFICATION_PREFERENCES_UPDATE_SETTING_OVERRIDDEN | 409114 |
| USER_NOTIFICATION_PREFERENCES_UPDATE_MULTI_STATUS | 409115 |
| USER_NOTIFICATION_PREFERENCES_UNKNOWN | 409116 |
| GROUPSET_NOT_FOUND | 409120 |
| GROUPSET_NAME_EXISTS | 409121 |
| PAYLOAD_TOO_LARGE | 413000 |
| TOO_MANY_REQUESTS | 429000 |
| USER_ALREADY_IN_IDENTITY_POOL | 429001 |
| CANNOT_ADD_USER_TO_IDENTITY_POOL | 429002 |
| CANNOT_REMOVE_USER_FROM_IDENTITY_POOL | 429003 |
| INTERNAL_SERVER_ERROR | 500000 |
| INTERNAL_SERVICE_ERROR | 500001 |
| BROADCAST_SERVICE_ERROR | 500002 |
| GENERIC_PUBLISH_TO_SALESFORCE_APPS_ERROR | 500003 |
| LANG_ASSIGNMENT_FAILED_UNKNOWN_ERROR | 500109 |
| LOCALE_ASSIGNMENT_FAILED_UNKNOWN_ERROR | 500110 |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that is associated with the user you want to add to the identity pool. |
| user-name |
The name of the user to add. |
| site-role |
Site role of the user. You can use one of the following values:
|
| user-id | Required. The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site. |
| authentication-configuration | The authentication configuration instance configured for the identity pool you want to add the user to. You can get the authentication configuration instance by calling List Authentication Configurations endpoint in Tableau REST OpenAPI. |
| idpool-uuid | The ID of the identity pool that you wan to add the user to. You can get the identity pool ID by calling the List Identity Pools endpoint in the Tableau REST OpenAPI. |
| identity-uuid | The identifier for the user you want to add. Identifiers are only used for identity matching purposes. For more information about identifiers, see Usernames and Identifiers in Tableau in the Tableau Server Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 429 | 429001 | User conflict | The specified user is already a member of the identity pool. |
| 429 | 429002 | Can't add user | There was a problem and the user couldn't be added to the identity pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that is associated with the user you want to remove from the identity pool. |
| user-id | The ID of the user to remove from the identity pool. |
| idpool-uuid | The ID of the identity pool to remove the user from. You can get the identity pool ID by calling the List Identity Pools endpoint in the Tableau REST OpenAPI. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 429 | 429003 | Can't remove user | There was a problem and the user couldn't be removed from the identity pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| schedule-id | The ID of the schedule that you are associating with the data source. |
| datasource-id | The ID of the data source to add to the schedule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404004 | Resource not found | The data source ID in the request body is unknown. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 500 | 500000 | Internal Server Error | The schedule ID in the URI is unknown. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| schedule-id | The LUID for the schedule that you are associating with the virtual connection. |
| transaction-level |
Optional. DATABASE or TABLE. Default is DATABASE.
|
| incremental-flag |
Optional, boolean. Default is false.
|
| virtualconnection-id | The LUID of the virtual connection to add to the schedule. |
| starting-item-id | The LUID of an extract table in the virtual connection. You may have more than one <startingItemId> element inside of a <startingItemIds> element. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400223 | Virtual connection table not found. | A LUID in startingItemIds is not an extract-eligible table on the virtual connection. |
| 400 | 400225 | Duplicate virtual connection table. | startingItemIds contains the same table LUID more than once. |
| 400 | 404049 | No virtual connection specified. | The request body must include a virtual connection in the extractRefresh element. |
| 400 | 409004 | Invalid parameter. | startingItemIds contains a value that is not a valid LUID. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision, or none of its tables are configured for extract refresh. |
| 403 | 403078 | Unable to create the task. |
One of the following applies:
|
| 404 | 404023 | Schedule not found. | Check the schedule LUID. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Request type must be PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| schedule-id | The ID of the schedule that you are associating with the workbook. |
| workbook-id | The ID of the workbook to add to the schedule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404006 | Resource not found | The workbook ID in the request body is unknown. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 500 | 500000 | Internal Server Error | The schedule ID in the URI is unknown. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| state-enum | Required, enum. Either active or suspended. The state for the schedule(s). |
|
update-all-flag |
Optional, boolean. If |
|
schedule-id |
The LUID of the schedule. You can include multiple schedule-ids using additional Note: If the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Generic error | An unknown error occurred. The content of the request body may be missing or incomplete, or may contain malformed XML. |
| 403 | 403188 | Permissions error | User calling the method isn't a server administrator. |
| 403 | 403189 | Invalid LUID | One or more of the schedule LUIDs isn't a valid LUID. |
| 404 | 404023 | LUID not found | One or more of the schedule LUIDs isn't found. |
| 405 | 405000 | Availability error | This method only exists on Tableau Server. Tableau Cloud isn't supported. |
| 409 | 409004 | Parameter error | The state parameter is absent or not recognized; or the updateAll parameter was absent or false and no schedule LUIDs were provided. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| job-id | The ID of the job to cancel. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403032 | Update forbidden | A non-administrator user tried to cancel a job. |
| 403 | 403091 | Can not cancel job, because it's already complete. | The job ID provided is for a job that has already succeeded or failed. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
extractRefresh type
|
The type of extract refresh being scheduled. Valid values include:
|
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
workbook id or datasource id or virtualConnection id |
The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. |
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400225 | Duplicate starting item | startingItemIds contains a duplicate table LUID. |
| 409 | 409090 | Extract operation not allowed | The virtual connection has no extract-configured tables; all tables are live. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 404 | 404026 | Task not found | The task for the extract refresh could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-name | The name to give to the schedule. This name identifies the schedule in the server environment when users select a schedule and manage schedule information. |
| schedule-priority | An integer value between 1 and 100 that determines the default priority of the schedule if multiple tasks are pending in the queue. Lower numbers have higher priority. |
| schedule-type | Flow to create a flow schedule, Extract to create an extract refresh schedule,
Subscription to create a subscription schedule, or DataAcceleration to create a
data acceleration schedule.
Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| schedule-execution-order | Parallel to allow jobs associated with this schedule to run at the same time, or Serial to require the jobs to run one after the other. |
| schedule-frequency |
This represents the granularity of the schedule.
The value you provide for schedule-frequency determines whether you must include an end-time value, and what is required in the contents of the <intervals> element. |
| start-time | The time of day on which scheduled jobs should run (or if the frequency is hourly, on which they should start being run), in the format HH:MM:SS (for example, 18:30:00). This value is required for all schedule frequencies. The entered time will be applied based on the time zone of your server. |
| end-time | If the schedule frequency is Hourly, the time of day on which scheduled jobs should stop being run, in the format HH:MM:SS (for example, 23:30:00). Hourly jobs will occur at the specified intervals between the start time and the end time. For other schedule frequencies, this value is not required; if the attribute is included, it is ignored. The entered time will be applied based on the time zone of your server. |
| interval-expression | A value that specifies the interval between jobs associated with the schedule. The value you specify here depends on the value specified in schedule-frequency.
The interval expression is only one of the following:
You can specify an interval in hours or minutes, but not both.
If the schedule frequency is
The interval expression is You can specify multiple <interval> elements to indicate that scheduled jobs should run on multiple days during the week.
The interval expression is Note: If you want to specify multiple days in the month, you can do this using the web interface. You cannot create or update such a monthly schedule using REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400064 | Error creating schedule | An unspecified error occurred while trying to create the schedule. |
| 400 | 409004 | Bad request | The content of the request body is missing or incomplete. For hourly, daily, or monthly schedules, this often means that the content of the <intervals> element does not match the expected format. The <detail> element of the error provides detail about the expected format. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409021 | Schedule name conflict | The schedule name in the request already belongs to an existing schedule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| dataAcceleration-id | The ID of the task to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 409087 | Permission denied | The user isn't authorized to view data acceleration tasks. |
| 403 | 409087 | Permission denied | The user isn't authorized to access the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404026 | Task not found | The task id in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-id | The ID of the schedule to delete. To determine what schedules are available, call List Server Schedules. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400059 | Error deleting the schedule. | An unspecified error occurred during the deletion operation. |
| 404 | 404023 | Schedule not found | The specified schedule doesn't correspond to an existing schedule on the site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| 403 | 409087 | Permission denied | The user isn't authorized to view data acceleration tasks. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 40500 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh that you want information about. |
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404026 | Task not found | The task ID in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-id | The ID of the specific schedule. Note: You can get the schedule id from running the List Server Schedules method. For more information, see Jobs, Tasks, and Schedules Methods |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404027 | Schedule not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the refresh tasks. |
| schedule-id | The ID of the schedule to get extract information for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400047 | Invalid schedule type | The schedule type does not represent an extract refresh task. (For example, it might be a subscription task.) |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404 | Schedule not found | The schedule ID in the URI doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| job-id | The ID of the job to get status information for. |
| Type | Value | Text |
|---|---|---|
| CountOfUsersAddedToGroup | Integer | Description of how many users were added to the group during the import. |
| CountOfUsersAddedToSite | Integer | Description of how many users were added to the site during the import. |
| CountOfUsersWithInsufficientLicenses | Integer | Description of how many users could not have their site role updated due to server lacking sufficient licenses for them. |
| CountOfUsersInActiveDirectoryGroup | Integer | Description of the total number of users in the Active Directory group being imported or synchronized |
| CountOfUsersProcessed | Integer | Description of the total number of users processed during the import or synchronization process. |
| CountOfUsersSkipped | Integer | Description of the total number of users skipped during the import or synchronization process |
| CountOfUsersInformationUpdated | Integer | Description of the total number of users whose information was updated during the import or synchronization process. |
| CountOfUsersSiteRoleUpdated | Integer | Description of the total number of users whose site role was updated during the import or synchronization process. |
| CountOfUsersRemovedFromGroup | Integer | (Synchronization process only) Description of the number of users removed from the group during the synchronization process. |
| CountOfUsersUnlicensed | Integer | (Synchronization process only) Description of the number of users who were unlicensed during the synchronization process. |
| SiteDelete | Integer | Description of the site deletion progress. Can include a general error or errorCode=9 when a site can't be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404018 | Job not found | The job ID in the URI doesn't correspond to an existing job. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh task that you want to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400047 | Extract refresh error | The task specified is not an extract refresh task. |
| 400 | 409090 | Extract operation not allowed | The extract operation is not allowed for the asset that the task refreshes. |
| 403 | 403004 | Operation on resource unauthorized | The user is not authorized to run the task. |
| 403 | 409082 | Run now disabled | The Run Now setting is disabled for the site. |
| 404 | 404003 | Unknown resource | The task ID in the URI doesn't correspond to an existing task. |
| 404 | 404049 | Virtual connection not found | The virtual connection that the task refreshes no longer exists. |
| 405 | 405000 | Method not allowed | The request type was not POST. |
| 409 | 409093 | Operation already in queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-id | The ID of the schedule to update. To determine what schedules are available, call List Server Schedules. |
| new-schedule-name | The new name to give to the schedule. |
| new-schedule-priority | An integer value between 1 and 100 that determines the default priority of the schedule if multiple tasks are pending in the queue. Lower numbers have higher priority. |
| new-schedule-execution-order | Parallel to allow jobs associated with this schedule to run at the same time, or
Serial to require the jobs to run one after the other.
|
| new-schedule-frequency | The granularity of the schedule. Valid values are:
The value you provide for schedule-frequency determines whether you must include an end-time value, and what
is required in the contents of the <intervals> element. |
| new-state | Active to enable the schedule, or
Suspended to disable it.
|
| start-time | The time of day on which scheduled jobs should run (or if the frequency is hourly, on which they should start being run), in the format HH:MM:SS (for example, 18:30:00).
This value is required for all schedule frequencies.
The entered time will be applied based on the time zone of your server. |
| end-time | If the schedule frequency is Hourly, the time of day on which scheduled jobs should stop being run, in the format HH:MM:SS (for example, 23:30:00). Hourly jobs will occur at the specified intervals between the start time and the end time.
For other schedule frequencies, this value is not required; if the attribute is included, it is ignored.
The entered time will be applied based on the time zone of your server. |
| interval-expression | A value that specifies the interval between jobs associated with the schedule. The value you specify here depends on the
value of schedule-frequency.
The interval expression is only one of the following:
You can specify an interval in hours or minutes, but not both.
If the schedule frequency is
The interval expression is You can specify multiple <interval> elements to indicate that scheduled jobs should run on multiple days during the week. Note: Updating a schedule without specifying days of the week will reset any existing weekly interval to include all 7 days. If you need the job you are updating to remain scheduled on selected days, make sure to include that information in your update request.
The interval expression is Note: If you want to specify multiple days in the month, you can do this using the web interface. You cannot create or update such a monthly schedule using REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Invalid Parameter | One of the parameters in the request body is invalid. |
| 400 | 400071 | Error updating schedule | The schedule couldn't be updated for an unspecified reason. |
| 404 | 404023 | Schedule not found | The specified schedule doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409021 | Schedule name conflict | The schedule name in the request already belongs to an existing schedule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 403180 | Full refresh not allowed. | A full refresh extract operation is not allowed for the virtual connection. |
| 400 | 403181 | Incremental refresh not allowed. | The request specified an incremental refresh, but an incremental refresh extract operation is not allowed for the virtual connection. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision or no extract-eligible tables. Live tables are not refreshed. |
| 403 | 403199 | User not authorized to refresh the virtual connection. | The user must have either the Manage Extract or the Allow Extract Refresh permission on the virtual connection. |
| 403 | 409082 | Run Now is disabled for the site. | Enable Run Now for the site, then try the request again. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Direct virtual connection extract refresh is not enabled for this site. |
| 409 | 409093 | Operation already in queue. | An extract refresh job for the virtual connection is already in the queue. |
| ConnectionType Name | Display Name |
|---|---|
| asterncluster | Aster Database |
| athena | Amazon Athena |
| aurora | Amazon Aurora for MySQL |
| awshadoophive | Amazon EMR Hadoop Hive |
| azure_sql_dw | Azure SQL Data Warehouse |
| bigquery | Google BigQuery |
| bigsql | IBM BigInsights |
| box | Box |
| cloudfile:box-excel-direct | Microsoft Excel (Box) |
| cloudfile:box-semistructpassivestore-direct | JSON file (Box) |
| cloudfile:box-textscan | Text file (Box) |
| cloudfile:dropbox-excel-direct | Microsoft Excel (Dropbox) |
| cloudfile:dropbox-semistructpassivestore-direct | JSON file (Dropbox) |
| cloudfile:dropbox-textscan | Text file (Dropbox) |
| cloudfile:googledrive-excel-direct | Microsoft Excel (Google Drive) |
| cloudfile:googledrive-semistructpassivestore-direct | JSON file (Google Drive) |
| cloudfile:googledrive-textscan | Text file (Google Drive) |
| cloudfile:onedrive-excel-direct | Microsoft Excel (OneDrive) |
| cloudfile:onedrive-semistructpassivestore-direct | JSON file (OneDrive) |
| cloudfile:onedrive-textscan | Text file (OneDrive) |
| composite | TIBCO Data Virtualization |
| csv | Text file (legacy) |
| databricks | Databricks |
| dataengine | Tableau Data Engine |
| db2 | IBM DB2 |
| denodo | Denodo |
| drill | Apache Drill |
|
dropbox |
Dropbox |
| essbase | Oracle Essbase |
| exasolution | Exasol |
| excel | Microsoft Excel (legacy) |
| excel-direct | Microsoft Excel |
| excel-reader | Microsoft Excel Reader |
| firebird | Firebird |
| genericjdbc | Other Databases (JDBC) |
| genericodbc | Other Databases (ODBC) |
| google-analytics | Google Analytics |
| googlecloudsql | Google Cloud SQL |
| googledrive | Google Drive |
| google-sheets | Google Sheets |
| greenplum | Pivotal Greenplum Database |
| hadoophive | Cloudera Hadoop |
| hive | Apache Hive |
| hortonworkshadoophive | Hortonworks Hadoop Hive |
| hyper | Tableau Data Engine |
| jdbc | Other Databases (JDBC) Note: This might display as "unknown." |
| kognitio | Kognitio |
| maprhadoophive | MapR Hadoop Hive |
| mariadb | MariaDB |
| marklogic | MarkLogic |
| memsql | MemSQL |
| monetdb | MonetDB |
| mongodb | MongoDB BI Connector |
| msaccess | Microsoft Access |
| msolap | Microsoft Analysis Services |
| mysql | MySQL |
| mysql_odbc | Other Databases (ODBC) Note: This might display as "unknown." |
| netezza | IBM PDA (Netezza) |
| odata | OData |
| odbc | Other Databases (ODBC) Note: This might display as "unknown." |
| ogr | Spatial file |
| ogrdirect | Spatial file |
| onedrive | OneDrive |
| oracle | Oracle |
| paraccel | Actian Matrix |
| PDF file | |
| postgres | PostgreSQL |
| powerpivot | Microsoft PowerPivot |
| presto | Presto |
| progressopenedge | Progress OpenEdge |
| redshift | Amazon Redshift |
| remote-domain | Tableau Server |
| salesforce | Salesforce |
| sapbw | SAP NetWeaver Business Warehouse |
| saphana | SAP HANA |
| semistructpassivestore | JSON file Note: This might display as blank. |
| semistructpassivestore-direct | JSON file |
| sharepoint | SharePoint Lists |
| snowflake | Snowflake |
| spark | Spark SQL |
| splunk | Splunk |
| sqlproxy | Tableau Server |
| sqlserver | Microsoft SQL Server |
| stat | Statistical file |
| stat-direct | Statistical file |
| sybasease | SAP Sybase ASE |
| sybaseiq | SAP Sybase IQ |
| tbio | Teradata OLAP Connector |
| teradata | Teradata |
| textclean | Text file |
| textscan | Text file |
| vectorwise | Actian Vector |
| vertica | Vertica |
| vizengine | VizEngine |
| webdata | Web Data Connector |
| webdata-direct | Web Data Connector |
| webdata-direct:anaplan-anaplan | Anaplan |
| webdata-direct:google-ads | Google Ads |
| webdata-direct:intuit-quickbooks | Intuit QuickBooks Online (9.3-2018.1) |
| webdata-direct:intuit-quickbooks-v3 | Intuit QuickBooks Online |
| webdata-direct:marketo-marketo | Marketo |
| webdata-direct:oracle-eloqua | Oracle Eloqua |
| webdata-direct:ServiceNowITSM-ServiceNowITSM | ServiceNow ITSM |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
database
|
The LUID of the database asset you want to add permissions to. |
user id
|
The LUID of the user to add permissions for. |
capability name
|
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a database are:
These values are case sensitive. |
capability mode
|
Use one of the following capabilities:
These values are case sensitive. |
group id
|
The LUID of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be added because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409050 | Database update error | An unknown error occurred and the database asset could not be updated. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset to set default permissions for. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a databases are the following:
These values are case sensitive. |
| capability-mode |
Use one of the following capabilities:
These values are case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 403 | 403114 | Permissions setting forbidden | Default permissions cannot be added because the database asset is locked. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Resource not found | The database LUID in the URI doesn't correspond to a database asset on the site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use:
These values are not case sensitive. |
| content-luid | The unique ID of the asset (database, table, column, published data source, flow, virtual connection, or virtual connection table). This is the same as the content ID. |
| type |
Type of data quality warning to apply to the asset. To specify the type, use one of the following values:
These values are case sensitive. |
| state |
(Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. For more information about data quality warnings, see "Set a Data Quality Warning" in the Server Help or Cloud Help. |
| message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | (Optional) Enables high visibility for the data quality warning when set to "true". Value can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400108 | Generic add data quality warning error | The data quality warning could not be added for some other reason than those specified in this table. |
| 400 | 400109 | Bad request | The request body is missing the data quality warning type. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| flow-id | The unique ID of the flow content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| type |
The type of data quality warning to apply to the content or asset. To specify type, use one of the following values:
|
| message | (Optional) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| state | (Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. For more information about data quality warnings, see "Set a Data Quality Warning" in the Server Help or Cloud Help. |
| severity | (Optional) Enables high visibility for when the data quality warning is set to "true". Value can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400109 | Bad request | The content of the request body (content type, content id, or dataQualityWarning attributes) is missing, incomplete, or contains malformed XML. |
| 400 | 400108 | Generic add data quality warning error | The data quality warning could not be added for some other reason than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| datasource-id | The unique ID of the data source content. |
| virtualconnection-id | The unique ID of the virtual connection asset. |
| virtualconnectiontable-id | The unique ID of the virtual connection table asset. |
| type |
Use the following value to apply a data quality certification: CERTIFIED. |
| message | A custom message to accompany the data quality certification. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| state | (Optional) Controls whether the data quality certification displays. Value can be "true" or "false". If the state is not specified, the data quality certification is set to "true" and is visible by default. For more information about data quality certifications, see "Set a Data Quality Certification" in the Server Help or Cloud Help. |
| severity | (Optional) Enables high visibility for when the data quality certification is set to "true". Value can be "true" or "false". If the severity is not specified, the data quality certification is set to "false." This setting is available only through the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400108 | Generic data quality certification error | The data quality certification could not be added for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the monitoring is being applied to. Use one of the following values:
These values are not case sensitive. |
| content-luid |
The LUID of the asset. This is the same as the content ID. The square brackets are required around the single LUID or comma-separated list of LUIDs. |
| type |
Type of monitoring quality warning. To specify the type, use one of the following values:
These values are not case sensitive. |
| status |
Monitoring status. Values can be "true" or "false". If set to "true", the data source is monitored for extract refresh failures or the flow is monitored for flow run failures). If an extract refresh or flow run failure occurs, the specified data quality warning is attached to the data source or flow (depending on type). The data quality warning is removed when the extract refresh or flow run is successful. For more information about monitoring quality warnings, see the monitoring quality warning section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| message | (Optional) A custom message for the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | High visibility status of the data quality warning. Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400136 | Generic quality warning trigger error | The monitoring quality warning could not be added or updated for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| table-luid | The LUID of the table asset. |
| table-luid | The LUID for the table asset you want to add permissions to. |
| user-luid | The LUID of the user to add permissions for. |
| capability-name |
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a database are:
These values are case sensitive. |
| capability-mode |
Use one of the following capabilities:
These values are case sensitive. |
| group-id | The LUID of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be added because support for explicit permissions is available for table assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the table asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409057 | Table update error | An unknown error occurred and the table asset could not be updated. |
| 409 | 409058 | Table update forbidden | A user without "write" permissions to the table asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| column-id | The unique ID of the column asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 |
Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409062 | Generic column tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 | Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 409 | 409048 | Generic database tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the column asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 |
Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409055 | Generic table tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| tag-value1 |
Keyword text you want to add to item. |
| tag-value2 |
Keyword text you want to add to item. |
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| workbook-id | The unique ID of the workbook content. |
| flow-id | The unique ID of the flow content. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400049 | Error adding tags | There was a problem adding tags to the specified virtual connection. |
| 403 | 403004 | Adding tags forbidden | The user doesn't have permissions to add tags to the virtual connection. |
| 404 | 404000 | Site not found | The site ID in the URI is not for an existing site. |
| 404 | 404006 | Virtual connection not found | The virtual connection ID in URI doesn't correspond to an existing virtual connection. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-category-name |
The label category name. Required. Must be 1-128 characters long. (In Tableau Server 2023.3 and earlier, must be 1-24 characters long.) |
| label-category-description |
The label category description. Required. Must be 1-500 characters in length. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400189 | Generic create label categories error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | You must be an administrator to create, update, or delete label values. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-value-name |
The label value name. Required. If you specify an existing label value name, this method will update the label value. If you specify a label value name that's different than existing label value names, this method will create the label value. Required. Must be 1-128 characters long. (In Tableau Server 2023.3 and earlier, must be 1-24 characters long.) |
| label-value-category |
The label value category. Required. If you're updating an existing label value, this must match the existing category for that label value. |
| label-value-description |
The label value description. Required, but does not need to be different than the existing description. Must be 1-500 characters in length. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 401 | 4000173 | Generic create label values error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | You must be a site or server administrator to create or update label values. |
| 403 | 403157 | Bad request | You may see this error if you try to create or update a label in the certification category. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site. |
| database-luid | The LUID of the database asset. |
| user-luid | The LUID of the user to remove the permissions for. |
| group-luid | The LUID of the group to remove the permissions for. |
| capability-name | The explicit permissions capability to remove. Capabilities that can be removed are Read, Write, ChangePermissions, or ChangeHierarchy. |
| capability-mode | The permissions mode to remove. Modes that can be removed are Allow or Deny. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the database asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| user-luid | The LUID of the user to remove the default permission for. |
| group-id | The LUID of the group to remove the default permission for. |
| capability-name |
The capability to remove the permissions for. Valid capabilities for databases are the following:
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Default permissions cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400105 | Data quality warning delete error | An unknown error occurred and the data quality warning could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use:
Types are not case sensitive. |
| content-luid | The LUID of the content (database, table, column, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 409 | 400106 | Data quality warning delete error | An unknown error occurred and the data quality warning could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| flow-id | The unique ID of the flow content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| certification-luid | The unique ID of the data quality certification. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400105 | Generic data quality certification error | The data quality certification could not be deleted for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| indicator-id | The unique ID of the data quality certification. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| datasource-id | The unique ID of the data source content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400106 | Generic data quality certification error | The data quality certifications could not be deleted for some reason other than those specified in this table. |
| 404 | 404029 | Content not found | The content does not exist. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| trigger-id |
The unique ID of the quality warning trigger. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400138 | Generic quality warning trigger error | The quality warning trigger could not be deleted for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the quality warning trigger has been applied to. In this case, use one of the following values:
These values are not case sensitive. |
| content-luid | The unique ID of the asset. This is the same as the content ID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400138 | Generic quality warning trigger error | The quality warning trigger could not be deleted for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400105 | Generic delete label error | An unknown error occurred. Confirm that the LUID in the URI is correct. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | The URI does not contain a properly-formatted LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site. |
| category-list | (Optional) A comma-separated list of label value categories used to limit the label deletions to only the listed categories. See Data Labels in the REST API for information on label values and categories. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400106 | Generic delete labels error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 404 | 404029 | Resource not found | The contentType and contentID attribute combination does not correspond to an asset on the server. This can be caused by an incorrect contentType, an incorrect contentID, or both. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-value-name | The label value name. URL encode the label value name if it has spaces or non-alphanumeric characters in it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 403 | 403004 | Operation on resource unauthorized | You must be a site or server administrator to create or update label values. |
| 409 | 409004 | Invalid parameter |
|
| 401 | 4000173 | Generic add labels to content error | An unknown error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-category-name | The label category name. URL encode the label category name (as it appears in the Tableau web interface) if it has spaces or non-alphanumeric characters in it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400191 | Generic delete label category error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized |
You must be an administrator to create, update, or delete label values. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| table-luid | The LUID of the table asset. |
| user-luid | The LUID of the user to remove the permissions for. |
| group-luid | The LUID of the group to remove the permissions for. |
| capability-name | The explicit permissions capability to remove. Capabilities that can be removed are Read, Write, ChangePermissions, or ChangeHierarchy. |
| capability-mode | The permissions mode to remove. Modes that can be removed are Allow or Deny. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for table assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the table asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| column-id | The unique ID of the column asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 409 | 409062 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified in this table. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 409 | 409048 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409055 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| tag-value1 |
Keyword text you want to add to item. |
| tag-value2 |
Keyword text you want to add to item. |
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| workbook-id | The unique ID of the workbook content. |
| flow-id | The unique ID of the flow content. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag-name | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400077 | Error deleting tag | There was a problem deleting the tag from the specified virtual connection. |
| 403 | 403004 | Deleting tags forbidden | The user doesn't have permissions to add delete tags from the virtual connection. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400103 | Generic query label error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 404 | 404030 | Label not found | The label LUID doesn't correspond to an existing project. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| category-list | (Optional) A comma-separated list of label value categories used to limit the labels shown to only the listed categories. See Data Labels in the REST API for information on label values and categories. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| project-luid | The LUID of the destination project. |
| location-type |
The destination type. Currently, this value must be "PROJECT". |
| action-type | To move a database without moving its tables, this value must be "MoveDatabaseOnly". |
| database-luid | The LUID of the database. |
| asset-type | The type of asset being moved. Currently, this value must be "DATABASE". |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 409100 | Invalid location type | The location element's type attribute must be "PROJECT". |
| 400 | 409103 | Invalid content type | The resource element's contentType attribute must be "DATABASE". |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions or operation not allowed. Make sure Tableau Catalog is enabled. |
| 403 | 403030 | Permissions denied | The user does not have permission to move the database. |
| 403 | 403112 | Invalid Operation | The database may be embedded, and therefore cannot be moved. |
| 403 | 403156 | External assets can not be moved | The user does not have appropriate permissions. |
| 404 | 404005 | Project not found | The project LUID doesn't correspond to an existing project. |
| 404 | 404031 | Database not found | The database LUID doesn't correspond to an existing database. In a case where multiple databases were specified in the request, other database moves could have succeeded. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the table. |
| project-luid | The LUID of the destination project. |
| location-type |
The destination type. Currently, this value must be "PROJECT". |
| table-luid | The LUID of the table. |
| asset-type | The type of asset being moved. Currently, this value must be "TABLE". |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 409100 | Invalid location type | The location element's type attribute must be "PROJECT". |
| 400 | 409103 | Invalid content type | The resource element's contentType attribute must be "TABLE". |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions or operation not allowed. Make sure Tableau Catalog is enabled. |
| 403 | 403030 | Permissions denied | The user does not have permission to move the table. |
| 403 | 403112 | Invalid Operation | The table may belong to an embedded database, and therefore cannot be moved. |
| 403 | 403156 | External assets can not be moved | The user does not have appropriate permissions. |
| 404 | 404005 | Project not found | The project LUID doesn't correspond to an existing project. |
| 404 | 404032 | Table not found | The table LUID doesn't correspond to an existing table. In a case where multiple tables were specified in the request, other table moves could have succeeded. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 409 | 409059 | Unknown column error | An unknown column asset error occurred. |
| 409 | 409060 | Unknown column query error | An unknown error occurred and the column query could not complete. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 409 | 409059 | Unknown column error | An unknown column asset error occurred. |
| 409 | 409060 | Unknown column query error | An unknown error occurred and the column query could not complete. |
| 409 | 409066 | Column not found | The requested column assets could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409046 | Unknown database query error | An unknown error occurred and the database query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested databases could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409046 | Unknown database query error | An unknown error occurred and the database query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 400 | 400120 | Bad request | Support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset to set default permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for database assets associated with published data sources only. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Resource not found | The database LUID in the URI doesn't correspond to a database asset on the site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400103 | Unknown data quality warning query error | An unknown error occurred and the data quality warning query could not complete. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The LUID of the content (database, table, column, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400104 | Unknown data quality warning query error | An unknown error occurred and the data quality warning query could not complete. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| certification-luid | The unique ID of the data quality certification. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400103 | Generic data quality certification error | The data quality certification could not be queried for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404030 | Data quality indicator not found | The requested data quality certification was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the data quality certification has been applied to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The LUID of the content (database, table, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400104 | Generic data quality certification error | The data quality certification could not be queried for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Data quality indicator not found | The requested data quality certification was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the quality warning trigger has been applied to. To specify the type, use on of the following values:
These values are not case sensitive. |
| trigger-id | The unique ID of the quality warning trigger. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400134 | Generic quality warning trigger error | The quality warning trigger could not be queried for some reason other than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content that the quality warning trigger has been applied to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The unique ID of the asset. This is the same as the content ID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400134 | Generic quality warning trigger error | The quality warning triggers could not be queried for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table could not be found. |
| 409 | 409052 | Unknown table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested tables could not be found. |
| 409 | 409052 | Unknown table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for table assets associated with published data sources (not embedded data sources) only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409059 | Column error | An unknown column asset error occurred. |
| 409 | 409061 | Unknown column delete error | An unknown error occurred and the column could not be deleted. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409047 | Database delete error | An unknown error occurred and the database asset could not be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409054 | Unknown table delete error | An unknown error occurred and the table could not be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| new-description-value | (Optional) Custom text to describe the column. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Column error | An unknown table asset error occurred. |
| 409 | 409057 | Column update error | An unknown error occurred and the table asset could not be updated. |
| 409 | 409058 | Column update forbidden | A user without "write" permissions to the table asset attempted an update. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| certification-status |
(Optional) Certify or remove certification by using the following:
|
| certification-note | (Optional) Custom text to accompany the certification status. |
| new-description-value | (Optional) Custom text to describe the database asset. |
| new-content-permissions |
(Optional) The new permissions setting for the database. You can specify one of the following:
The default permissions setting is ManagedByOwner. These values are case sensitive. |
| new-contact-luid | (Optional) The LUID of the Tableau Server or Tableau Cloud user to associate with the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409050 | Database update error | An unknown error occurred and the database asset could not be updated. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| type |
Type of data quality warning to apply to the asset. To specify the type, use one of the following values:
Note: In Tableau Server 2023.1 and earlier, SENSITIVE_DATA is another type of data quality warning. Starting in Tableau Cloud June 2023 and Tableau Server 2023.3, it's a sensitivity label instead. These values are not case sensitive. |
| status |
(Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. |
| message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | (Optional) Enables high visibility for the data quality warning when set to "true". Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| trigger-id | The unique ID of the monitoring quality warning. |
| type |
Type of monitoring quality warning. To specify the type, use one of the following values:
These values are not case sensitive. |
| status |
Monitoring status. Values can be "true" or "false". If set to "true", the data source is monitored for extract refresh failures or the flow is monitored for flow run failures). If an extract refresh or flow run failure occurs, the specified data quality warning is attached to the data source or flow (depending on type). The data quality warning is removed when the extract refresh or flow run is successful. For more information about monitoring quality warnings, see the monitoring quality warning section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| message | (Optional) A custom message for the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | High visibility status of the data quality warning. Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400137 | Generic quality warning trigger error | The monitoring quality warning could not be updated for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation. | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| label-value-name |
(Optional) The label value name. You cannot change the category when updating a label. Choosing a label value name that's associated with a different category causes an error. See Data Labels in the REST API for a list of built-in label values and categories. Choosing a monitoring quality warning value (extract_refresh_failure or flow_run_failure) causes an error. |
| label-message | (Optional) The message text for the label. In the web interface, this is reflected as a certification note or a data quality warning message. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| active-flag | (Optional) Boolean. If set to true, the label becomes active. If set to false, the label becomes inactive. If omitted, the default is true. |
| elevated-flag | (Optional) Boolean. If set to true, the label becomes elevated. If set to false, the label becomes not elevated. If omitted, the default is false. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400103 | Generic query label error | An unknown error occurred. |
| 400 | 400109 | Missing payload | The request body is missing a label element. |
| 403 | 403004 | Invalid parameter | Operation on resource unauthorized |
| 404 | 404030 | Label not found | The label LUID doesn't correspond to an existing project. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid, or you are trying to change the label value to one from a different category. This error can also occur if you try to create or change a monitoring quality warning (label values extract_refresh_failure and flow_run_failure). |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| label-value-name |
The label value name. The built-in label value names are:
You can also use custom label value names that an administrator creates. (Custom label values were released with Tableau Cloud June 2023 and Tableau Server 2023.3.) If the request body specifies a label value that is already on the asset, the label on the asset is updated to match the request body. Otherwise, a label is created and attached to the asset. Note: On Tableau Server 2023.3 and earlier, only one label of a category is allowed on an asset. If the request body specifies a label value with the same category as a label already on the asset, the label on the asset is updated to match the request body. Otherwise, a label is created and attached to the asset. See Data Labels in the REST API for a list of built-in label values and categories. Choosing a monitoring quality warning value (extract_refresh_failure or flow_run_failure) causes an error. |
| label-message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) The message text for the label. In the web interface, this is reflected as a certification note or a data quality warning message. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| active-flag | (Optional) Boolean. If set to true, the label becomes active. If set to false, the label becomes inactive. If omitted, the default is true. |
| elevated-flag | (Optional) Boolean. If set to true, the label becomes elevated. If set to false, the label becomes not elevated. If omitted, the default is false. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the metric. |
| metric-luid | The unique ID of the metric to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site that contains the metric.> |
| metric-luid | The unique ID of the metric. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Permissions issue | The user does not have permissions to read the specified metric. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source to get revisions for. |
| metric-luid | The LUID of the metric whose data should be returned. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 40000 | Bad request | The LUID of the site or metric was malformed. |
| 401 | 40100 | Not authorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Not authorized | A non-administrator user attempted to get metric data, but does not have sufficient permissions. |
| 404 | 404000 | Site not found | The site LUIID in the URI doesn't correspond to an existing site. |
| 404 | Metric not found | The metric LUID in the URI doesn't correspond to an existing data source. | |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 405000 | Too many requests | The concurrent request limit for the site was exceeded. Retry after a pause. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the metrics. |
| filter-expression | (Optional) An expression that lets you specify a subset of metrics to return. You can filter on predefined fields such as metric name, or attributes of the associated owner or project. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which metric information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the metrics or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query metrics for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Metrics not found | No metrics are configured for this site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400123 | Unkown error | The metric could not be updated for an unknown reason. |
| 403 | 403119 | Owner update forbidden | The user does not have administrator permissions to change the owner for the metric. |
| 403 | 403120 | Project update forbidden | The user doesn't have Write permission for the project they are trying to move the metric to. |
| 403 | 403118 | Name update forbidden | The user does not have administrator permissions to change the name for the metric. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404004 | Metric not found | The metrice ID in the URI doesn't correspond to an existing metric. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409015 | Metric name conflict | The metric name in the request already belongs to the specified site. For the purpose of uniqueness checks, metric names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The request is incomplete is malformed. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The request is incomplete is malformed. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
mobileSecuritySettings name
|
(Optional)Enum. The device condition addressed by a security setting element. Supported values are:
|
mobileSecuritySettings enabled
|
(Optional) Boolean. If true, enables the Tableau mobile client to detect and respond to
the condition described in the setting's name. The enabled attribute for the Android
or iOS configuration element of the setting must also be true for detection on that type of device.
If mobileSecuritySettings enabled = false, the Android and iOS configuration element attribute
settings will be ignored.
|
mobileSecuritySettings androidConfig / iosConfig
|
(Optional)Element. Security settings specific to the platform of the mobile device hosting the Tableau client for the setting being configured. Required attributes of this element are:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing, incomplete, or is malformed XML. Invalid values for enabled, iosConfig, androidConfig, severity, or enabled attributes are possible causes. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| 409 | 409004 | Invalid setting | A mobile security setting enabled, name or other value is missing or malformed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Write forbidden | A user called this method who does not have the required permissions. |
| 403 | 409028 | Adding recipient to data-driven alert forbidden | The user is not authorized to add the recipient to the data-driven alert. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
dataAlertCreateAlert alertCondition
|
(Required) Enumeration: The condition that triggers the DDA. Used in conjunction with the threshold to determine when to trigger an alert. For example, an alert can be triggered if on the condition that data is above or equal to a threshold of 1000 orders. The value can be:
|
dataAlertCreateAlert alertThreshold
|
(Required) Int: The data value where an alert should be triggered when that value drops below or rises above the alert threshold value. |
dataAlertCreateAlert subject
|
(Required) String: The name of the data driven alert. |
dataAlertCreateAlert frequency
|
(Required) Enumeration: The time period between attempts by Tableau to assess whether the alert threshold has been crossed. The value can be one of:
|
dataAlertCreateAlert visibility
|
(Required) Enumeration: Determines whether the alert can be seen by only its creator (private), or by any user with permissions to the worksheet where the alert resides (public) . The value can be one of:
|
dataAlertCreateAlert device
|
(Optional) Enumeration: The type of device the alert is formatted for.
If no
|
dataAlertCreateAlert worksheetName
|
(Required) String: The name of the worksheet that the DDA will be created on. For dashboards, this is the name of the underlying sheet that contains the data whose value can trigger the alert, not the name of the dashboard that presents that sheet. For custom views, the name of the original view that was used to form the custom view. |
dataAlertCreateAlert viewId
OR
|
(Required) LUID: The LUID of either the viewId or customViewId that contains the data that can trigger an alert. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 403165 | DDA creation failed | A data driven alert could not be created because there is a missing value in the request body. |
| 401 | 401002 | Unauthorized Access | The user does not have permissions to create a data driven alert. Causes may include: authentication token provided in the request header was invalid or has expired; the user does not have administrator, creator, or explorer permissions; the user does not have permissions to view the sheet. |
| 403 | 403164 | DDA not enabled | Data driven alerts are not enabled for the site, or the user visibility site setting is configured as limited. |
| 404 | 404011 | View not found | The view specified in the request could not be found. |
| 404 | 409004 | Request is malformed | A data driven alert could not be created because there is an unexpected value in the request body. |
| site-id | The ID of the site in which you want to create the webhook. |
| webhook-name | This is required. A name for the webhook. |
| api-event-name | webhook-source-api-event-name |
You must specify one of these attribute values. The name of the Tableau event that triggers your webhook. The event name must be one of the supported events listed in the Trigger Events table. The event and webhook-source use different name values for the same event. Recommended: Use the event attribute of the webhook to specify the triggering API event for the webhook. The webhook-source element serves the same purpose but is being deprecated in future versions of Tableau webhooks. If both events and webhook-source are specified, their events specified must match. If either are specified, with the other being NULL, then the specified event becomes the webhook trigger, whether the element containing the event name is event or webhook-source. |
| url | Required. The destination URL for the webhook. The webhook destination URL must be https and have a valid certificate. |
| webhook-enabled-flag | (Optional) Boolean. If true (default), the newly created webhook is enabled. If false then the webhook will be disabled. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Delete forbidden | A user called this method who does not have the required permissions |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| user-id | The ID (not name) of the user to remove from the data-driven alert. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Delete forbidden | A user called this method who does not have the required permissions. |
| 403 | 409029 | Deleting recipient from data-driven alert forbidden | The user is not authorized to remove the recipient from the data-driven alert. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| site-id | The ID of the site that contains the workbook to be deleted. |
| webhook-id | The ID of the webhook. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the users. |
| filter-expression |
(Optional) An expression that lets you specify a subset of notification preferences to return. You can filter on the following fields and corresponding options:
You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409109 | Invalid request | Invalid notification type. |
| 400 | 409100 | Invalid request | Invalid channel. |
| 403 | 403004 | Invalid permissions | Invalid permission to update site user notification settings. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type was not GET. |
| site-id | The ID of the site that contains the webhook. |
| webhook-id | The ID of the webhook. |
| site-id | The ID of the site that contains the webhooks. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains data-driven alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403004 | Read forbidden | A user queried this method who does not have the required permissions |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A user queried this method who does not have the required permissions |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| site-id | The ID of the site that contains the webhook. |
| webhook-id | The ID of the webhook. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| data-alert-subject | (Optional) The string to set as the new subject of the alert. |
| data-alert-frequency | (Optional) The frequency of the data-driven alert: once, frequently, hourly, daily, or weekly. |
| data-alert-owner-id | (Optional) The ID of the user to assign as owner of the data-driven alert. |
| is-public-flag | (Optional) Determines the visibility of the data-driven alert. If the flag is true, users with access to the view containing the alert can see the alert and add themselves as recipients. If the flag is false, then the alert is only visible to the owner, site or server administrators, and specific users they add as recipients. (Optional) Determines the visibility of the data-driven alert. If the flag is true, users with access to the view containing the alert can see the alert and add themselves as recipients. If the flag is false, then the alert is only visible to the owner, site or server administrators, and specific users they add as recipients. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Write forbidden | A user called this method who does not have the required permissions. |
| 403 | 409030 | Updating data-driven alert forbidden | The user is not authorized to update the data-driven alert. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| enabled-flag | (Required, boolean) If true, the specified site notifications will be on. If false, the specified site notifications will be off.
|
| channel | (Required, string) Specifies the channel that the notification preferences are to be updated (turned on or off). Valid channels are: email, in_app, and slack. |
| notification-type |
Specifies the notification type for which the notification preferences are to be updated (turned on or off). Valid notification types are: comments, webhooks, prepflow, share, dataalerts,and extractrefresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Invalid Permissions | Invalid permission to update site user notification settings. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type was not PATCH. |
| site-id | The ID of the site that contains the webhook to be updated. |
| webhook-id | The ID of the webhook. |
| webhook-name | This is required. A name for the webhook. |
| api-event-name | webhook-source-api-event-name |
You must specify one of these attribute values. The name of the Tableau event that triggers your webhook. The event name must be one of the supported events listed in the Trigger Events table. The event and webhook-source use different name values for the same event. Recommended: Use the event attribute of the webhook to specify the triggering API event for the webhook. The webhook-source element serves the same purpose but is being deprecated in future versions of Tableau webhooks. If both events and webhook-source are specified, their events specified must match. If either are specified, with the other being NULL, then the specified event becomes the webhook trigger, whether the element containing the event name is event or webhook-source. |
| url | (Optional) The destination URL for the webhook. The webhook destination URL must be https and have a valid certificate. |
| webhook-enabled-flag | (Optional) Boolean. If true (default), the newly created webhook is enabled. If false then the webhook will be disabled. |
| reason-for-disablement |
The reason a webhook is disabled.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400127 | Bad request | statusChangeReason was provided with isEnabled = true |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
idpConfigurationName
|
(Required) The name of the configuration. Starting in API 3.24, you can create and enable multiple authentication configurations. For more information, see Authentication in the Tableau Cloud Help. |
enabled
|
(Required) Controls whether the configuration is enabled or not. Value can be "true" or "false". For example "true". |
clientId
|
(Required) The client ID from your IdP. For example, "0oa111usf1gpUkVUt0h1". |
clientSecret
|
(Required) The client secret from your IdP. |
authorizationEndpoint
|
(Required) Use the authorization endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (authorization_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/authorize". |
tokenEndpoint
|
(Required) Use the token endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the token endpoint (token_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/token". |
userinfoEndpoint
|
(Required) Use the user information endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (userinfo_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/userinfo". |
jwksUri
|
(Required) Use the JWK set URI from your IdP. To find the value, enter the configuration URL in a browser and obtain the JWK set URI endpoint (jwks_uri) from the details that are returned. For example, "https://myidp.com/oauth2/v1/keys". |
endSessionEndpoint
|
(Optional) If single logout (SLO) is enabled for the site, which is done through Tableau Cloud site UI, you can specify the configuration URL or the end session endpoint from your IdP. For example, "https://myidp.com/oauth2/v1/logout". |
allowEmbeddedAuthentication
|
(Optional) Controls how users authenticate when accessing embedded views. Value can be "true" or "false". Default value is "false", which authenticates users in a separate pop-up window. When set to "true", users authenticate using an inline frame (IFrame), which is less secure. |
customScope
|
(Optional) Specifies a custom scope user-related value that you can use to query the IdP. For example, "openid, email, profile". |
prompt
|
(Optional) Specifies whether the user is prompted for re-authentication and consent. For example, "login, consent". |
clientAuthentication
|
(Optional) Token endpoint authentication method. Value can be "client_secret_basic" or "client_secret_post". Default value is "client_secret_basic". |
essentialAcrValues
|
(Optional) List of essential Authentication Context Reference Class values used for authentication. For example, "phr". |
voluntaryAcrValues
|
(Optional) List of voluntary Authentication Context Reference Class values used for authentication. |
emailMapping
|
(Optional) Claim for retrieving email from the OIDC token. Default value is "email". |
firstNameMapping
|
(Optional) Claim for retrieving first name from the OIDC token. Default value is "given_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
lastNameMapping
|
(Optional) Claim for retrieving last name from the OIDC token. Default value is "family_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
fullNameMapping
|
(Optional) Claim for retrieving name from the OIDC token. Default value is "name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "true". |
useFullName
|
(Optional) Controls what is used as the display name. Value can be "true" or "false". Default value is "false", which uses first name (firstNameMapping attribute) and last name (lastNameMapping attribute) as the user display name. When set to "true", full name (fullNameMapping attribute) is used as the user display name. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| idp-configuration-id | The ID of the configuration. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| idp-configuration-id | The ID of the configuration. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
idpConfigurationId
|
(Required)
Starting in API 3.24, multiple authentication configurations can be created and enabled at the same time. Include the idpConfigurationId to identify which configuration to update. If no IdPConfigurationId is specified, the initial (default) OIDC configuration is updated if it exists. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. For more information, see Authentication in the Tableau Cloud Help. |
enabled
|
(Required) Controls whether the configuration is enabled or not. Value can be "true" or "false". For example "true". |
clientId
|
(Required) The client ID from your IdP. For example, "0oa111usf1gpUkVUt0h1". |
clientSecret
|
(Required) The client secret from your IdP. |
authorizationEndpoint
|
(Required) Use the authorization endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (authorization_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/authorize". |
tokenEndpoint
|
(Required) Use the token endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the token endpoint (token_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/token". |
userinfoEndpoint
|
(Required) Use the user information endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (userinfo_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/userinfo". |
jwksUri
|
(Required) Use the JWK set URI from your IdP. To find the value, enter the configuration URL in a browser and obtain the JWK set URI endpoint (jwks_uri) from the details that are returned. For example, "https://myidp.com/oauth2/v1/keys". |
idpConfigurationName
|
(Optional) The name of the configuration. Starting in API 3.24, you can create and enable multiple authentication configurations. Authentication configurations that were enabled before API 3.24 are given a name and its name can't be updated. For example, "Initial OIDC". If this configuration was created after API 3.23 and no name is provided for the update, the name will stay the same. For more information, see Authentication in the Tableau Cloud Help. |
endSessionEndpoint
|
(Optional) If single logout (SLO) is enabled for the site, which is done through Tableau Cloud site UI, you can specify the configuration URL or the end session endpoint from your IdP. For example, "https://myidp.com/oauth2/v1/logout". |
allowEmbeddedAuthentication
|
(Optional) Controls how users authenticate when accessing embedded views. Value can be "true" or "false". Default value is "false", which authenticates users in a separate pop-up window. When set to "true", users authenticate using an inline frame (IFrame), which is less secure. |
customScope
|
(Optional) Specifies a custom scope user-related value that you can use to query the IdP. For example, "openid, email, profile". |
prompt
|
(Optional) Specifies whether the user is prompted for re-authentication and consent. For example, "login, consent". |
clientAuthentication
|
(Optional) Token endpoint authentication method. Value can be "client_secret_basic" or "client_secret_post". Default value is "client_secret_basic". |
essentialAcrValues
|
(Optional) List of essential Authentication Context Reference Class values used for authentication. For example, "phr". |
voluntaryAcrValues
|
(Optional) List of voluntary Authentication Context Reference Class values used for authentication. |
emailMapping
|
(Optional) Claim for retrieving email from the OIDC token. Default value is "email". |
firstNameMapping
|
(Optional) Claim for retrieving first name from the OIDC token. Default value is "given_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
lastNameMapping
|
(Optional) Claim for retrieving last name from the OIDC token. Default value is "family_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
fullNameMapping
|
(Optional) Claim for retrieving name from the OIDC token. Default value is "name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "true". |
useFullName
|
(Optional) Controls what is used as the display name. Value can be "true" or "false". Default value is "false", which uses first name (firstNameMapping attribute) and last name (lastNameMapping attribute) as the user display name. When set to "true", full name (fullNameMapping attribute) is used as the user display name. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| lens-luid | The LUID of the data source to set permissions for. |
| lens-luid | Required. The LUID of the ask data lens permissions are being configured for. |
| user-luid | Optional (at least one user or group must be specified). The LUID of the user to add permissions for. |
| group-luid | Optional. The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. For valid capabilities for a data source project are
ChangePermissions,
Delete,
Move,
Read,
Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Delete, Move, Read, and Write. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a data source, but the caller doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404006 | Lens not found | The specified lens doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to set permissions for. |
| user-id | The ID of the user to add permissions for. |
| group-id | The ID of the group to add permissions for. |
| capability-name |
The capability to assign. The only valid capability for a collection is Read. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a collection, but the caller doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | User not found | The user in the request body wasn't found. |
| 404 | 404012 | Group not found | The group in the request body wasn't found. |
| 404 | 404013 | Resource not found |
The capability to remove the permission for. The only valid capability name for a collection is Read. The only valid capability mode is Allow or Deny. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to set permissions for. |
| datasource-id | The <datasource> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <datasource> element is included, the datasource-id value must match the data source ID in the URI. Any other attributes in the <datasource> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. For valid capabilities for a data source project are
PulseMetricDefine,
ChangePermissions,
Connect,
Delete,
ExportXml, ExtractRefresh,Read (view),
Write, and
SaveAs.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read, and Write. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a data source, but the caller doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The specified data source doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to set default permissions for. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. Valid capabilities for a workbook are
Valid capabilities for a data source are
Valid capabilities for a flow are
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read (view), and Write. |
| 400 | 400042 | Malformed permissions qualifier | The request body includes a <workbook> or <datasource> element. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project LUID specified in the URI does not match the project ID specified in the request body. (You do not have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to set permissions for. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign permissions to. In Tableau Server 10.0, the valid
capabilities for a project are
ProjectLeader,
Read (view), and
Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability |
The capability specified in the request is not in the list of valid capability names for this method. The mode of the capability for ProjectLeader cannot be set to Deny. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project ID specified in the URI does not match the project ID specified in the request body. (You do not have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook view. |
| view-id | The ID of the view to set permissions for. You can obtain this ID by calling Query Views for Site. |
| view-id | The view-id value must match the view ID in the URI. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name | The capability to assign. If any capability has already been
granted or denied for a specified user or group, that capability is ignored. For valid capabilities for a view are
AddComment, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a view. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the view. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to set permissions for. |
| user-id | The LUID of the user to add permissions for. A request does not need to include both a user and a group grantee. |
| group-id | The LUID of the group to add permissions for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to assign. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to set permissions for. |
| workbook-id | The <workbook> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <workbook> element is included, the workbook-id value must match the workbook ID in the URI. Any other attributes in the <workbook> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has already been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, ExtractRefresh, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| schedule-id | The ID of the schedule that you are associating with the workbook. |
| workbook-id | The ID of the workbook to add to the schedule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404006 | Resource not found | The workbook ID in the request body is unknown. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 500 | 500000 | Internal Server Error | The schedule ID in the URI is unknown. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | Required. The LUID of the site that contains the view. |
| lens-luid | Required. The LUID of the lens to delete permissions for. |
| group-luid | Optional (one user or group must be specified). The LUID of the group to remove the permission for. |
| user-luid | Optional. The LUID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The valid capabilities for a view are ChangePermissions, Delete, Move, Read, Write. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for an ask data lense. Valid capabilities for a lens are ChangePermissions, Delete, Move, Read, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions on the view. |
| 403 | 403039 | Project permissions locked | The parent project that contains the specified ask data lens has its permissions locked. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn’t correspond to an existing user. |
| 404 | 404046 | Lens not found | The ask data lens LUID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| 404 | 404014 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The only valid capability for a collection is Read. The only valid capability mode is Allow or Deny. For more information, see Permissions. |
| capability-mode | Allow to delete an allow permission, or Deny to delete a deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a collection. The only valid capability for a collection is Read. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | Resource not found | The user ID in the URI wasn't found. |
| 404 | 404012 | Resource not found | The group ID in the URI wasn't found. |
| 404 | 404013 | Resource not found | The capability in the URI isn't recognized. |
| 404 | 404014 | Resource not found | The user or group permission wasn't found on the collection. Check the permissions on the collection that you're trying to remove and try again. |
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, ExtractRefresh, Read (view), Write, and SaveAs. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the project. |
| project-id | The LUID of the project to remove the default permission for. |
| group-id | The LUID of the group to remove the default permission for. |
| user-id | The LUID of the user to remove default permission for. |
| capability-name |
The capability to remove the permissions for. Valid capabilities for a workbook are
Valid capabilities for a data source are
Valid capabilities for a flow are
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permissions to remove permissions for the project. |
| 403 | 403095 | Delete permissions for flows forbidden | A non-administrator user called this method but doesn't have permissions to remove permissions for the project where the flow is located. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404012 | Group not found | A group LUID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI isn't assigned to the specified user or group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 404 | 404027 | Flow not found | The flow LUID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove project the permission for. |
| capability-name |
The capability to remove the permission for. In Tableau Server 10.0, valid capabilities for a project are
ProjectLeader,
Read (view), and
Write.
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a project. For a list of valid capabilities, see the capability-name attribute earlier. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permissions to remove default permissions for the project. |
| 403 | 403004 | Delete forbidden | A non-administrative user tried to update the project, but does not have permissions to the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404012 | Group not found | A group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI isn't assigned to the specified user or group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to delete permissions for. You can obtain this ID by calling Query Views for Site. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The valid capabilities for a view are AddComment, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a view. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions on the view. |
| 403 | 403039 | Project permissions locked | The parent project that contains the specified view has its permissions locked. |
| 403 | 403096 | Parent workbook tabs enabled | The specified view currently has permissions inherited from its parent workbook. View permission can be deleted if the parent workbook has its tabs disabled. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn’t correspond to an existing user. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| 404 | 404014 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to remove the permission for. |
| group-id | The LUID of the group to remove the permission for. A request does not need to include both a user and a group grantee. |
| user-id | The LUID of the user to remove the permission for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, ExtractRefresh, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, Write, RunExplainData, and CreateRefreshMetrics. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read, Share_view, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions from the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny at the end of the URI. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the metrics. |
| lens-luid | The LUID of the ask data lens whose permissions are being listed. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query metrics for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404046 | Lens not found | A lens with the requested LUID could be found. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to get default permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403035 | Querying data source permissions forbidden | The caller doesn't have permissions to query the project's default permissions for data sources. |
| 403 | 403036 | Querying workbook permissions forbidden | The caller doesn't have permissions to query the project's default permissions for workbooks. |
| 403 | 403035 | Querying flow permissions forbidden | The caller doesn't have permissions to query the project's default permissions for flows. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The project to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the view. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual Connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| site-luid |
The LUID for the site. |
| project-luid |
The LUID for the project. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, SaveAs, Read (view), and Write. For more information, see Permissions. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read (view), and Write. For detailed information about capabilities for each content type, see Capabilities. |
| 400 | 400042 | Malformed permissions qualifier | The request body includes a <workbook> or <datasource> element. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project LUID specified in the URI doesn’t match the project ID specified in the request body. (You don’t have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | The request type wasn’t POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasourc-luid | The LUID for the data source. |
| flow-luid | The LUID for the flow. |
| project-luid | The LUID for the project. |
| view-luid | The LUID for the view. |
| workbook-luid | The LUID for the workbook. (Optional, but can be included for compatibility with older versions.) |
| workbook-id | The <workbook> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <workbook> element is included, the workbook-id value must match the workbook ID in the URI. Any other attributes in the <workbook> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the ID doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | The request type was not POST. |
| REST API permission name | Server environment permission name |
|---|---|
| AddComment | Add Comment |
| ChangeHierarchy | Move |
| ChangePermissions | Set Permissions |
| Connect | Connect |
| Delete | Delete |
| Execute | Run Flow |
| ExportData | View Summary Data |
| ExportImage | Export Image |
| ExportXml | Download |
| ExtractRefresh | Refresh Extracts |
| Filter | Filter |
| InheritedProjectLeader | Project Leader |
| ProjectLeader | Project Leader |
| Read | View |
| ShareView | Share Customized |
| ViewComments | View Comments |
| ViewUnderlyingData | View Underlying Data |
| VizqlDataApiAccess | API Access |
| WebAuthoring | Web Edit |
| Write | Save |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the project in. |
| publish-value | (Optional) A Boolean value that specifies whether to publish the sample workbooks provided by Tableau to the project. When the publish-value is not specified in the request, or the publishSamples parameter is missing, no samples will be published. To publish the sample workbooks, set publishSamples parameter to true. This option is equivalent to the tabcmd command-line utility option, publishsamples. For more information, see tabcmd. |
project name
|
(Required) The new name for the project. |
project description
|
(Optional) The new description for the project. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To create a project as a stand alone or at the top of a project hierarchy, omit the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
project contentPermissions
|
(Optional) This value controls user permissions in a project, however, if the project is nested within a project with more restrictive policies, it will inherit those permissions and these settings will have no effect. The functional permissions of a project, including those it inherits, are available in value of contentPermission in the response body from a request to create, update, or query a project.
The default is ManagedByOwner. For more information, see Lock Content Permissions. |
owner id
|
The LUID of the user that owns the project. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Bad request | The request cannot set content permissions to LockedToProjectWithoutNested for a REST API version lower than 3.8. |
| 403 | 403008 | Insufficient storage on site | The samples could not be published because there is not enough storage space remaining on the server to accommodate the samples. |
| 404 | 404000 | Site not found |
The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409006 | Project name conflict | The project name in the request already belongs to the specified site. For the purpose of uniqueness checks, project names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403003 | Deletion forbidden | You attempted to delete a default project that cannot be deleted. |
| 404 | 404000 | Site not found | The site LUID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project or the project is not found on this site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the projects. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of data sources to return. You can filter on predefined fields such as name, ownerName, and parentProjectId. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to update. |
| publish-value | (Optional) A Boolean value that specifies whether to publish the sample workbooks provided by Tableau to the project when you update the project. When the publish-value is not specified in the request, or the publishSamples parameter is missing, no samples will be published. To publish the sample workbooks, set publishSamples parameter to true. This option is equivalent to the tabcmd command-line utility option, publishsamples. For more information, see tabcmd. |
project id
|
(Required) The LUID of the project being updated. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults Windows | Linux. |
project name
|
(Optional) The new name for the project. |
project description
|
(Optional) The new description for the project. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To update a project without changing its placement in the project hierarchy, omit the parentProjectId attribute. To move a project to the top of the project hierarchy, provide an empty string ("") for the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
project contentPermissions
|
(Optional) This value controls user permissions in a project, however, if the project is nested within a project with more restrictive policies, it will inherit those permissions and these settings will have no effect. The functional permissions of a project, including those it inherits, are available in value of contentPermission in the response body from a request to create, update, or query a project.
The default is ManagedByOwner. For more information, see Lock Content Permissions. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To update a project without changing its placement in the project hierarchy, omit the parentProjectId attribute. To move a project to the top of the project hierarchy, provide an empty string ("") for the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
owner id
|
The LUID of the user that owns the project. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Bad request | The request cannot set content permissions to LockedToProjectWithoutNested for a REST API version lower than 3.8. |
| 403 | 403005 | Update forbidden | Attempt to rename the default project, which cannot be renamed. |
| 403 | 403008 | Insufficient storage on site | The samples could not be published because there is not enough storage space remaining on the server to accommodate the samples. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the project, but does not have permissions to update the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404009 | Project ID mismatch | The request body contains a project ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409006 | Project name conflict | The project name in the request already belongs to the specified site. For the purpose of uniqueness checks, project names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to upload the file to. |
| upload-session-id | The ID of the upload session. You get this value when you start an upload session using Initiate File Upload. |
|
sequence-id |
(Optional) A long integer that you choose, indicative of the block's order in the complete sequence. After you append all the blocks and call the Publish Data Source, Publish Flow, or Publish Workbook method, the sequenceID is used to order the blocks, low sequenceID to high sequenceID, and the combined blocks are written as the file. Therefore, the sequenceID should be incremented for each block (though it doesn't have to incremented by 1). If you don't include sequenceID in the URI querystring, the uploaded blocks are processed in the order they arrive. Network conditions can cause blocks to arrive out of order, which could result in a corrupted file if sequenceID isn't used. Note: The sequenceID parameter is available starting in API version 3.27 (Tableau Cloud December 2025 / Server 2025.3). If you're using API version 3.26 (Tableau Cloud June 2025 / Server 2025.1) or earlier, the file is assembled using each block's arrival time. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400016 | File size too large | The attached file exceeds the configured maximum attachment size for a single append call. The maximum allowable size will be reported in the error response. |
| 400 | 400019 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400020 | Missing file data | There is no attachment in the request with the file data to be appended to the upload. |
| 403 | 403007 | Not a publisher | A non-administrator user attempted to initiate a file upload, but the caller doesn't have publishing rights on the site. |
| 403 | 403016 | Upload failure | The file could not be uploaded for some other reason than those specified earlier. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404015 | File upload not found | The file upload ID in the URI doesn't correspond to an existing file upload. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to upload the file to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403015 | Access to Favorites forbidden | A non-administrator user attempted to initiate a file upload, but the caller doesn't have publishing rights on the site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site to publish to. |
| overwrite-flag | true to overwrite a data source that has the same name, or false
to fail if the specified data source already exists. The default is false. If overwrite-flag
is set to true but the data source doesn't already exist, the operation succeeds.
You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| replace-flag | (New in 2025.1) A boolean value (true or false). Set to true to replace the data in an existing data source. The default is false. |
| asJob-value | A Boolean value that is used to publish data sources asynchronously. If you set this value to false (the default), the publishing process runs as a synchronous process. If a data source is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. |
| append-flag | true to append the data being published to an existing data source that has the same name. The default
is false. If append-flag
is set to true but the data source doesn't already exist, the operation fails.
In order to append data to a published data source on Tableau Server, both the source file and the published file must be
an extract with the file extension If an extract was stored using the multiple tables option, you can't append data to it. You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| upload-session-luid | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session LUID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| datasource-file-type | hyper, tds, tdsx, or tde the kind of file that you are uploading. This value is required if you are calling Publish Data Source in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| datasource-name | (Required) The name to assign to the data source when it is saved on the server. |
| remote-query-agent-flag | (Optional) When true, this flag will allow your Tableau Cloud site to use Tableau Bridge clients. Bridge allows you to maintain data sources with live connections to supported on-premises data sources.
|
| datasource-description | (Optional) A description of the data source. |
| connection-username | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag | (Optional) If the data source connection is configured to use OAuth, set this to true to specify
that the value of the name attribute in the
connectionCredentials element is an OAuth username. In that case, no password is
required and the value of the embed attribute specifies whether to embed the OAuth
credential with the data source.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The LUID of the project to assign the data source to. If the project is not specified, the data source will be published to the default project. |
| datasource-file-name | The file name (including extension) of the data source file to upload. This attribute is used in the request body only if the request also includes the content of the data source file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-datasource-file | The content of the data source file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| askDataEnablement | This attribute is not available in API 3.12 and later (Tableau Cloud September 2021 / Server 2021.3). |
| parentDataSourceUrls | The name (URL) of the immediately referenced published data source that the data source being published depends on. For a composed data source, you must include one entry for each top-level parent data source in the data model. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400000 | Missing data source | There is no attachment in the request for the data source. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be set to true or false. |
| 400 | 400008 | Invalid append value | The append parameter must be set to true or false. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400010 | Invalid data source filename | The name of the data source file did not end with the suffix .hyper, .tds, .tdsx, or .tde. |
| 400 | 400010 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than hyper, tds, tdsx, or tde. |
| 400 | 400010 | Unexpected attachments | The message had both a uploadSessionId parameter and an attachment, or the message contained more than one attachment. |
| 400 | 400011 | Publishing error | The data source could not be published for some other reason than those specified earlier. |
| 400 | 400011 | Bad Request | The request is invalid. This can occur if more than one of the conflict resolution parameters (overwrite, append, or replace) is set to true. Only one of these parameters can be true in a single request. |
| 400 | 400019 | Malformed request body | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400055 | Incompatible overwrite and append values | The overwrite and append parameter cannot both be set to true. |
| 400 | 400129 | Invalid Ask Data enablement | The enablement setting in the request body is not valid for the current server configuration. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a data source, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user who is unlicensed attempted to publish a data source. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A data source with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The data source could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The append parameter is true but the data source name specified in the request body does not correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the request body doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a flow that has the same name, or false to fail if the specified flow already exists. The default is false. If overwrite-flag is set to true but the flow doesn't already exist, the operation succeeds. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| flow-file-type | tfl or tflx to indicate whether you have uploaded a flow file (tfl) or a packaged flow file (tflx). This value is only necessary and required if you upload a file in multiple parts. In the Publish Flow call after completing file upload, specify the file type. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| name | The name to assign to the flow when it is saved on the server. |
| description | The description of the flow. |
| server-address | Specify the server address for an input connections. |
| port-number | Specify the port number for input connections. |
| connection-username | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the flow input connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag |
(Optional) If the flow input connection is configured to use OAuth, set this to If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The ID of the project to assign the flow to. |
| content-of-flow-file | The file itself if you are including it in the request body. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400089 | Missing flow name | Flow name is required and was not specified. |
| 403 | 403007 | Invalid permissions | The caller does not have the necessary permissions to publish the flow. |
| 400 | 400090 | Missing flow payload | The flow information (the structure containing the flow description, flow project) was not included in the request body. |
| 400 | 400086 | Invalid flow attachment | The name of the flow doesn't end in .tfl or .tflx. |
| 400 | 400087 | Generic flow publishing error | The flow could not be published for some other reason than those specified earlier. |
| 409 | 409041 | Flow already found in destination | The flow name should be unique, or the overwrite flag parameter should be set to true. |
| 403 | 403008 | Insufficient storage quota | The flow could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site to publish to. |
| publish-as-draft-flag | (Optional) true to publish the virtual connection as a draft, or false to publish it as an active virtual connection. The default is true. This parameter applies only when you publish a JSON representation. The parameter is case sensitive.
If the virtual connection contains an extract, the publishAsDraft parameter value is ignored and the virtual connection is published as a draft. Note: If you are using the REST API to publish a virtual connection as a draft, note the virtual connection's LUID ( |
| overwrite-flag | true to overwrite a virtual connection that has the same name in the target project, or false to fail if the specified virtual connection already exists. The default is false. If overwrite-flag is set to true but the virtual connection doesn't already exist, the operation succeeds. |
| upload-session-id | (Optional, .tvcx files only) If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to
Initiate File Upload. If this value is not included, the server assumes
that the body of the request contains the file to be published.
|
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| virtualconnection-name | (Required) The name to assign to the virtual connection when it is saved on the server. This is typically derived from the file name. |
| project-id | (Optional) The LUID of the project to publish to. If you omit it, the virtual connection is published to the default project. |
| owner-id | (Optional) The LUID of the owner of the virtual connection. If you omit it, the authenticated user becomes the owner. |
tableau_virtual_connection file part
|
The .tvcx file. Include it when you publish in a single request. Omit it when you commit a file that was uploaded in parts. If you include both a file part and the uploadSessionId parameter, or if you include neither, the request fails. |
| virtualconnection-name | The name of the virtual connection you are publishing. If publishing an existing virtual connection as a revision, the virtual connection name is ignored. |
| project-id | The LUID of the project you are publishing to. |
| owner-id | This attribute is required, but is ignored. |
| virtualconnection-as-json |
The virtual connection schema rendered as JSON, as obtained using the Download Virtual Connection as JSON or Download Virtual Connection Revision as JSON method. The schema appears in the content element (for XML output) or content property (for JSON output). Note: Changing the downloaded schema and then using it with this method isn't supported. When using the Publish Virtual Connection method, we recommend using the virtual connection schema format that matches the format you used for downloading it. This is important because the virtual connection schema returned by the download methods has escape characters in it if the output was JSON. If you download and publish using different formats, you will have to make changes to the JSON representation of the virtual connection. In other words:
For more information on the difference between using XML and using JSON with the REST API, see Fundamentals of the Tableau Server REST API. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request |
When you publish a .tvcx file, the request is not valid for one of these reasons:
|
| 400 | 400201 | Publish virtual connection error | The virtual connection could not be published. This includes content that is not valid virtual connection JSON, or a .tvcx file or its contents that could not be read. |
| 403 | 403008 | Insufficient site storage | The content would exceed the site's storage quota. Applies when publishing a .tvcx file. |
| 403 | 403175 | Publish virtual connection forbidden | The user does not have permission to publish the virtual connection. |
| 404 | 404015 | File upload not found | The uploadSessionId does not match an upload owned by the user. Applies when publishing a .tvcx file. |
| 404 | 404049 | Virtual connection not found | The virtual connection could not be found while publishing it with the extract in the .tvcx file. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409123 | Virtual connection exists | A virtual connection with the same name already exists in the project and overwrite is false. Applies when publishing a .tvcx file. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a workbook that has the same name, or false to fail if the specified workbook already exists. The default is false. If overwrite-flag is set to true but the workbook doesn't already exist, the operation succeeds. |
| asJob-value | (Optional, boolean) If false, the workbook publishing process runs as a synchronous process. If a workbook is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. Default value is false. |
| skip-connection-check-flag | (Optional, boolean) If true, then the Tableau server will not check if a non-published connection of a workbook is reachable. Publishing will succeed but unchecked connection issues may result in a non-functioning workbook. If you encounter this issue, follow Keep Data Fresh guidelines. Default value is false. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| workbook-file-type | twb or twbx to indicate whether you have uploaded a workbook file (twb) or a packaged workbook file (twbx). This value is required if you are calling Publish Workbook in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| workbook-name | The name to assign to the workbook when it is saved on the server. |
| workbook-description | (Optional) Starting in API 3.20, the description for the workbook. |
| show-tabs-flag | (Optional) Specify true to have the published workbook show views in tabs; otherwise, false. The default is false. |
| user-luid | (Optional) The LUID of the user to generate thumbnails as. You can get the user LUID by calling Get Users on Site. |
| server-address | (Optional) Specify the server address for a data source connection if that data source does not use OAuth. |
| port-number | (Optional) Specify the port number for a data source connection if that data source does not use OAuth. |
| connection-username | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection username. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| connection-password | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection password. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| embed-flag | (Optional) If the workbook's data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials for when the data source is used. |
| oauth-flag | (Optional) If the workbook's data source connection is configured to use OAuth, set this to true to specify that the value of the name attribute
in the <connectionCredentials> element is an
OAuth username. In that case, no password is required and the value of the embed attribute specifies
whether to embed the OAuth credential with the workbook, and the server address and port number are not required.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| hide-view-flag | Setting this flag to true will cause the named view to be hidden in the published workbook. The default value is false.
You can specify any number of views to hide. If all views in a workbook are hidden the server will not perform a publish. |
| project-id | The ID of the project to assign the workbook to. If the project is not specified, the workbook will be published to the default project. |
| workbook-file-name | The file name (including extension) of the workbook file to upload. This attribute is used in the request body only if the request also includes the content of the workbook file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-workbook-file | The content of the workbook file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| encryptExtracts | (Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400000 | Missing workbook | There is no attachment in the request and no uploadSessionID parameter. |
| 400 | 400000 | Unexpected attachments | The message had both an uploadSessionId parameter and an attachment, or the request body contained more than one attachment. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be true or false. |
| 400 | 400011 | Publishing error | The workbook could not be published for some other reason than those specified earlier. |
| 400 | 400020 | Invalid workbook file name | The name of the workbook doesn't end in .twb or .twbx. |
| 400 | 400035 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than .twb or .twbx. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a workbook, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user attempted to publish a workbook. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A workbook with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source used by the workbook. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The workbook could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 403 | 403130 | Publishing overwrite | A workbook with the same name already exists. |
| 403 | 403131 | Concurrent update | The workbook is already being published in another process. |
| 403 | 403132 | Failed connection check | One or more data sources used by the workbook could not be reached. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404006 | Workbook not found | The user specified overwrite as true but no workbook with the specified name exists on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the uploadSessionId parameter doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| as-job-value | (Optional) If true, runs as an asynchronous job. Returns job information instead of executing synchronously. Default is false. Check the status of the job by calling Query Job. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Unauthorized | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| content-id | The LUID of the Recycle Bin content item to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Unknown resource | Requested content item not found. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| content-id | The LUID of the recycle bin content item. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Unknown resource | Requested content item not found. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| filter-expression | (Optional) An expression that lets you specify a subset of recycle bin content to return. You can filter on predefined fields such as name, ownerId, deleterId, createdAt, updatedAt, and path. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which recycle bin content information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| content-id | The LUID of the recycle bin content item to restore. |
| project-id | The LUID of the project to restore the content to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403008 | Insufficient site storage remaining | Restore would exceed site storage quota. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Unknown resource | Requested content item not found. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| Add analytics extension connection to site | Adds a new analytics extension connection for an external service to a site. |
| Delete analytics extension connection from site | Deletes a specific analytics extension connection for an external service from a site. |
| Enable or disable analytics extensions on server - Not available for Tableau Cloud | Enables or disables analytics extensions on a server. |
| Get analytics extension details | Get the details of a specified analytics extension connection to an external service. |
| Get current analytics extension for workbook | Gets basic details, including connection type and name, of the analytics extension connection to an external service that the specified workbook is currently using. |
| Get enabled state of analytics extensions on server - Not available for Tableau Cloud | Gets the enabled/disabled state of analytics extensions on a server. |
| Get enabled state of analytics extensions on site | Gets the enabled/disabled state of analytics extensions on a site. |
| List analytics extension connections of workbook | Lists basic details of each analytics extension connection available for a specified workbook, including connection type and name. |
| List analytics extension connections on site | Lists a site's analytics extension connections for external services. |
| Remove current analytics extension connection for workbook | Remove the currently used analytics extension connection to an external service from the specified workbook. The connection remains configured, and is available for further usage by the workbook. |
| Update analytics extension connection of site | Updates the details of specified analytics extension connection for an external service to a site. |
| Update analytics extension for workbook | Updates the analytics extension connection to external service currently used by a workbook. |
| Update enabled state of analytics extensions on site | Enables or disables analytics extensions on a site. |
| Create ask data lens - Retired in API 3.22 | Create an ask data lens. |
| Delete ask data lens - Retired in API 3.22 | Delete an ask data lens. |
| Get ask data lens - Retired in API 3.22 | Get the details of the specified ask data lens. |
| Import ask data lens - Retired in API 3.22 | Import an existing ask data lens on a server to a site, and optionally transform the metadata of the lens in the process. |
| List ask data lenses in site - Retired in API 3.22 | Returns a list of ask data lenses in a site. |
| List Personal Access Tokens - Not available for Tableau Server. | List all personal access tokens (PATs). If you're a site admin, list PATs of a user when you are the site admin on all sites that the PAT owner is a member of. |
| Revoke Administrator Personal Access Tokens - Not available for Tableau Cloud. | Revokes all personal access tokens (PATs) created by server administrators. This method is not available for Tableau Cloud. |
| Revoke Personal Access Token - Not available for Tableau Server. | Revoke a personal access token (PAT). If you're a site admin, you can revoke a users PAT owhen you are the site admin on all sites that the PAT owner is a member of. |
| Sign In | Signs you in as a user on the specified site on Tableau Server or Tableau Cloud. |
| Sign Out | Signs you out of the current session. This call invalidates the authentication token that is created by a call to Sign In. |
| Switch Site - Not available for Tableau Cloud. | Switches you onto another site without having to provide a user name and password again. |
| Add Domain to Pool - Not available for Tableau Server. | Associates a domain with a specific Bridge pool, allowing Bridge clients from that domain to use the pool. |
| Add Projects to Routing Rule - Not available for Tableau Server. | Adds one or more project filtering conditions to an existing allow rule, narrowing the rule so it applies only to the listed projects. |
| Block Domain - Not available for Tableau Server. | Blocks a domain from being used with any Bridge pool, preventing Bridge clients from that domain from connecting. |
| Create Bridge Pool - Not available for Tableau Server. | Creates a new Bridge pool with the specified name. |
| Create Routing Rule - Not available for Tableau Server. | Creates a Bridge routing rule for a site. |
| Delete Bridge Client - Not available for Tableau Server. | Permanently removes a Bridge client from the site. |
| Delete Bridge Pool - Not available for Tableau Server. | Permanently deletes a Bridge pool and all its associated domain mappings. |
| Delete Domain - Not available for Tableau Server. | Removes a domain mapping from the system. |
| Delete Routing Rule - Not available for Tableau Server. | Permanently deletes a Bridge routing rule identified by its ID. |
| Get Bridge Client - Not available for Tableau Server. | Retrieves detailed information about a single Bridge client. |
| Get Domain Mapping - Not available for Tableau Server. | Retrieves information about all domain mappings for the site, including pool assignment and status (ALLOWED or BLOCKED). |
| Get Routing Rule - Not available for Tableau Server. | Returns a single Bridge routing rule identified by its ID. |
| Get Routing Rules - Not available for Tableau Server. | Returns all Bridge routing rules for the site. |
| List Bridge Clients - Not available for Tableau Server. | Retrieves a list of all Bridge clients for a specific site, with optional filtering by pool. |
| List Bridge Pools - Not available for Tableau Server. | Retrieves a list of all Bridge pools for the specified site, including pool details and associated domain mappings. |
| Move Bridge Client - Not available for Tableau Server. | Moves a Bridge client between pools or to unassigned status. |
| Remove Projects from Routing Rule - Not available for Tableau Server. | Removes one or more project filtering conditions from an existing allow rule, broadening the rule so it no longer applies only to those projects. |
| Update Bridge Pool - Not available for Tableau Server. | Updates the display name of an existing Bridge pool. |
| Update Domain Among Pools - Not available for Tableau Server. | Moves a domain from its current pool to a different pool. |
| Update Domain Name - Not available for Tableau Server. | Updates an existing domain mapping by renaming the domain. |
| Update Routing Rule - Not available for Tableau Server. | Partially updates an existing Bridge routing rule. |
| Add Collection Permissions | Adds permissions to the specified collection for a user or group. You can specify multiple sets of permissions using one call. |
| Add items to a collection | Adds items to a collection. |
| Batch update collections | Batch updates collections. |
| Create a collection | Creates a new collection. |
| Delete Collection Permission | Removes the specified collection permission for the specified group or user. |
| Delete collections | Deletes collections. |
| Delete collections | Deletes collections. |
| Get details of a collection | Gets the details of a collection. |
| List Collection Permissions | Returns a list of permissions for a specific collection. |
| List collections | Lists collections. |
| List items in a collection | Lists items in a collection. |
| Remove items from a collection | Removes items from a collection. |
| Reorder items in a collection | Reorders items in a collection. |
| Create Connected App | Create a connected app. |
| Create Connected App Secret | Generate a secret for a connected app. |
| Delete Connected App | Permanently remove a connected app. |
| Delete Connected App Secret | Permanently remove a secret associated with a connected app. |
| Delete EAS | Delete a registered external authorization server (EAS). |
| Get Connected App | Query a connected app by its ID. |
| Get Connected App Secret | Query a connected app secret and the token value using the connected app's ID. |
| List All Registered EAS | Get all external authorization servers (EASs) registered to a site. |
| List Connected Apps | Query all connected apps configured on a site. |
| List Registered EAS | Get an external authorization server (EAS) registered to a site. |
| Register EAS | Create a connected app with OAuth 2.0 trust by registering an external authorization server (EAS) to a site. |
| Update Connected App | Update a connected app. |
| Update EAS - Not available for Tableau Server. | Update a connected app with OAuth 2.0 trust. |
| Get batch content usage statistics - Not available for Tableau Server | Gets usage statistics for multiple content items. The batch of can include multiple content types. |
| Get content search results | Searches across all supported content types for objects relevant to the search expression specified in the querystring of the request URI. |
| Get Content Suggestions | Returns a specified number of suggestions for auto-completion of user input as they type. You can specify content types of suggestions and prioritize recently viewed content. |
| Get usage statistics for content item - Not available for Tableau Server | Gets the usage statistics for a Tableau content item, specified by LUID and content type, such as workbook, datasource, or flow. |
| Create custom domain settings - Not available for Tableau Server | Starts the process of custom domain setup for a Tableau site. |
| Delete custom domain settings - Not available for Tableau Server | Deletes the custom domain setup for a Tableau site. |
| Get Custom Domain Name - Not available for Tableau Server | Gets the custom domain for a Tableau site, if one is provisioned. For more information about how, see. |
| Get custom domain settings - Not available for Tableau Server | Gets the custom domain settings for a Tableau site. |
| Update custom domain settings - Not available for Tableau Server | Updates the custom domain setup for a Tableau site. |
| Allow dashboard extension on site - Retired in API 3.21 | Adds a dashboard extension to the safe list of the site you are signed into. |
| Block dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Adds a dashboard extension to the block list of a server. |
| Disallow dashboard extension on site - Retired in API 3.21 | Deletes a specific dashboard extension from the safe list of the site you are signed into. |
| Get allowed dashboard extension on site - Retired in API 3.21 | Gets the details of a specific dashboard extension on the safe list of the site you are signed into. |
| Get blocked dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Gets the details of a specific dashboard extension on the blocked list of a server. |
| List allowed dashboard extensions on site - Retired in API 3.21 | Lists the dashboard extensions on the safe list of the site you are signed into. |
| List blocked dashboard extensions on server - Retired in API 3.21 - Not available for Tableau Cloud | Lists the dashboard extensions on the blocked list of a server. |
| List dashboard extension settings of site - Retired in API 3.21 | Lists the dashboard extension settings of the site you are signed into. |
| List settings for dashboard extensions on server - Retired in API 3.21 - Not available for Tableau Cloud | Lists the dashboard extension settings of a server. |
| Unblock dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Deletes a specific extension from the block list of a server. |
| Update dashboard extension settings of site - Retired in API 3.21 | Updates the settings for dashboard extensions for the site you are signed into. |
| Update dashboard extensions settings of server - Retired in API 3.21 - Not available for Tableau Cloud | Updates the settings for dashboard extensions of a server. |
| Update settings for allowed dashboard extension on site - Retired in API 3.21 | Updates the settings of a specific dashboard extension in the safe list of the site you are signed into. |
| Add Tags to Data Source | Adds one or more tags to the specified data source. |
| Add Work Copy Elements | Adds field descriptions or table descriptions to a work copy. Returns HTTP 201 when every element is added. The success body omits the elements that succeeded. |
| Create Work Copy | Creates a work copy of a published data source and returns the work copy LUID. Composable data sources and Semantic Data Model (SDM) data sources are not supported. The call is rejected when the caller already has the maximum number of open work copies. |
| Delete Data Source | Deletes the specified data source from a site. When a data source is deleted, its associated data connection is also deleted. Workbooks that use the data source are not deleted, but they will no longer work properly. |
| Delete Tag from Data Source | Deletes a tag from the specified data source. |
| Delete Work Copy Elements | Deletes elements from a work copy. Send elementType and name for each element. Other content is ignored. Returns HTTP 200 when every element is deleted. The success body omits the elements that succeeded. |
| Download Data Source | Downloads a data source in .tdsx format. |
| Download Data Source Encrypted Keychain | Gets an encrypted version of the embedded credentials from the data source. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Download Data Source Revision | Downloads a specific version of a data source prior to the current one in .tdsx format. To down load the current version of a data source use the Download Data Source method. |
| Get Data Source Revisions | Returns a list of revision information (history) for the specified data source. |
| Publish Data Source | Publishes a data source on the specified site, or appends data to an existing data source. |
| Publish Work Copy | Publishes a work copy as a data source. Send the published data source name and an optional description. The response returns the new data source LUID. A blank name is rejected. |
| Query Data Source | Returns information about the specified data source. |
| Query Data Source Connections | Returns a list of data connections for the specified data source. |
| Query Data Sources | Returns a list of published data sources on the specified site, with optional parameters for specifying the paging of large results. To get a list of data sources embedded in a workbook, use the Query Workbook Connections method. |
| Read Data Source Elements | Reads columns, field descriptions, or table descriptions from a published data source. Set elementType to the kind of element, and optionally set name to read one element. |
| Read Work Copy Elements | Reads columns, field descriptions, or table descriptions from a work copy. Set elementType to the kind of element, and optionally set name to read one element. |
| Remove Data Source Revision | Removes a specific version of a data source from the specified site. |
| Update Data in Hyper Connection | Incrementally updates data (insert, update, upsert, replace and delete) in a published data source from a live-to-Hyper connection, where the data source has multiple connections. |
| Update Data in Hyper Data Source | Incrementally updates data (insert, update, upsert, replace and delete) in a published data source from a live-to-Hyper connection, where the data source has a single connection. |
| Update Data Source | Updates the owner, project or certification status of the specified data source. |
| Update Data Source Connection | Updates the server address, port, authentication type, username, or password for the specified data source connection. |
| Update Data Source Connections | Updates the server address, port, authentication type, username, or password for one or more connections in a data source. To update all connections in a given data source with the same connection information, see Update Data Source Connection. |
| Update Data Source Now | Runs an extract refresh on the specified data source. |
| Update Work Copy Elements | Updates columns, field descriptions, or table descriptions on a work copy. Returns HTTP 200 when every element is updated. The success body omits the elements that succeeded. |
| Upload Data Source Encrypted Keychain | Uploads the encrypted version of the embedded credentials. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Create an Extract for a Data Source | Create an extract for a data source in a site. Optionally, encrypt the extract if the site and workbooks using it are configured to allow it. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Create Extracts for Embedded Data Sources in a Workbook | Create extracts for all embedded data sources of a workbook. Optionally, encrypt the extracts if the site and workbook using them are configured to allow it. |
| Decrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Delete Extract from Data Source | Delete the extract from a data source. |
| Delete Extract Refresh Task | Deletes the specified extract refresh task on Tableau Server or Tableau Cloud. |
| Delete Extracts from Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Deletes the extracts from a virtual connection, which changes it from extract to live mode. |
| Delete Extracts of Embedded Data Sources from a Workbook | Delete all extracts of embedded data sources in a workbook. |
| Encrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Get Extract Refresh Task | Returns information about a site's scheduled extract refresh task for a data source, workbook, or virtual connection. |
| List Extract Refresh Tasks in Server Schedule - Not available for Tableau Cloud. | Returns a list of the extract refresh tasks for a specified server schedule on the specified site on Tableau Server. |
| List Extract Refresh Tasks in Site | Returns a list of extract refresh tasks for the site. Tasks include extract refreshes for data sources, workbooks, and virtual connections. |
| Reencrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Run Extract Refresh Task | Runs the specified extract refresh task. |
| Update Cloud Extract Refresh Task - Not available for Tableau Server. | Updates an extract refresh task on Tableau Cloud. |
| Add Data Source to Favorites | Adds the specified data source to the user's favorites. |
| Add Flow to Favorites | Adds the specified flow to the user's favorites. |
| Add Metric to Favorites - Retired in API 3.22 | Adds the specified metric to the user's favorites. |
| Add Project to Favorites | Adds the specified project to a user's favorites. |
| Add View to Favorites | Adds the specified view to a user's favorites. |
| Add Workbook to Favorites | Adds the specified workbook to a user's favorites. |
| Delete Data Source from Favorites | Deletes the specified data source from the user's favorites. If the specified data source is not a favorite, the operation has no effect. |
| Delete Flow from Favorites | Deletes the specified flow from the user's favorites. If the specified flow is not a favorite, the operation has no effect. |
| Delete Project from Favorites | Deletes the specified project from the user's favorites. If the specified project is not a favorite, the operation has no effect. |
| Delete View from Favorites | Deletes the specified view from user's favorites. If the specified view is not a favorite, the operation has no effect. |
| Delete Workbook from Favorites | Deletes a workbook from a user's favorites. If the specified workbook is not a favorite of the specified user, this call has no effect. |
| Get Favorites for User | Returns a list of favorite projects, data sources, views, workbooks, and flows for a user. |
| Organize Favorites | Move an item to organize a user's favorites. |
| Add Flow Permissions | Adds permissions to the specified flow for a Tableau Server user or group. You can specify multiple sets of permissions using one call. |
| Add Flow Task to Server Schedule | The Add Flow Task to Schedule method is renamed and retired for Tableau Cloud in API 3.22 (Tableau Cloud March 2024). It will remain available for Tableau Server only. For Tableau Cloud in March 2024, this method will be replaced with Create Cloud Flow Task method. |
| Cancel Flow Run | Cancels a flow run that is in progress. |
| Create Cloud Flow Task - Not available for Tableau Server. Available only with a Data Management license. | Creates a flow task on Tableau Cloud, and set its schedule. |
| Delete Flow | Deletes a flow. When a flow is deleted, its associated connections, the output and input steps, any associated scheduled tasks, and run history are also deleted. |
| Delete Flow Permission | Deletes the specified permission from the specified flow for a group or user. |
| Download Flow | Downloads a flow in .tfl or .tflx format. |
| Download Flow Encrypted Keychain | Gets an encrypted version of the embedded credentials in a flow. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Get Flow Run | Gets a flow run. |
| Get Flow Run Task | Returns information about the specified flow run task. This method shows you information about the scheduled task for the flow. |
| Get Flow Run Tasks | Returns a list of scheduled flow tasks for the site. |
| Get Flow Runs | Get flow runs. |
| Get Linked Task - Available only with a Data Management license. | Returns information about a specific linked task. This method shows you information about the scheduled linked task. |
| Get Linked Tasks - Available only with a Data Management license. | Returns a list of scheduled linked tasks for a site. |
| List Flow Permissions | Returns a list of permissions for the specific flow. |
| Publish Flow | Publishes a flow on the specified site. |
| Query Flow | Returns information about the specified flow, including information about the project, owner, and output steps. |
| Query Flow Connections | Returns a list of data connections for the specific flow. |
| Query Flows for a Site | Returns the flows on a site. If the user is not an administrator, the method returns just the flows that the user has permissions to view. |
| Query Flows for User | Returns the flows that the specified user owns in addition to those that the user has Read (view) permissions for. |
| Run Flow Now - Available only with a Data Management license. | Runs the specified flow. |
| Run Flow Task | Runs the specified flow run task. |
| Run Linked Task Now - Available only with a Data Management license. | Runs the specified linked task. |
| Update Flow | Updates the project and/or owner of the specified flow. |
| Update Flow Connection | Updates the server address, port, username, or password for the specified flow connection. The connection can be an input or an output connection. |
| Update Flow Connections | Updates the server address, port, username, or password for one or more flow connections. The connection can be an input or an output connection. |
| Update Flow Owner | Updates a flow's owner. |
| Upload Flow Encrypted Keychain | Uploads the encrypted version of the embedded credentials of a flow. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Add User to Identity Pool - Not available for Tableau Cloud. | Add a user to a specified identity pool. |
| Configure Identity Store - Not available for Tableau Cloud | Configure a new local identity store to provision users. |
| Create Authentication Configuration - Not available for Tableau Cloud | Create an instance of OpenID Connect (OIDC) authentication. |
| Create Identity Pool - Not available for Tableau Cloud | Create an identity pool. |
| Delete Authentication Configuration - Not available for Tableau Cloud | Delete an authentication instance. |
| Delete Identity Pool - Not available for Tableau Cloud | Delete an identity pool. |
| Delete Identity Store - Not available for Tableau Cloud | Delete an identity store. |
| Get Identity Pool - Not available for Tableau Cloud | Get information about an identity pool. |
| List Authentication Configurations on Server - Not available for Tableau Cloud | List information about all authentication instances associated with identity pools. |
| List Identity Pools - Not available for Tableau Cloud | List all identity pools. |
| List Identity Stores - Not available for Tableau Cloud | List information about all identity store instances used to provision users. |
| Remove User from Identity Pool - Not available for Tableau Cloud. | Remove a user from a specified identity pool. |
| Update Authentication Configuration - Not available for Tableau Cloud | Update an authentication instance. |
| Update Identity Pool - Not available for Tableau Cloud | Update information about an identity pool. |
| Add Data Source to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a data source to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Add Virtual Connection to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a virtual connection to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Add Workbook to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh or accelerate a workbook to an existing schedule on Tableau Server. |
| Batch Update Schedule State - Not available for Tableau Cloud | Updates the state of one or more schedules. |
| Cancel Job | Cancels a job specified by job ID. To get a list of job IDs for jobs that are currently queued or in-progress, use the Query Jobs method. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Create Server Schedule - Not available for Tableau Cloud. | Creates a new server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task and Create subscription. |
| Delete Data Acceleration Task | Deletes a data acceleration task. |
| Delete Server Schedule - Not available for Tableau Cloud. | Deletes the specified schedule on Tableau Server. For Tableau Cloud, see Delete Extract Refresh Task and Delete Subscription. |
| Get Data Acceleration Tasks in a Site | Returns a list of data acceleration tasks for the site. |
| Get Extract Refresh Task | Returns information about a site's scheduled extract refresh task for a data source, workbook, or virtual connection. |
| Get Server Schedule - Not available for Tableau Cloud. | Returns detailed information about the specified server schedule on Tableau Server. |
| List Extract Refresh Tasks in Server Schedule - Not available for Tableau Cloud. | Returns a list of the extract refresh tasks for a specified server schedule on the specified site on Tableau Server. |
| List Extract Refresh Tasks in Site | Returns a list of extract refresh tasks for the site. Tasks include extract refreshes for data sources, workbooks, and virtual connections. |
| List Server Schedules - Not available for Tableau Cloud. | Returns a list of flows, extract and subscription server schedules on Tableau Server. For each schedule, the API returns the name, frequency, priority, and other information. |
| Query Job | Returns status information about an asynchronous process that is tracked using a job. This method can be used to query jobs that are used to do the following:. |
| Query Jobs | Returns a list of active jobs on the specified site. To get details on a specific job, pass a job ID returned by this method to the Query Job method. To cancel an active job, pass a job ID returned by this method to the Cancel Job method. |
| Run Extract Refresh Task | Runs the specified extract refresh task. |
| Update Server Schedule - Not available for Tableau Cloud. | Modifies settings for the specified server schedule, including the name, priority, and frequency details on Tableau Server. For Tableau Cloud, see Update cloud extract refresh task and Update subscription . |
| Update Virtual Connection Now - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Runs an extract refresh on the specified virtual connection. |
| Add Data Quality Warning - Available only with a Data Management license. | Add a data quality warning to a database, table, column, published data source, flow, virtual connection, or virtual connection table. |
| Add Database Permissions - Available only with a Data Management license. | Add permissions to a database asset. |
| Add Default Database Permissions - Available only with a Data Management license. | Adds default permission capabilities to a user or group for table resources in that database. |
| Add or Update Monitoring Quality Warning on Content - Available only with a Data Management license. | Create or update one or more monitoring quality warnings. |
| Add Table Permissions - Available only with a Data Management license. | Add permissions to a table asset. |
| Add Tags to Column | Add one or more tags to a column. |
| Add Tags to Database | Add one or more tags to a database. |
| Add Tags to Table | Add one or more tags to a table. |
| Add Tags to Virtual Connection - Available only with a Data Management license. | Adds tags to a virtual connection. |
| Batch Add or Update Data Quality Certifications - Available only with a Data Management license. | Create or update one or more data quality certifications for different content and asset items. |
| Batch Add or Update Data Quality Warnings - Available only with a Data Management license. | Add or update multiple data quality warnings on assets. |
| Batch Add Tags - Available only with a Data Management license. | Add multiple tags to items that are different content and asset types. |
| Batch Delete Data Quality Warnings - Available only with a Data Management license. | Delete multiple data quality warnings from assets. |
| Batch Delete Tags - Available only with a Data Management license. | Delete multiple tags from items that are different content and asset types. |
| Create Label Category - Available only with a Data Management license. | Creates a data label category. |
| Create or Update labelValue - Available only with a Data Management license. | Creates a label value with the specified name if it doesn't exist, or updates the existing label value if the label value name already exists. |
| Delete Data Quality Certification by ID - Available only with a Data Management license. | Delete a data quality certification from an asset using the data quality certification ID. |
| Delete Data Quality Certifications by Content - Available only with a Data Management license. | Delete multiple data quality certifications from assets. |
| Delete Data Quality Warning by Content - Available only with a Data Management license. | Delete the data quality warnings from an asset. |
| Delete Data Quality Warning by ID - Available only with a Data Management license. | Delete a data quality warning from an asset using the data quality warning ID. |
| Delete Database Permissions - Available only with a Data Management license. | Permanently remove the permissions applied to a database asset. |
| Delete Default Database Permissions - Available only with a Data Management license. | Permanently remove the default permissions on a database asset. |
| Delete Label - Available only with a Data Management license. | Deletes a data label by its LUID. |
| Delete Label Category - Available only with a Data Management license. | Deletes a label category. |
| Delete Labels - Available only with a Data Management license. | Deletes the data labels on one or more assets. |
| Delete labelValue - Available only with a Data Management license. | Deletes a label value. |
| Delete Quality Warning Trigger by ID - Available only with a Data Management license. | Permanently remove a quality warning trigger using the quality warning trigger ID. |
| Delete Quality Warning Triggers by Content - Available only with a Data Management license. | Permanently remove all quality warning triggers for one or more data sources or flows, or both. |
| Delete Table Permissions - Available only with a Data Management license. | Permanently remove the permissions applied to a table asset. |
| Delete Tag from Column | Delete a tag from a column. |
| Delete Tag from Database | Delete a tag from a database. |
| Delete Tag from Table | Delete a tag from a table. |
| Delete Tag from Virtual Connection - Available only with a Data Management license. | Deletes a tag from a virtual connection. |
| Get Databases and Tables from Connection | Query databases and tables from the connection information in the data source (.tds or .tdsx) or workbook (.tws or .twbx) file's XML. |
| Get Label - Available only with a Data Management license. | Gets a data label by its LUID. |
| Get Labels - Available only with a Data Management license. | Displays information about the data labels on one or more assets. |
| Get labelValue - Available only with a Data Management license. | Displays label value properties for a single label value. |
| Get Metadata Suggestion - Available only with Tableau+ | Gets a suggestion from generative AI about asset metadata. |
| List Database Permissions | Get information about the permissions on a database asset. |
| List Default Database Permissions | Get the default permissions applied to the database asset and its children tables. |
| List Label Categories on Site - Available only with a Data Management license. | Lists all data label categories on the site. |
| List labelValues on Site - Available only with a Data Management license. | Lists all label values on the site. |
| List Table Permissions | Get information about the permissions on a table asset. |
| Move Database - Available only with a Data Management license. | Move one or more databases to a project. |
| Move Table - Available only with a Data Management license. | Moves one or more tables to a project. |
| Query All Quality Warning Triggers by Content | Get information about all quality warning triggers for a content item. |
| Query Column in a Table | Get information about a column in a table asset. |
| Query Columns in a Table | Get information about the columns in a table asset. |
| Query Data Quality Certification by ID | Get information about a data quality certification. |
| Query Data Quality Certifications by Content | Get all data quality certifications for content or asset items. |
| Query Data Quality Warning by Content - Available only with a Data Management license. | Get information about the data quality warning for the database, table, column, published data source, flow, virtual connection, or virtual connection table. |
| Query Data Quality Warning by ID | Get information about a specific data quality warning. |
| Query Database | Get information about a database asset. |
| Query Databases | Get information about all database assets for a site. |
| Query Quality Warning Trigger | Get information about a quality warning trigger. |
| Query Table | Get information about a table asset. |
| Query Tables | Get information about all table assets for a site. |
| Remove Column - Available only with a Data Management license. | Permanently remove the column from a table asset. |
| Remove Database - Available only with a Data Management license. | Permanently remove the database asset. |
| Remove Table - Available only with a Data Management license. | Permanently remove the table asset. |
| Update Column - Available only with a Data Management license. | Update the description of the column. |
| Update Data Quality Warning - Available only with a Data Management license. | Update the warning type, status, and message of a data quality warning. |
| Update Database - Available only with a Data Management license. | Update the database description, certify a database, set database permissions, or assign a Tableau Cloud or Server user as the database contact. |
| Update Label - Available only with a Data Management license. | Updates a label by its LUID. |
| Update Label Category - Available only with a Data Management license. | Updates a data label category. |
| Update Labels - Available only with a Data Management license. | Creates or updates labels on one or more assets. |
| Update labelValue - Available only with a Data Management license. | Updates a label value. |
| Update Monitoring Quality Warning - Available only with a Data Management license. | Update a monitoring quality warning. |
| Update Table - Available only with a Data Management license. | Update the table description, certify a table, or a assign a user contact to the table asset. |
| Delete Metric - Retired in API 3.22 | Deletes a specified metric from a site. |
| Get Metric - Retired in API 3.22 | Returns the details of the specified metric. |
| Get Metric Data - Retired in API 3.22 | Returns the data for the specified metric as comma separated (CSV) format. The maximum number of rows returned is 10,000. |
| List Metrics for Site - Retired in API 3.22 | Returns the metrics configured for a site. |
| Update Metric - Retired in API 3.22 | Updates the owner, project, suspended status, or name of the specified metric. |
| Get Mobile Security Settings for Server | Gets the mobile security settings for the server. |
| Get Mobile Security Settings for Site | Gets the mobile security settings for the specified site. |
| Update Mobile Security Settings for Site | Updates the mobile security sections for a specified site. |
| Add User to Data-Driven Alert | Adds a specified user to the recipients list for a data-driven alert. |
| Create a Webhook | Creates a new webhook for a site. |
| Create Data Driven Alert - Not available for Tableau Server. | Create a data driven alert (DDA) for a view with a single data axis. |
| Delete a Webhook | Deletes the specified webhook. |
| Delete Data-Driven Alert | Deletes the specified data-driven alert from the specified site. |
| Delete User from Data-Driven Alert | Removes a specified user from the recipients list for a data-driven alert. |
| Get a Webhook | Returns information about the specified webhook. |
| Get Data-Driven Alert | Returns details on a specified data-driven alert, including the recipients of the alert. |
| Get User Notification Preferences | Returns the notification preferences for the specified site. You can filter by channel and notification type. For more information about notifications, see Manage Your Account Settings. |
| List Data-Driven Alerts on Site | Returns a list of data-driven alerts in use on the specified site. |
| List Webhooks | Returns a list of all the webhooks on the specified site. |
| Test a Webhook | Tests the specified webhook. Sends an empty payload to the configured destination URL of the webhook and returns the response from the server. This is useful for testing, to ensure that things are being sent from Tableau and received back as expected. |
| Update a Webhook | Modify the properties of an existing webhook. |
| Update Data-Driven Alert | Update one or more settings for the specified data-driven alert; including the alert subject, frequency, and owner. |
| Update User Notification Preferences | Updates user notifications preferences to enabled or disabled on the specified site. For more information about notifications, see Manage Your Account Settings. |
| Create OpenID Connect Configuration - Not available for Tableau Server. | Create the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Get OpenID Connect Configuration - Not available for Tableau Server. | Get details about the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Remove OpenID Connect Configuration - Not available for Tableau Server. | Disable and clear the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Update OpenID Connect Configuration - Not available for Tableau Server. | Update the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Add Ask Data Lens Permissions - Retired in API 3.22 | Adds permissions to the specified ask data lens for a user or group. You can specify multiple sets of permissions using one request. |
| Add Collection Permissions | Adds permissions to the specified collection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Data Source Permissions | Adds permissions to the specified data source for a user or group. You can specify multiple sets of permissions using one call. |
| Add Default Permissions | Adds default permission rules for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, also adds default permission rules for database or table resources in a project for a user or group. After adding default permission rules, new resources of the type you specify that are added to the project will have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. For more information, see Permissions. |
| Add Project Permissions | Adds permissions to the specified project for a user or group. You can specify multiple sets of permissions using one call. |
| Add View Permissions | Adds permissions to the specified view (also known as a sheet) for a user or group. You can specify multiple sets of permissions using one call. |
| Add Virtual Connection Permissions - Available only with a Data Management license. | Adds permissions to the specified virtual connection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Workbook Permissions | Adds permissions to the specified workbook for a user or group. You can specify multiple sets of permissions using one call. |
| Add Workbook to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh or accelerate a workbook to an existing schedule on Tableau Server. |
| Delete Ask Data Lens Permission - Retired in API 3.22 | Deletes the specified permissions to the specified ask data lens for a user or group. |
| Delete Collection Permission | Removes the specified collection permission for the specified group or user. |
| Delete Data Source Permission | Removes the specified data source permission for the specified group or user. |
| Delete Default Permission | Removes default permission rules for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, also removes default permission rules for database or table resources in a project for a user or group. After removing default permission rules, new resources of the type you specify that are added to the project will no longer have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. |
| Delete Project Permission | Removes the specified project permission for the specified group or user. |
| Delete View Permission | Deletes permission to the specified view (also known as a sheet) for a Tableau Server user or group. |
| Delete Virtual Connection Permission - Available only with a Data Management license. | Removes the specified virtual connection permission for the specified group or user. |
| Delete Workbook Permission | Deletes the specified permission from the specified workbook for a group or user. |
| List Ask Data Lens Permissions | List all permissions configured for the specified ask data lens that the user has read capability for. |
| List Collection Permissions | Returns a list of permissions for a specific collection. |
| List Data Source Permissions | Returns a list of permissions for a specific data source. |
| List Default Permissions | Returns details of default permission rules granted to users and groups for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, this method can also return details of default permission rules granted to users and groups for database or table resources in a project. |
| List Project Permissions | Returns information about the set of permissions allowed or denied for groups and users in a project. |
| List View Permissions | Returns a list of permissions for the specific view. |
| List Virtual Connection Permissions - Available only with a Data Management license. | Returns a list of permissions for a specific virtual connection. |
| List Workbook Permissions | Returns a list of permissions for the specific workbook. |
| Replace Content Permissions | Replaces existing permissions in the specified content. You can specify multiple sets of permissions using one call. |
| Replace Project's Default Permissions | Replaces default permissions in the specified content. If Tableau Catalog is enabled, it also adds default permission rules for database or table resources in a project. After adding default permission rules, new resources of the type you specify that are added to the project will have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. For more information, see Permissions. |
| Create Project | Creates a project on the specified site. You can also create project hierarchies by creating a project under the specified parent project on the site. To make changes to an existing project, call Update Project. |
| Delete Project | Deletes the specified project on a specific site. When a project is deleted, all Tableau assets inside of it are also deleted, including assets like associated workbooks, data sources, project view options, and rights. |
| Query Projects | Returns a list of projects on the specified site, with optional parameters for specifying the paging of large results. |
| Update Project | Updates the name, description, or project hierarchy of the specified project. You can create or update project hierarchies by specifying a parent project for the project that you are updating using this method. |
| Append to File Upload | Uploads a block of data and appends it to the data that is already uploaded. |
| Initiate File Upload | Initiates the upload process for a file. After the upload has been initiated, you call Append to File Upload to send individual blocks of the file to the server. When the complete file has been sent to the server, you call Publish Data Source, Publish Flow, or Publish Workbook to commit the upload. |
| Publish Data Source | Publishes a data source on the specified site, or appends data to an existing data source. |
| Publish Flow | Publishes a flow on the specified site. |
| Publish Virtual Connection - Available only with a Data Management license. | Publishes a virtual connection on the specified site, either from a packaged virtual connection file (.tvcx) or from a downloaded JSON representation. |
| Publish Workbook | Publishes a workbook on the specified site. |
| Batch create Pulse subscriptions - Not available for Tableau Server | Creates multiple subscriptions to a metric for specified users and/or groups. |
| Batch get Pulse subscriber counts - Not available for Tableau Server | Gets the number of unique users subscribed to a set of metrics specified in a comma separated list of metric LUIDs. |
| Batch get Pulse subscriptions - Not available for Tableau Server | Gets a batch of subscriptions, specified in a comma delimited list of subscriptions LUIDs. |
| Batch list metric definitions (few) - Not available for Tableau Server | Gets the details of a batch of metric definitions and metrics on a site, specified in a brief comma delimited list of LUIDs. |
| Batch list metric definitions (many) - Not available for Tableau Server | Gets the details of a batch of definitions specified in a comma delimited list of LUIDs. This method is optimized for batches with large numbers of definitions. |
| Batch list metrics (few) - Not available for Tableau Server | Gets a batch of metrics from a definition, specified in a comma delimited list. |
| Batch list metrics (many) - Not available for Tableau Server | Gets batches of metrics available on a server. Only metrics a user has privileges to view will be visible. This endpoint uses POST as an alternative to GET, where long lists of URL parameters could be problematic. |
| Create metric - Not available for Tableau Server | Creates a metric. |
| Create metric definition - Not available for Tableau Server | Creates a metric definition. |
| Create metric tag for user - Not available for Tableau Server | Creates a tag for the specified metric, for the signed in user. |
| Create subscription - Not available for Tableau Server | Creates a subscription to a specified metric for a specified user or group. |
| Delete metric - Not available for Tableau Server | Deletes a metric. |
| Delete metric definition - Not available for Tableau Server | Deletes a metric definition. |
| Delete metric tag - Not available for Tableau Server | Deletes the specified metric tag. |
| Delete Pulse subscription - Not available for Tableau Server | Deletes a specified subscription to a metric. |
| Generate basic insight bundle - Not available for Tableau Server | Generates a basic insight bundle. |
| Generate breakdown insight bundle - Not available for Tableau Server | Generates a breakdown insight bundle. This provides the BAN and breakdown groups of insights. |
| Generate current metric value insight bundle - Not available for Tableau Server | Generates a bundle the current aggregated value for each metric. |
| Generate detail insight bundle - Not available for Tableau Server | Generates a detail insight bundle. |
| Generate exploration insight bundle - Not available for Tableau Server | Generates an exploration insight bundle. This provides the BAN, anchor, and followup groups of insights. |
| Generate insight brief - Not available for Tableau Server | Generates an insight brief based on a user utterance by gathering insights for the specified metrics. For supplemental information, see. |
| Generate metric card image - Not available for Tableau Server | Generates a PNG image of a Pulse metric card with full visual parity to the web UI homepage. |
| Generate springboard insight bundle - Not available for Tableau Server | Generates a springboard insight bundle. |
| Get metric - Not available for Tableau Server | Gets the details of the specified metric. |
| Get metric definition - Not available for Tableau Server | Gets a metric definition and optionally metrics it contains. |
| Get or create metric - Not available for Tableau Server | Returns the details of a metric in a definition if it exists, or creates a new metric if it does not. Also returns 'true' if a new metric was created, or 'false' if it already existed. |
| Get Pulse subscription - Not available for Tableau Server | Gets a specified subscription to a metric. |
| Get site entitlements - Not available for Tableau Server | Returns entitlements available for a site. If entitlements are True, then Pulse premium features are enabled for the site. |
| Gets recommended metrics - Not available for Tableau Server | Gets personalized groups of metrics to recommend to a user. Only metric that the user has privileges to view will be returned. |
| List followed metrics groups - Not available for Tableau Server | Gets the user's followed metrics. Optionally metrics can be grouped by characteristics like datasource, and sorted. |
| List metric definition measurement periods - Not available for Tableau Server | Gets the measurement periods for the specified metric definition. |
| List metric definitions - Not available for Tableau Server | Lists the metric definitions configured for a site or, optionally, the details and definition for a specific metric. |
| List metrics in definition - Not available for Tableau Server | Lists the metrics contained in a metric definition. |
| List Pulse user preferences - Not available for Tableau Server | Gets the signed in user's preferences for notifications channels and cadence, and for grouping and sorting followed metrics in REST responses and UI. |
| List site alerts - Not available for Tableau Server | List the alerts for the authorized user user on a specified site. |
| List subscriptions - Not available for Tableau Server | Lists the subscriptions to a specified metric and/or for a specified user. |
| Lists all definition tags for the site. - Not available for Tableau Server | Lists all definition tags for the site. Results can be filtered by tag value, definition name, or datasource ID. Each result includes the tag value and a count of how many definitions use it. |
| Update metric - Not available for Tableau Server | Updates the specification of a metric. |
| Update metric definition - Not available for Tableau Server | Updates a metric definition. |
| Update Pulse user preferences - Not available for Tableau Server | Updates the signed in user's preferences for notifications channels and cadence, and for grouping and sorting followed metrics in REST responses and UI. |
| Delete All Recycle Bin Contents | Permanently deletes all content in a site's Recycle Bin. |
| Delete Recycle Bin Content Item | Permanently deletes the specified Recycle Bin content item. |
| Get Recycle Bin Content Item | Returns information about the specified Recycle Bin content item. |
| List Recycle Bin Content by Type | Gets a list of Recycle Bin content of the specified type. |
| Restore Recycle Bin Content Item | Restores the specified content item from the Recycle Bin to a project. |
| Download Data Source Revision | Downloads a specific version of a data source prior to the current one in .tdsx format. To down load the current version of a data source use the Download Data Source method. |
| Download Workbook Revision - Available only if version history is enabled for the specified site. | Downloads a specific version of a workbook in .twb or .twbx format. |
| Get Data Source Revisions | Returns a list of revision information (history) for the specified data source. |
| Get Workbook Revisions | Returns a list of revision information (history) for the specified workbook. |
| Remove Data Source Revision | Removes a specific version of a data source from the specified site. |
| Remove Workbook Revision | Removes a specific version of a workbook from the specified site. |
| Delete Server Session | Deletes a specified session. This method is not available for Tableau Cloud and is typically used in programmatic management of the life cycles of embedded Tableau sessions. |
| Get Current Server Session | Returns details of the current session of Tableau Server. |
| List Server Active Directory Domains - Not available for Tableau Cloud. | Returns the details of the Active Directory domains that are in use on the server, including their full domain names, nicknames and IDs. If the server is configured to use local authentication, the command returns only the domain name local. |
| Server Info | Returns the version of Tableau Server and the supported version of the REST API. |
| Update Server Active Directory Domain - Not available for Tableau Cloud. | Changes the nickname or full domain name of an Active Directory domain on the server. This method is not available on Tableau Cloud. |
| Create Site - Not available for Tableau Cloud. | Creates a site on Tableau Server. To make changes to an existing site, call Update Site. This method isn’t available for Tableau Cloud. |
| Delete Site - Not available for Tableau Cloud. | Deletes the specified site. |
| Get Data Acceleration Report for a Site | Returns a report about data acceleration for the site. It lets you compare page load times for before and after data acceleration is enabled. |
| Get Embedding Settings for a Site | Returns the current embedding settings for a specific site. |
| Get Recently Viewed for Site | Gets the details of the views and workbooks on a site that have been most recently created, updated, or accessed by the signed in user. The 24 most recently viewed items are returned, though it may take some minutes after being viewed for an item to appear in the results. |
| Get User Personal Space | Gets the details of the Personal Space for the currently authenticated user. |
| List Authentication Configurations for Site - Not available for Tableau Server. | List all authentications configurations on the site. |
| Query Site | Returns information about the specified site, with the option to return information about the storage space and user count for the site. |
| Query Sites - Not available for Tableau Cloud. | Returns a list of the sites on the server that the caller of this method has access to. This method is not available for Tableau Cloud. |
| Query Views for Site | Returns all the views for the specified site, optionally including usage statistics. |
| Update Embedding Settings for Site | Updates the embedding settings for a site. Embedding settings can be used to restrict embedding Tableau views to only certain domains. |
| Update Site - Not available for Tableau Cloud. | Modifies settings for the specified site, including the content URL, administration mode, user quota, state (active or suspended), storage quota, whether flows are enabled, whether subscriptions are enabled, and whether revisions are enabled. |
| Create Subscription | Creates a new subscription to a view or workbook for a specific user on Tableau Server and Tableau Cloud. When a user is subscribed to the content, Tableau sends the content to the user in email on the schedule that you define. |
| Delete Subscription | Deletes the specified subscription on Tableau Server or Tableau Cloud. |
| Get Subscription | Returns information about the specified subscription. |
| List Subscriptions | Returns a list of all the subscriptions on the specified site. |
| Update Subscription | Modifies an existing subscription on Tableau Server. You can change the subject, server schedule, and suspension state for the subscription. |
| List Tableau extensions server settings - Not available for Tableau Cloud. | Lists the settings for extensions of a server. |
| List Tableau extensions site settings | Lists the settings for extensions of a site. |
| Update Tableau extensions server settings - Not available for Tableau Cloud. | Updates the settings for extensions of a server. |
| Update Tableau extensions site settings | Updates the settings for extensions of a site. |
| Create a semantic context - Not available for Tableau Server | Create a semantic context node carrying one or more statements. |
| Delete a semantic context - Not available for Tableau Server | Delete a semantic context created and managed in Tableau Knowledge, along with its statements. |
| Get a node by ID - Not available for Tableau Server | Get a single node by its ID, including its semantic statements and directly connected nodes. |
| Get graph-health suggestions - Not available for Tableau Server | Get a report on the health of the graph, including a score and suggested improvements. |
| Get the downstream impact of a node - Not available for Tableau Server | Get the assets that depend on a node, to see the impact if it changes. |
| Get the lineage of a node - Not available for Tableau Server | Get the lineage neighborhood of a node. |
| List edges around a node - Not available for Tableau Server | List the edges connected to a node. |
| List knowledge graphs - Not available for Tableau Server | List the knowledge graphs on the caller's Tableau site, each with its ID, name, description, status, and. |
| List knowledge sources - Not available for Tableau Server | List the data sources and workbooks connected to the graph. |
| Search graph nodes - Not available for Tableau Server | Search graph nodes using natural-language semantic search. |
| Search semantic contexts - Not available for Tableau Server | Search semantic contexts across the graph. |
| Search semantic contexts attached to a node - Not available for Tableau Server | Search the semantic contexts attached to a specific node. |
| Update a semantic context - Not available for Tableau Server | Partially update a semantic context. |
| Create Tableau MCP Settings for Site | Replaces the current list of Tableau MCP settings for a given site. |
| Get Tableau MCP Settings for Site | Gets the list of Tableau MCP settings for a specified site. |
| Update Tableau MCP Settings for Site | Updates the current list of Tableau MCP settings for a specified site. |
| Add Group to Group Set | Adds group to a group set. |
| Add User to Group | Adds a user to the specified group. |
| Add User to Site | Adds a user to Tableau Server or Tableau and assigns the user to the specified site. |
| Create Group | Creates a group on a Tableau Cloud site or Tableau Server. |
| Create Group Set | Creates a group set with a specified name. |
| Create SCIM Configuration - Not available for Tableau Server. | Creates the System for Cross-domain Identity Management Configuration (SCIM) configuration on the Tableau Cloud site. |
| Create SCIM Token | Generates the System for Cross-domain Identity Management (SCIM) token and secret. |
| Delete Group | Deletes the group on a specific site. Deleting a group does not delete the users in group, but users are no longer members of the group. Any permissions that were previously assigned to the group no longer apply. |
| Delete Group Set | Deletes the group set on a specific site. Deleting a group set doesn’t delete the users in the group set, but users are no longer members of the group set. Any permissions that were previously assigned to the group set no longer apply. |
| Delete SCIM Configuration - Not available for Tableau Server. | Permanently removes the System for Cross-domain Identity Management (SCIM) configuration from the Tableau Cloud site. |
| Delete SCIM Token - Not available for Tableau Server. | Permanently removes the System for Cross-domain Identity Management (SCIM) token. |
| Delete Users from Site with CSV | Creates a job to remove a list of users, specified in a .csv file, from a site. |
| Download User Credentials | Gets credentials for a user who is being migrated to another Tableau Cloud or Tableau Server site. |
| Get Group Set | Returns information about the specified group set including ID, name, and member groups. |
| Get Groups for a User | Gets a list of groups of which the specified user is a member. |
| Get SCIM Configuration - Not available for Tableau Server. | Gets the System for Cross-domain Identity Management (SCIM) configuration on the Tableau Cloud site. |
| Get Users in Group | Gets a list of users in the specified group. |
| Get Users on Site | Returns the users associated with the specified site. |
| Import Users to Site from CSV | Creates a job to import the users listed in a specified .csv file to a site, and assign their roles and authorization settings. |
| List Group Sets | Lists all group sets matching optional filter and ordered by optional sort expression. |
| List SCIM Configurations - Not available for Tableau Server. | Returns the System for Cross-domain Identity Management Configuration (SCIM) configurations on the Tableau Cloud site. |
| Query Groups | Returns a list of groups on the specified site, with optional parameters for specifying the paging of large results. |
| Query User On Site | Returns information about the specified user. |
| Remove Group from Group Set | Removes a group from the specified group set. |
| Remove User from Group | Removes a user from the specified group. |
| Remove User from Site | Removes a user from the specified site. The user will be deleted if they do not own any other assets other than subscriptions. If a user still owns content (assets) on Tableau Server, the user cannot be deleted unless the ownership is reassigned first. |
| Update Group | Updates a group on a Tableau Cloud site or Tableau Server. |
| Update Group Set | Updates a group set name on a Tableau Server or Tableau Cloud site. |
| Update SCIM Configuration - Not available for Tableau Server. | Updates the System for Cross-domain Identity Management (SCIM) configuration on the Tableau Cloud site. |
| Update User | Modifies information about the specified user. |
| Upload User Credentials | Uploads user credentials to a site on a destination Tableau Cloud or Tableau Server. |
| Add Tags to Virtual Connection - Available only with a Data Management license. | Adds tags to a virtual connection. |
| Add Virtual Connection Permissions - Available only with a Data Management license. | Adds permissions to the specified virtual connection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Virtual Connection to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a virtual connection to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Delete Extracts from Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Deletes the extracts from a virtual connection, which changes it from extract to live mode. |
| Delete Tag from Virtual Connection - Available only with a Data Management license. | Deletes a tag from a virtual connection. |
| Delete Virtual Connection - Available only with a Data Management license. | Deletes a virtual connection. |
| Delete Virtual Connection Permission - Available only with a Data Management license. | Removes the specified virtual connection permission for the specified group or user. |
| Download Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Downloads a virtual connection in .tvcx format.To download a JSON representation of a virtual connection instead, see Download Virtual Connection as JSON. |
| Download Virtual Connection as JSON - Available only with a Data Management license. | Downloads a JSON-representation of a virtual connection. To download a virtual connection as a .tvcx file, see Download Virtual Connection. |
| Download Virtual Connection Revision as JSON - Available only with a Data Management license. | Downloads a JSON-representation of an earlier revision of a virtual connection. |
| List Virtual Connection Database Connections - Available only with a Data Management license. | Returns information about database connections in the specified virtual connection. |
| List Virtual Connection Permissions - Available only with a Data Management license. | Returns a list of permissions for a specific virtual connection. |
| List Virtual Connection Revisions - Available only with a Data Management license. | Lists revisions for a virtual connection. |
| List Virtual Connections - Available only with a Data Management license. | Returns a list of available virtual connection names and IDs. |
| Publish Virtual Connection - Available only with a Data Management license. | Publishes a virtual connection on the specified site, either from a packaged virtual connection file (.tvcx) or from a downloaded JSON representation. |
| Update Virtual Connection - Available only with a Data Management license. | Updates a virtual connection's name, owner, project, or certification status. |
| Update Virtual Connection Database Connections - Available only with a Data Management license. | Updates the server address, port, username, or password for the specified database connection in a virtual connection. |
| Update Virtual Connection Now - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Runs an extract refresh on the specified virtual connection. |
| Add Tags to View | Adds one or more tags to the specified view. |
| Add Tags to Workbook | Adds one or more tags to the specified workbook. |
| Delete Custom View | Deletes the specified custom view. |
| Delete Tag from View | Deletes a tag from the specified view. |
| Delete Tag from Workbook | Deletes a tag from the specified workbook. |
| Delete View | Deletes a view from a workbook. |
| Delete Workbook | Deletes a workbook. When a workbook is deleted, all of its assets are also deleted, including associated views, data connections, and so on. |
| Download View Crosstab Excel | Downloads an Excel (.xlsx) file containing crosstab data from a view that the user has permission to access in a workbook. If a crosstab is exported from a dashboard, data from only the first view in the dashboard will appear in the .xlsx file. Downloads of data from story dashboards are not supported at this time. |
| Download Workbook | Downloads a workbook in .twb or .twbx format. |
| Download Workbook Encrypted Keychain | Gets an encrypted version of the embedded credentials from the workbook. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Download Workbook PDF | Downloads a .pdf containing images of the sheets that the user has permission to view in a workbook. |
| Download Workbook PowerPoint | Downloads a PowerPoint (.pptx) file containing slides with images of the sheets that the user has permission to view in a workbook. Download Images/PDF permissions must be enabled for the workbook (true by default). If Show sheets in tabs is not selected for the workbook, only the default tab will appear in the .pptx file. |
| Download Workbook Revision - Available only if version history is enabled for the specified site. | Downloads a specific version of a workbook in .twb or .twbx format. |
| Get Custom View | Gets the details of a specified custom view. |
| Get Custom View Data | Returns a specified custom view rendered as data in comma separated value (CSV) format. |
| Get Custom View Image | Downloads an image file of the specified custom view. |
| Get Custom View PDF | Returns a specified custom view rendered as a .pdf file. |
| Get Recommendations for Views - Deprecated in API 3.19 | Gets a list of views that are recommended for a user. |
| Get View | Gets the details of a specific view. |
| Get View by Path | Gets the details of all views in a site with a specified name. |
| Get Workbook | Returns information about the specified workbook, including information about views and tags. |
| Get Workbook Downgrade Info | Returns a list of the features that would be impacted, and the severity of the impact, when a workbook is exported as a downgraded version (for instance, exporting a v2019.3 workbook to a v10.5 version). |
| Get Workbook Revisions | Returns a list of revision information (history) for the specified workbook. |
| Hide a Recommendation for a View - Deprecated in API 3.19 | Hides a view from being recommended by the server by adding it to a list of views that are dismissed for a user. |
| List Custom Views | Gets a list of custom views on a site. The list includes details of each custom view. |
| List Users with Custom View as Default | Gets the list of users whose default view is the specified custom view. |
| Publish Workbook | Publishes a workbook on the specified site. |
| Query View Data | Returns a specified view rendered as data in comma separated value (CSV) format. |
| Query View Image | Downloads an image file of the specified view. |
| Query View PDF | Returns a specified view rendered as a .pdf file. |
| Query View Preview Image | Returns the thumbnail image for the specified view. |
| Query Views for Site | Returns all the views for the specified site, optionally including usage statistics. |
| Query Views for Workbook | Returns all the views for the specified workbook, optionally including usage statistics. |
| Query Workbook Connections | Returns a list of data connections for the specific workbook. |
| Query Workbook Preview Image | Returns the thumbnail image as a PNG file for the specified workbook. Usually the image that is returned is for the first sheet in the workbook. |
| Query Workbooks for Site | Returns the workbooks on a site. |
| Query Workbooks for User | Returns the workbooks that the specified user owns in addition to those that the user has Read (view) permissions for. |
| Set Custom View as Default for Users | Sets the specified custom for as the default view for up to 100 specified users. Success or failure for each user is reported in the response body. |
| Unhide a Recommendation for a View - Deprecated in API 3.19 | Unhides a view from being recommended by the server by removing it from the list of views that are dimissed for a user. |
| Update Custom View | Changes the owner or name of an existing custom view. |
| Update Workbook | Modifies an existing workbook, allowing you to change the owner or project that the workbook belongs to and whether the workbook shows views in tabs. Updated workbooks can optionally be marked to appear in the recently viewed list. |
| Update Workbook Connection | Updates the server address, port, authentication type, username, or password for the specified workbook connection. |
| Update Workbook Connections | Updates the server address, port, authentication type, username, or password for one or more connections in a data source. To update all connections in a given data source with the same connection information, see Update Workbook Connection. |
| Update Workbook Now | Refreshes the specified workbook. |
| Update Workbook Thumbnail Images | Updates a workbook's thumbnail images. |
| Upload Workbook Encrypted Keychain | Uploads the encrypted version of the embedded credentials. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Validate Uploaded Workbook | Validates a Tableau workbook (TWB) file that already exists in temporary storage on Tableau Cloud or Tableau Server. The TWB is validated against the TWB XSD schema and verifies that it can be loaded in Tableau. |
| Validate Workbook | Validates a Tableau workbook (TWB) file against the TWB XSD schema and verifies that it can be loaded in Tableau. |
| Validate Workbook and Upload | Validates a Tableau workbook (TWB) file against the TWB XSD schema and verifies that it can be loaded in Tableau. If validation succeeds, this method stores the TWB in a temporary location on Tableau Cloud or Tableau Server for further use. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| lens-luid | The LUID of the data source to set permissions for. |
| lens-luid | Required. The LUID of the ask data lens permissions are being configured for. |
| user-luid | Optional (at least one user or group must be specified). The LUID of the user to add permissions for. |
| group-luid | Optional. The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. For valid capabilities for a data source project are
ChangePermissions,
Delete,
Move,
Read,
Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Delete, Move, Read, and Write. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a data source, but the caller doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404006 | Lens not found | The specified lens doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to set permissions for. |
| user-id | The ID of the user to add permissions for. |
| group-id | The ID of the group to add permissions for. |
| capability-name |
The capability to assign. The only valid capability for a collection is Read. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a collection, but the caller doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | User not found | The user in the request body wasn't found. |
| 404 | 404012 | Group not found | The group in the request body wasn't found. |
| 404 | 404013 | Resource not found |
The capability to remove the permission for. The only valid capability name for a collection is Read. The only valid capability mode is Allow or Deny. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use:
These values are not case sensitive. |
| content-luid | The unique ID of the asset (database, table, column, published data source, flow, virtual connection, or virtual connection table). This is the same as the content ID. |
| type |
Type of data quality warning to apply to the asset. To specify the type, use one of the following values:
These values are case sensitive. |
| state |
(Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. For more information about data quality warnings, see "Set a Data Quality Warning" in the Server Help or Cloud Help. |
| message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | (Optional) Enables high visibility for the data quality warning when set to "true". Value can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400108 | Generic add data quality warning error | The data quality warning could not be added for some other reason than those specified in this table. |
| 400 | 400109 | Bad request | The request body is missing the data quality warning type. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to set permissions for. |
| datasource-id | The <datasource> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <datasource> element is included, the datasource-id value must match the data source ID in the URI. Any other attributes in the <datasource> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. For valid capabilities for a data source project are
PulseMetricDefine,
ChangePermissions,
Connect,
Delete,
ExportXml, ExtractRefresh,Read (view),
Write, and
SaveAs.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read, and Write. |
| 403 | 403004 | No permissions to set permissions. | A user attempted to add permissions to a data source, but the caller doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The specified data source doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| datasource-id | The ID of the data source to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a data source to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404011 | Data source not found | The data source ID in the request body doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| schedule-id | The ID of the schedule that you are associating with the data source. |
| datasource-id | The ID of the data source to add to the schedule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404004 | Resource not found | The data source ID in the request body is unknown. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 500 | 500000 | Internal Server Error | The schedule ID in the URI is unknown. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
database
|
The LUID of the database asset you want to add permissions to. |
user id
|
The LUID of the user to add permissions for. |
capability name
|
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a database are:
These values are case sensitive. |
capability mode
|
Use one of the following capabilities:
These values are case sensitive. |
group id
|
The LUID of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be added because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409050 | Database update error | An unknown error occurred and the database asset could not be updated. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset to set default permissions for. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a databases are the following:
These values are case sensitive. |
| capability-mode |
Use one of the following capabilities:
These values are case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 403 | 403114 | Permissions setting forbidden | Default permissions cannot be added because the database asset is locked. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Resource not found | The database LUID in the URI doesn't correspond to a database asset on the site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to set default permissions for. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. Valid capabilities for a workbook are
Valid capabilities for a data source are
Valid capabilities for a flow are
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read (view), and Write. |
| 400 | 400042 | Malformed permissions qualifier | The request body includes a <workbook> or <datasource> element. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project LUID specified in the URI does not match the project ID specified in the request body. (You do not have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | The domain to add to the pool. Root domains and subdomains are supported. |
| newPoolLuid | The UUID of the Bridge pool to add the domain to. Must be a user-created pool (not a reserved system pool). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name, invalid pool ID, domain already exists, or pool not found | Domain must conform to valid format; pool ID must be valid UUID and exist; domain must not already be in this pool. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503904 | Unexpected server error | An unexpected error occurred while adding the domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| datasource-id | The ID of the flow. |
| flow-id | The flow-id value for the flow you want to add permissions to. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has already been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a flow are:
For more information, see Permissions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a flow. Valid capabilities for a flow are ChangeHierarchy, ChangePermissions, Delete, Execute, ExportXml (Download), Read (view), and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the flow. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| schedule-id | The ID of the schedule that you are associating with the flow. The schedule that you are adding to must have Flow as the schedule type. |
| flow-id |
The ID of the flow to add to the schedule. This will include all the output steps in the flow and any output steps created in the future. |
| parameter-id |
The ID of the flow parameter. Use the List Metrics for Site - Retired in API 3.22 method to get the flow parameter ID. A parameter is a global placeholder value such as a number, text value, or boolean value that can replace a constant value in a flow. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| overrideValue |
The run-time value for the flow parameter. You must specify this if the parameter is required. Use the List Metrics for Site - Retired in API 3.22 method to see if the parameter is required and to get a list of allowed values if the parameter is expecting a value from an enumerated list. Note: Parameters are options and only relevant for flows that contains parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400148 | Invalid parameter override value | The run-time value provided for the flow parameter is invalid. |
| 400 | 400149 | Missing run-time parameter value. | The run-time value for a required flow parameters was not provided. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403098 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404043 | Flow parameter not found | The flow parameter information was not provided. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| flow-id | The ID of the flow to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a data source to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| group-set-id | The unique ID of the group set you want to add the group to. |
| group-id | The unique ID of the group you want to add to the group set. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the request body doesn't correspond to an existing group. |
| 409 | 409120 | Group set not found | The group set ID in the request body doesn't correspond to an existing group. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the metric. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| metric-id | The ID of the metric to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden favorites access | A non-administrator user called this method but doesn't have permission to add a metric to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404028 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the monitoring is being applied to. Use one of the following values:
These values are not case sensitive. |
| content-luid |
The LUID of the asset. This is the same as the content ID. The square brackets are required around the single LUID or comma-separated list of LUIDs. |
| type |
Type of monitoring quality warning. To specify the type, use one of the following values:
These values are not case sensitive. |
| status |
Monitoring status. Values can be "true" or "false". If set to "true", the data source is monitored for extract refresh failures or the flow is monitored for flow run failures). If an extract refresh or flow run failure occurs, the specified data quality warning is attached to the data source or flow (depending on type). The data quality warning is removed when the extract refresh or flow run is successful. For more information about monitoring quality warnings, see the monitoring quality warning section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| message | (Optional) A custom message for the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | High visibility status of the data quality warning. Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400136 | Generic quality warning trigger error | The monitoring quality warning could not be added or updated for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to set permissions for. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign permissions to. In Tableau Server 10.0, the valid
capabilities for a project are
ProjectLeader,
Read (view), and
Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability |
The capability specified in the request is not in the list of valid capability names for this method. The mode of the capability for ProjectLeader cannot be set to Deny. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project ID specified in the URI does not match the project ID specified in the request body. (You do not have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| project-id | The ID (not name) of the project to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Access to favorites denied | A non-administrator user called this method but doesn't have permission to add a project to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the allow rule to add projects to. |
| mode | Required. The operation mode; must be add for this method. |
| project | Required. One or more project IDs to add. Each entry requires an id. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing or empty project list, invalid project or rule UUID, or projects not found on the site. |
| 400 | 503910 | Invariant violation | Attempted to add projects to a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 409 | 503912 | Project already present | One or more of the projects is already associated with this routing rule. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503921 | Unexpected server error | An unexpected error occurred while adding projects. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| table-luid | The LUID of the table asset. |
| table-luid | The LUID for the table asset you want to add permissions to. |
| user-luid | The LUID of the user to add permissions for. |
| capability-name |
The capability to assign. If any capability has been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a database are:
These values are case sensitive. |
| capability-mode |
Use one of the following capabilities:
These values are case sensitive. |
| group-id | The LUID of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be added because support for explicit permissions is available for table assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the table asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409057 | Table update error | An unknown error occurred and the table asset could not be updated. |
| 409 | 409058 | Table update forbidden | A user without "write" permissions to the table asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| column-id | The unique ID of the column asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 |
Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409062 | Generic column tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to add tags to. |
| datasource-id | The data source to add the tag to. If the data source is already tagged with a tag that's included in the request body, those tags are ignored and the data source retains them. If the <tags> element is empty, no new tags are added to the data source. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400075 | Error adding tags | There was a problem adding tags to the specified data source. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404004 | Data source not found | The data source ID in URI doesn't correspond to an existing data source. |
| 404 | 404009 | Data source ID mismatch | The request body contains a data source ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 | Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 409 | 409048 | Generic database tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the column asset. |
| tag-value1 |
Keyword text you want to add to the asset. |
| tag-value2 |
Keyword text you want to add to the asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409055 | Generic table tag error | The tag or tags could not be added (or deleted) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the views to add tags to. |
| view-id | The view to add the tag to. If the view is already tagged with a tag that's included in the request body, those tags are ignored and the view retains them. If the <tags> element is empty, no new tags are added to the view. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400076 | Error adding tags | There was a problem adding tags to the specified view. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404011 | View not found | The view ID in URI doesn't correspond to an existing view. |
| 404 | 404009 | Workbook ID mismatch | The request body contains a view ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400049 | Error adding tags | There was a problem adding tags to the specified virtual connection. |
| 403 | 403004 | Adding tags forbidden | The user doesn't have permissions to add tags to the virtual connection. |
| 404 | 404000 | Site not found | The site ID in the URI is not for an existing site. |
| 404 | 404006 | Virtual connection not found | The virtual connection ID in URI doesn't correspond to an existing virtual connection. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to add tags to. |
| workbook-id | The workbook to add the tag to. If the workbook is already tagged with a tag that's included in the request body, those tags are ignored and the workbook retains them. If the <tags> element is empty, no new tags are added to the workbook. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400049 | Error adding tags | There was a problem adding tags to the specified workbook. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in URI doesn't correspond to an existing workbook. |
| 404 | 404009 | Workbook ID mismatch | The request body contains a workbook ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Write forbidden | A user called this method who does not have the required permissions. |
| 403 | 409028 | Adding recipient to data-driven alert forbidden | The user is not authorized to add the recipient to the data-driven alert. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to add the user to. |
| user-id |
The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site. Beginning in API 3.21, you can bulk add users to a group by specifying multiple user IDs. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group name in the request body doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409011 | User conflict | The specified user is already a member of the group. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that is associated with the user you want to add to the identity pool. |
| user-name |
The name of the user to add. |
| site-role |
Site role of the user. You can use one of the following values:
|
| user-id | Required. The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site. |
| authentication-configuration | The authentication configuration instance configured for the identity pool you want to add the user to. You can get the authentication configuration instance by calling List Authentication Configurations endpoint in Tableau REST OpenAPI. |
| idpool-uuid | The ID of the identity pool that you wan to add the user to. You can get the identity pool ID by calling the List Identity Pools endpoint in the Tableau REST OpenAPI. |
| identity-uuid | The identifier for the user you want to add. Identifiers are only used for identity matching purposes. For more information about identifiers, see Usernames and Identifiers in Tableau in the Tableau Server Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 429 | 429001 | User conflict | The specified user is already a member of the identity pool. |
| 429 | 429002 | Can't add user | There was a problem and the user couldn't be added to the identity pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to add users to. |
| user-name | The name of the user. If the server uses local authentication, this can be any name. If you are using
Active Directory authentication, or if you are using Tableau Cloud, there are specific requirements for the name.
Tableau Server Note: Active Directory specifies a user name using two attributes: Tableau Cloud |
| site-role | The site role to assign to the user. You can assign the following roles:
Creator,
Explorer,
ExplorerCanPublish,
SiteAdministratorExplorer,
SiteAdministratorCreator,
Unlicensed,
or
Viewer.
Note: You cannot use the REST API to set a user to be a server administrator (ServerAdministrator site role). |
| auth-setting | (Optional) The authentication method to assign the user.
Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
|
| identity-pool-name |
(Optional, Tableau Server only) When identity pools are configured, the name of the identity pool.
Starting in API 3.19, include the identity pool name when identity pools are configured and you need to add a user to an identity pool that uses the local identity store and OIDC authentication. For more information, see Identity Pools Methods. |
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| email-address | (Optional, Tableau Cloud only) The email address where the user can receive notifications. If no value is provided, Tableau Cloud uses the username value to send notifications to.
Starting in API 3.26 (July 2025), you can specify an email address that is different from the username. |
| language |
(Optional, Tableau Cloud only) Language (ISO 639-1) of the user. Starting in API 3.28 (March 2026), you can set the user's default language in Tableau Cloud to a supported language (ISO 639-1). You can assign one of the following values: de, en_GB, en, es, fr_CA, fr, it, nl, pt, sv, th, ja, zh, zh_TW, or ko. Important: The language set using this attribute overrides the default site-wide invitation email language that the site admin can set. |
| locale |
(Optional, Tableau Cloud only) Locale of the user. Starting in API 3.28 (March 2026), you can set the user's default locale to a supported locale. You can assign one of the following values: ar_SA, ar_AE, ar_BH, ar_DZ, ar_EG, ar_IQ, ar_JO, ar_KW, ar_LB, ar_LY, ar_MA, ar_OM, ar_QA, ar_SD, ar_SY, ar_TN, ar_YE, be_BY, bg_BG, ca_ES, cs_CZ, da_DK, de_DE, de_AT, de_CH, de_LU, el_GR, el_CY, en_US, en_AU, en_CA, en_GB, en_IE, en_IN, en_MT, en_NZ, en_PH, en_SG, en_ZA, es_ES, es_AR, es_BO, es_CL, es_CO, es_CR, es_DO, es_EC, es_GT, es_HN, es_MX, es_NI, es_PA, es_PE, es_PR, es_PY, es_SV, es_US, es_UY, es_VE, et_EE, fi_FI, fr_FR, fr_BE, fr_CH, fr_LU, fr_CA, ga_IE, he_IL, hi_IN, hr_HR, hu_HU, id_ID, is_IS, it_IT, it_CH, ja_JP, ko_KR, lt_LT, lv_LV, mk_MK, ms_MY, mt_MT, nl_NL, nl_BE, no_NO, pl_PL, pt_BR, pt_PT, ro_RO, ru_RU, sk_SK, sl_SI, sq_AL, sr_RS, sr_BA, sr_ME, sv_SE, th_TH, tr_TR, uk_UA, vi_VN, zh_CN, zh_HK, zh_SG, or zh_TW. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400003 | Bad request | The user authentication setting ServerDefault is not supported for you site. Try again using TableauIDWithMFA instead. |
| 400 | 400013 | Invalid site role |
The value of the siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 400 | 400217 | Unsupported language | The specified language is not valid or not supported. |
| 400 | 400218 | Unsupported locale | The specified locale is not valid or not supported. |
| 403 | 403193 | Forbidden | A non-administrator user called this method or doesn't have permissions to update language for the user. |
| 403 | 403194 | Forbidden | A non-administrator user called this method or doesn't have permissions to update locale for the user. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The server is configured to use Active Directory for authentication, and the username specified in the request body doesn't match an existing user in Active Directory. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409017 | User conflict | The specified user already exists on the site. |
| 409 | 409005 | Guest user conflict | The Tableau Server API doesn't allow adding a user with the guest role to a site. |
| 500 | 500109 | Internal language error | The language request could not be completed. |
| 500 | 500110 | Internal locale error | The locale request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook view. |
| view-id | The ID of the view to set permissions for. You can obtain this ID by calling Query Views for Site. |
| view-id | The view-id value must match the view ID in the URI. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name | The capability to assign. If any capability has already been
granted or denied for a specified user or group, that capability is ignored. For valid capabilities for a view are
AddComment, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write.
For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a view. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the view. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. |
| view-id | The ID (not name) of the view to add as a favorite. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label | The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to add a view to the specified user's favorites. This will always be the case when the user ID in the URI represents a different user than a non-administrator user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404011 | View not found | The view ID in the request body doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to set permissions for. |
| user-id | The LUID of the user to add permissions for. A request does not need to include both a user and a group grantee. |
| group-id | The LUID of the group to add permissions for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to assign. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| schedule-id | The LUID for the schedule that you are associating with the virtual connection. |
| transaction-level |
Optional. DATABASE or TABLE. Default is DATABASE.
|
| incremental-flag |
Optional, boolean. Default is false.
|
| virtualconnection-id | The LUID of the virtual connection to add to the schedule. |
| starting-item-id | The LUID of an extract table in the virtual connection. You may have more than one <startingItemId> element inside of a <startingItemIds> element. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400223 | Virtual connection table not found. | A LUID in startingItemIds is not an extract-eligible table on the virtual connection. |
| 400 | 400225 | Duplicate virtual connection table. | startingItemIds contains the same table LUID more than once. |
| 400 | 404049 | No virtual connection specified. | The request body must include a virtual connection in the extractRefresh element. |
| 400 | 409004 | Invalid parameter. | startingItemIds contains a value that is not a valid LUID. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision, or none of its tables are configured for extract refresh. |
| 403 | 403078 | Unable to create the task. |
One of the following applies:
|
| 404 | 404023 | Schedule not found. | Check the schedule LUID. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Request type must be PUT. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to add. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Optional. Element type sent to the TDS service. For this operation, use FieldDescription or TableDescription. Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Element name. |
| tdsElementList[].column | Not applicable to this method. The add converter has no Column branch, so a column payload on an add element is not copied and the element is reported as a per-element failure. |
| tdsElementList[].description | Required for this method. Description text for a FieldDescription or TableDescription element. When description is null, the field is left unset so the TDS service can report a per-element failure instead of HTTP 500. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 409, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 409 | Per-element already exists | One or more elements already exist. The body lists only the failed elements. | |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to set permissions for. |
| workbook-id | The <workbook> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <workbook> element is included, the workbook-id value must match the workbook ID in the URI. Any other attributes in the <workbook> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| capability-name |
The capability to assign. If any capability has already been granted or denied for a specified user or group, that capability is ignored. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, ExtractRefresh, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| user-id | The ID of the user to add the favorite for. |
| favorite-label | A label to assign to the favorite. This value is displayed when you search for favorites on the server. If the label is already in use for another workbook, an error is returned. |
| workbook-id | The ID (not name) of the workbook to add as a favorite. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400005 | Invalid label |
The favorite label is empty or consists of only white space characters. |
| 403 | 403004 | Access to Favorites forbidden |
A non-administrator user called this method but doesn't have permission to add a workbook to the specified user's favorites. This will always be the case when the user references in the URI identifies a user other than the user who is calling the method. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the request body doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| schedule-id | The ID of the schedule that you are associating with the workbook. |
| workbook-id | The ID of the workbook to add to the schedule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user called this method, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404006 | Resource not found | The workbook ID in the request body is unknown. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 500 | 500000 | Internal Server Error | The schedule ID in the URI is unknown. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to upload the file to. |
| upload-session-id | The ID of the upload session. You get this value when you start an upload session using Initiate File Upload. |
|
sequence-id |
(Optional) A long integer that you choose, indicative of the block's order in the complete sequence. After you append all the blocks and call the Publish Data Source, Publish Flow, or Publish Workbook method, the sequenceID is used to order the blocks, low sequenceID to high sequenceID, and the combined blocks are written as the file. Therefore, the sequenceID should be incremented for each block (though it doesn't have to incremented by 1). If you don't include sequenceID in the URI querystring, the uploaded blocks are processed in the order they arrive. Network conditions can cause blocks to arrive out of order, which could result in a corrupted file if sequenceID isn't used. Note: The sequenceID parameter is available starting in API version 3.27 (Tableau Cloud December 2025 / Server 2025.3). If you're using API version 3.26 (Tableau Cloud June 2025 / Server 2025.1) or earlier, the file is assembled using each block's arrival time. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400016 | File size too large | The attached file exceeds the configured maximum attachment size for a single append call. The maximum allowable size will be reported in the error response. |
| 400 | 400019 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400020 | Missing file data | There is no attachment in the request with the file data to be appended to the upload. |
| 403 | 403007 | Not a publisher | A non-administrator user attempted to initiate a file upload, but the caller doesn't have publishing rights on the site. |
| 403 | 403016 | Upload failure | The file could not be uploaded for some other reason than those specified earlier. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404015 | File upload not found | The file upload ID in the URI doesn't correspond to an existing file upload. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| datasource-id | The unique ID of the data source content. |
| virtualconnection-id | The unique ID of the virtual connection asset. |
| virtualconnectiontable-id | The unique ID of the virtual connection table asset. |
| type |
Use the following value to apply a data quality certification: CERTIFIED. |
| message | A custom message to accompany the data quality certification. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| state | (Optional) Controls whether the data quality certification displays. Value can be "true" or "false". If the state is not specified, the data quality certification is set to "true" and is visible by default. For more information about data quality certifications, see "Set a Data Quality Certification" in the Server Help or Cloud Help. |
| severity | (Optional) Enables high visibility for when the data quality certification is set to "true". Value can be "true" or "false". If the severity is not specified, the data quality certification is set to "false." This setting is available only through the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400108 | Generic data quality certification error | The data quality certification could not be added for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| flow-id | The unique ID of the flow content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| type |
The type of data quality warning to apply to the content or asset. To specify type, use one of the following values:
|
| message | (Optional) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| state | (Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. For more information about data quality warnings, see "Set a Data Quality Warning" in the Server Help or Cloud Help. |
| severity | (Optional) Enables high visibility for when the data quality warning is set to "true". Value can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400109 | Bad request | The content of the request body (content type, content id, or dataQualityWarning attributes) is missing, incomplete, or contains malformed XML. |
| 400 | 400108 | Generic add data quality warning error | The data quality warning could not be added for some other reason than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| tag-value1 |
Keyword text you want to add to item. |
| tag-value2 |
Keyword text you want to add to item. |
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| workbook-id | The unique ID of the workbook content. |
| flow-id | The unique ID of the flow content. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| flow-id | The unique ID of the flow content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| tag-value1 |
Keyword text you want to add to item. |
| tag-value2 |
Keyword text you want to add to item. |
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| datasource-id | The unique ID of the data source content. |
| workbook-id | The unique ID of the workbook content. |
| flow-id | The unique ID of the flow content. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Content not found | The content does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| state-enum | Required, enum. Either active or suspended. The state for the schedule(s). |
|
update-all-flag |
Optional, boolean. If |
|
schedule-id |
The LUID of the schedule. You can include multiple schedule-ids using additional Note: If the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Generic error | An unknown error occurred. The content of the request body may be missing or incomplete, or may contain malformed XML. |
| 403 | 403188 | Permissions error | User calling the method isn't a server administrator. |
| 403 | 403189 | Invalid LUID | One or more of the schedule LUIDs isn't a valid LUID. |
| 404 | 404023 | LUID not found | One or more of the schedule LUIDs isn't found. |
| 405 | 405000 | Availability error | This method only exists on Tableau Server. Tableau Cloud isn't supported. |
| 409 | 409004 | Parameter error | The state parameter is absent or not recognized; or the updateAll parameter was absent or false and no schedule LUIDs were provided. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain to block or unblock. |
| isBlocked | Set to true to block the domain; set to false to unblock (remove from blocked list). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name or missing isBlocked | Domain must conform to valid format; isBlocked parameter is required. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503905 | Unexpected server error | An unexpected error occurred while blocking the domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-run-id | The ID of the flow run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403135 | Flow run already complete | The flow run is already complete so it could not be canceled. |
| 403 | 403137 | User does not have permissions to cancel flow run | In addition to server administrators and site administrators, users can cancel a flow run if they initiated the flow run or created the flow run scheduled task and have "Run Flow Now" permissions for the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404036 | Flow run not found | The flow run ID in the URI doesn't correspond to an existing flow run. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| job-id | The ID of the job to cancel. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403032 | Update forbidden | A non-administrator user tried to cancel a job. |
| 403 | 403091 | Can not cancel job, because it's already complete. | The job ID provided is for a job that has already succeeded or failed. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| site-id | The ID of the site in which you want to create the webhook. |
| webhook-name | This is required. A name for the webhook. |
| api-event-name | webhook-source-api-event-name |
You must specify one of these attribute values. The name of the Tableau event that triggers your webhook. The event name must be one of the supported events listed in the Trigger Events table. The event and webhook-source use different name values for the same event. Recommended: Use the event attribute of the webhook to specify the triggering API event for the webhook. The webhook-source element serves the same purpose but is being deprecated in future versions of Tableau webhooks. If both events and webhook-source are specified, their events specified must match. If either are specified, with the other being NULL, then the specified event becomes the webhook trigger, whether the element containing the event name is event or webhook-source. |
| url | Required. The destination URL for the webhook. The webhook destination URL must be https and have a valid certificate. |
| webhook-enabled-flag | (Optional) Boolean. If true (default), the newly created webhook is enabled. If false then the webhook will be disabled. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the datasource. |
| encryption-flag | If true, then Tableau will attempt to encrypt the created extracts. If false, or no encrypt parameter is appended to the URI, then the extract won't be encrypted, unless encryption is enforced by site or workbook configuration. An error will be returned when encrypt equals true and encryption is disabled in the site or workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| name | Required. Display name for the pool, 1–80 characters. Must be unique within the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 / 400929 | Missing, empty, invalid, or duplicate pool name | Pool name required, 1–80 characters; must be unique on the site. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503900 | Unexpected server error | An unexpected error occurred while creating the pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
extractRefresh type
|
The type of extract refresh being scheduled. Valid values include:
|
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
workbook id or datasource id or virtualConnection id |
The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. |
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400225 | Duplicate starting item | startingItemIds contains a duplicate table LUID. |
| 409 | 409090 | Extract operation not allowed | The virtual connection has no extract-configured tables; all tables are live. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 404 | 404026 | Task not found | The task for the extract refresh could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
flow.id | (Required)The LUID of the flow the task is being scheduled for. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| name | Name of the connected app. |
| enabled | (Optional) Controls whether the connected app is enabled or not. Value can be "true" or "false". If the state is not specified, the connected app is set to "false" and not enabled by default. |
| project_id |
(Optional, embedding workflows only) The IDs of the projects that the connected app's access level is scoped to. To get a project's project ID, see Query Projects. You can specify one project, multiple projects, all projects on a site.
Note: The stand-alone projectId attribute will be retired in a future release so we recommend using projectIds attribute instead. |
| domainSafelist |
(Optional, embedding workflows only) A list of domains the connected app is allowed to be hosted. Specify one or more URLs, separated by spaces, using a format described in Domain allowlist rules in the Tableau Server Help or Domain allowlist rules in the Tableau Cloud Help. Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. For example: |
| unrestrictedEmbedding | (Optional, embedding workflows only) Controls whether the connected app can be hosted on all domains. If "true" value is specified, the connected app can be hosted on all domains. If "false" value is specified, the connected app can only be hosted on the domains specified in the <domainSafelist> attribute. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 400 | 400144 | Secret limit exceeded |
The connected app has already reached its two secret maximum. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
dataAlertCreateAlert alertCondition
|
(Required) Enumeration: The condition that triggers the DDA. Used in conjunction with the threshold to determine when to trigger an alert. For example, an alert can be triggered if on the condition that data is above or equal to a threshold of 1000 orders. The value can be:
|
dataAlertCreateAlert alertThreshold
|
(Required) Int: The data value where an alert should be triggered when that value drops below or rises above the alert threshold value. |
dataAlertCreateAlert subject
|
(Required) String: The name of the data driven alert. |
dataAlertCreateAlert frequency
|
(Required) Enumeration: The time period between attempts by Tableau to assess whether the alert threshold has been crossed. The value can be one of:
|
dataAlertCreateAlert visibility
|
(Required) Enumeration: Determines whether the alert can be seen by only its creator (private), or by any user with permissions to the worksheet where the alert resides (public) . The value can be one of:
|
dataAlertCreateAlert device
|
(Optional) Enumeration: The type of device the alert is formatted for.
If no
|
dataAlertCreateAlert worksheetName
|
(Required) String: The name of the worksheet that the DDA will be created on. For dashboards, this is the name of the underlying sheet that contains the data whose value can trigger the alert, not the name of the dashboard that presents that sheet. For custom views, the name of the original view that was used to form the custom view. |
dataAlertCreateAlert viewId
OR
|
(Required) LUID: The LUID of either the viewId or customViewId that contains the data that can trigger an alert. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 403165 | DDA creation failed | A data driven alert could not be created because there is a missing value in the request body. |
| 401 | 401002 | Unauthorized Access | The user does not have permissions to create a data driven alert. Causes may include: authentication token provided in the request header was invalid or has expired; the user does not have administrator, creator, or explorer permissions; the user does not have permissions to view the sheet. |
| 403 | 403164 | DDA not enabled | Data driven alerts are not enabled for the site, or the user visibility site setting is configured as limited. |
| 404 | 404011 | View not found | The view specified in the request could not be found. |
| 404 | 409004 | Request is malformed | A data driven alert could not be created because there is an unexpected value in the request body. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| workbook-id | The LUID of the workbook. |
| encryption-flag | If true, then Tableau will attempt to encrypt the created extracts. If false, or no encrypt parameter is appended to the URI, then the extract won't be encrypted, unless encryption is enforced by site or workbook configuration. An error will be returned when encrypt equals true and encryption is disabled in the site or workbook. |
| datasource-id | LUID of the embedded data source to be extracted. |
| extract-all-datasources-flag | Boolean. If true, then all data sources in the workbook will have an extract created for them. If false, then a data source must be supplied in the request. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the group in. |
| asJob-value |
A Boolean value that is used if you are importing from Active Directory. If you set this to false (the default), the import process runs as a synchronous process.
If the Active Directory group contains many
users, the process might time out before it finishes.
If you set this to true, the process runs asynchronously. In that case, Tableau Server starts a job to perform the import and returns the job ID in the Location header. You can check the status of the import job by calling Query Job. Note: This parameter has no effect if the server is configured to use local authentication. This attribute is available for Tableau Server only. |
| new-tableau-server-group-name | The name for the new group. |
| active-directory-group-name |
The name of the Active Directory group to import. This attribute is available for Tableau Server only. |
| active-directory-domain-name |
The domain of the Active Directory group to import. This attribute is available for Tableau Server only. |
| minimum-site-role |
Required if an import element or grantLicenseMode attribute are present in the request. For Tableau Server, the site role assigned to users who are imported from Active Directory or granted a license automatically using the grant license on-sync or on-login mode. If the requested user name matches an existing user in the group, the user either retains their existing role or are granted the one specified in the request, based on the role that enables the most capabilities. This is true whether the group the user belongs to is imported from Active Directory (Tableau Server only) or local. Site roles that can be assigned, listed from the one enabling the least capabilities to the most, are as follows.
Note: You cannot use the REST API to set a user to be a Tableau Server administrator (ServerAdministrator site role). |
| license-mode |
The mode for automatically applying licenses for group members. When the mode is onLogin, a license is granted for each group member when they log in to a site. For local groups, the mode can be either onLogin or unset. If the attribute is omitted, the default mode is unset, which results in no licenses being granted automatically to group members. For groups that import an Active Directory domain, the mode can be either onSync or onLogin. The minimum role granted to users through grantLicenseMode is specified in the siteRole attribute. If that role has less permissions than an existing role assigned to the user, then the user's permissions remain unchanged. |
| on-demand-access |
Optional. A boolean value that is used to enable on-demand access for embedded Tableau content when the Tableau Cloud site is licensed with Embedded Analytics usage-based model or capacity-based model with Cloud+ or Tableau+ edition. Set to true to enable the capability for the group or set to false to disable the capability for the group. For more information about on-demand access, see On-demand access for users in the Tableau Embedding API v3 Help. This attribute is available for Tableau Cloud only starting from API version 3.21 (October 2023). |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Creator, Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 400 | 400019 | Malformed import element | When the <import> element is present in the request body, the following attributes must be specified: source with the value ActiveDirectory; domainName; and siteRole If any of these is missing, the element is malformed. |
| 400 | 400984 | Not licensed | On-demand access can't be enabled if your site is not licensed with the usage-based model or capacity-based usage model with Tableau+ or Cloud+. |
| 403 | 403011 | Active Directory is not configured | The <import> element is present, but Tableau Server is configured for local authentication. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404016 | Domain not found | The request body includes an <import> element, but the specified domain name doesn't exist in Active Directory. |
| 404 | 404017 | Active Directory group not found | The request body includes an <import> element, but no group exists in Active Directory that matches the specified group name. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409009 | Group name conflict | The group name in the request already belongs to the specified site. For the purpose of uniqueness checks, group names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the group in. |
name
(Required) Name of the new group set.
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be SiteAdministratorCreator or SiteAdministratorExplorer. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t POST. |
| 409 | 409121 | Group set name conflict | The group set name in the request already belongs to another group set. For the purpose of uniqueness checks, group set names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-category-name |
The label category name. Required. Must be 1-128 characters long. (In Tableau Server 2023.3 and earlier, must be 1-24 characters long.) |
| label-category-description |
The label category description. Required. Must be 1-500 characters in length. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400189 | Generic create label categories error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | You must be an administrator to create, update, or delete label values. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
idpConfigurationName
|
(Required) The name of the configuration. Starting in API 3.24, you can create and enable multiple authentication configurations. For more information, see Authentication in the Tableau Cloud Help. |
enabled
|
(Required) Controls whether the configuration is enabled or not. Value can be "true" or "false". For example "true". |
clientId
|
(Required) The client ID from your IdP. For example, "0oa111usf1gpUkVUt0h1". |
clientSecret
|
(Required) The client secret from your IdP. |
authorizationEndpoint
|
(Required) Use the authorization endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (authorization_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/authorize". |
tokenEndpoint
|
(Required) Use the token endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the token endpoint (token_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/token". |
userinfoEndpoint
|
(Required) Use the user information endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (userinfo_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/userinfo". |
jwksUri
|
(Required) Use the JWK set URI from your IdP. To find the value, enter the configuration URL in a browser and obtain the JWK set URI endpoint (jwks_uri) from the details that are returned. For example, "https://myidp.com/oauth2/v1/keys". |
endSessionEndpoint
|
(Optional) If single logout (SLO) is enabled for the site, which is done through Tableau Cloud site UI, you can specify the configuration URL or the end session endpoint from your IdP. For example, "https://myidp.com/oauth2/v1/logout". |
allowEmbeddedAuthentication
|
(Optional) Controls how users authenticate when accessing embedded views. Value can be "true" or "false". Default value is "false", which authenticates users in a separate pop-up window. When set to "true", users authenticate using an inline frame (IFrame), which is less secure. |
customScope
|
(Optional) Specifies a custom scope user-related value that you can use to query the IdP. For example, "openid, email, profile". |
prompt
|
(Optional) Specifies whether the user is prompted for re-authentication and consent. For example, "login, consent". |
clientAuthentication
|
(Optional) Token endpoint authentication method. Value can be "client_secret_basic" or "client_secret_post". Default value is "client_secret_basic". |
essentialAcrValues
|
(Optional) List of essential Authentication Context Reference Class values used for authentication. For example, "phr". |
voluntaryAcrValues
|
(Optional) List of voluntary Authentication Context Reference Class values used for authentication. |
emailMapping
|
(Optional) Claim for retrieving email from the OIDC token. Default value is "email". |
firstNameMapping
|
(Optional) Claim for retrieving first name from the OIDC token. Default value is "given_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
lastNameMapping
|
(Optional) Claim for retrieving last name from the OIDC token. Default value is "family_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
fullNameMapping
|
(Optional) Claim for retrieving name from the OIDC token. Default value is "name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "true". |
useFullName
|
(Optional) Controls what is used as the display name. Value can be "true" or "false". Default value is "false", which uses first name (firstNameMapping attribute) and last name (lastNameMapping attribute) as the user display name. When set to "true", full name (fullNameMapping attribute) is used as the user display name. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-value-name |
The label value name. Required. If you specify an existing label value name, this method will update the label value. If you specify a label value name that's different than existing label value names, this method will create the label value. Required. Must be 1-128 characters long. (In Tableau Server 2023.3 and earlier, must be 1-24 characters long.) |
| label-value-category |
The label value category. Required. If you're updating an existing label value, this must match the existing category for that label value. |
| label-value-description |
The label value description. Required, but does not need to be different than the existing description. Must be 1-500 characters in length. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 401 | 4000173 | Generic create label values error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | You must be a site or server administrator to create or update label values. |
| 403 | 403157 | Bad request | You may see this error if you try to create or update a label in the certification category. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the project in. |
| publish-value | (Optional) A Boolean value that specifies whether to publish the sample workbooks provided by Tableau to the project. When the publish-value is not specified in the request, or the publishSamples parameter is missing, no samples will be published. To publish the sample workbooks, set publishSamples parameter to true. This option is equivalent to the tabcmd command-line utility option, publishsamples. For more information, see tabcmd. |
project name
|
(Required) The new name for the project. |
project description
|
(Optional) The new description for the project. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To create a project as a stand alone or at the top of a project hierarchy, omit the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
project contentPermissions
|
(Optional) This value controls user permissions in a project, however, if the project is nested within a project with more restrictive policies, it will inherit those permissions and these settings will have no effect. The functional permissions of a project, including those it inherits, are available in value of contentPermission in the response body from a request to create, update, or query a project.
The default is ManagedByOwner. For more information, see Lock Content Permissions. |
owner id
|
The LUID of the user that owns the project. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Bad request | The request cannot set content permissions to LockedToProjectWithoutNested for a REST API version lower than 3.8. |
| 403 | 403008 | Insufficient storage on site | The samples could not be published because there is not enough storage space remaining on the server to accommodate the samples. |
| 404 | 404000 | Site not found |
The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409006 | Project name conflict | The project name in the request already belongs to the specified site. For the purpose of uniqueness checks, project names are case-insensitive. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| domain | Required. The domain the rule matches, for example example.com. Both root domains and subdomains are supported. |
| isBlocked | Required. true creates a block rule; false creates an allow rule. The request is rejected if this attribute is omitted. |
| poolId | Required for allow rules (isBlocked=false). The UUID of the target Bridge pool. Must be omitted for block rules. |
| project | Optional. One or more project IDs that scope an allow rule to specific projects. Each entry requires an id. Must be omitted for block rules. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing routingRule, missing isBlocked, blank or invalid domain, blank or invalid poolId, poolId missing for an allow rule, invalid UUID, or invalid, empty, or not-found projects. |
| 400 | 503910 | Invariant violation | poolId or project supplied for a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 409 | 503911 | Duplicate routing rule | A routing rule already exists for this domain and project scope. |
| 409 | 503931 | Domain already blocked | The domain is already blocked by an existing block rule. |
| 409 | 503932 | Domain-only rule exists | A domain-only (unscoped) allow rule already exists for this domain; at most one is allowed. |
| 409 | 503933 | Blocked domain has allow rules | The domain being blocked still has allow rules; remove them before blocking the domain. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503916 | Unexpected server error | An unexpected error occurred while creating the rule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| name | (Required) Name of the SCIM configuration. |
| idpConfigurationId |
(Required) Authentication configuration to associate with the SCIM configuration. Starting in API 3.26, you can have multiple SCIM configurations. Include the idpConfigurationId to identify which SAML authentication configuration to associate with this SCIM configuration. To get the idpConfigurationId, see List Authentication Configurations for Site. Starting in API 3.28, you can associate OIDC or Google authentication with SCIM. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, contains malformed XML, or the idpConfigurationId is not valid. |
| 400 | 400008 | Bad Request | The content of the request body is missing the SCIM configuration name, contains unsupported attributes, or the idpConfigurationId is missing. |
| 400 | 400802 | Bad Request | The maximum number of 20 SCIM configurations for the site has been reached. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400802 | Bad Request | The SCIM configuration is already associated with a SCIM token. To generate a new token for the SCIM configuration, first delete the associated SCIM token and try again. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | A SCIM token can only be generated by the user who created the SCIM configuration. |
| 404 | 404057 | Resource Not Found | The SCIM configuration ID is not valid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-name | The name to give to the schedule. This name identifies the schedule in the server environment when users select a schedule and manage schedule information. |
| schedule-priority | An integer value between 1 and 100 that determines the default priority of the schedule if multiple tasks are pending in the queue. Lower numbers have higher priority. |
| schedule-type | Flow to create a flow schedule, Extract to create an extract refresh schedule,
Subscription to create a subscription schedule, or DataAcceleration to create a
data acceleration schedule.
Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| schedule-execution-order | Parallel to allow jobs associated with this schedule to run at the same time, or Serial to require the jobs to run one after the other. |
| schedule-frequency |
This represents the granularity of the schedule.
The value you provide for schedule-frequency determines whether you must include an end-time value, and what is required in the contents of the <intervals> element. |
| start-time | The time of day on which scheduled jobs should run (or if the frequency is hourly, on which they should start being run), in the format HH:MM:SS (for example, 18:30:00). This value is required for all schedule frequencies. The entered time will be applied based on the time zone of your server. |
| end-time | If the schedule frequency is Hourly, the time of day on which scheduled jobs should stop being run, in the format HH:MM:SS (for example, 23:30:00). Hourly jobs will occur at the specified intervals between the start time and the end time. For other schedule frequencies, this value is not required; if the attribute is included, it is ignored. The entered time will be applied based on the time zone of your server. |
| interval-expression | A value that specifies the interval between jobs associated with the schedule. The value you specify here depends on the value specified in schedule-frequency.
The interval expression is only one of the following:
You can specify an interval in hours or minutes, but not both.
If the schedule frequency is
The interval expression is You can specify multiple <interval> elements to indicate that scheduled jobs should run on multiple days during the week.
The interval expression is Note: If you want to specify multiple days in the month, you can do this using the web interface. You cannot create or update such a monthly schedule using REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400064 | Error creating schedule | An unspecified error occurred while trying to create the schedule. |
| 400 | 409004 | Bad request | The content of the request body is missing or incomplete. For hourly, daily, or monthly schedules, this often means that the content of the <intervals> element does not match the expected format. The <detail> element of the error provides detail about the expected format. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409021 | Schedule name conflict | The schedule name in the request already belongs to an existing schedule. |
| site-name | The name of the site. |
| content-url | The subdomain name of the site's URL. This value can contain only characters that are upper or lower case alphabetic characters, numbers, hyphens (-), or underscores (_). If you provide unsupported special characters, Tableau creates the site content URL by omitting those characters from the string. For example, if you provide the site URL as "test.site", Tableau converts it to "testsite" and returns this new URL in the response. |
| admin-mode |
(Optional) Specify ContentAndUsers to allow site administrators to use the server
interface and Note: You can’t set adminMode to ContentOnly and also set userQuota. The default value is ContentAndUsers. |
| storage-quota | (Optional) The maximum amount of space for the new site, in megabytes. If you set a quota and the site exceeds it, publishers will be prevented from uploading new content until the site is under the limit again. |
| disable-subscriptions |
(Optional) Specify true to prevent users from being able to subscribe to workbooks on the specified site. The default is false. |
| editing-flows-enabled-flag |
(Optional) Specify true to enable and false to disable editing flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means editing flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| scheduling-flows-enabled-flag |
(Optional) Specify true to enable and false to disable scheduling flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true which means scheduling flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| flows-enabled-flag |
The flowsEnabled attribute is deprecated as of API version 3.10. |
| allow-subscription-attachments-flag |
(Optional) If true, and subscription to attachments is enabled on the server, then users can create subscriptions that send an email with images of a workbook or view in a PDF attachment. The default value is true. If subscription to attachments is disabled in the server settings, then making this value true will have no effect. Default is true. |
| guest-access-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for guests, users without specific site access permission, to access the site. Default is false. |
| cache-warmup-enabled-flag |
This attribute is removed in API 3.19 and later (Tableau Cloud September 2021). For current methods to improve Tableau performance see, View Acceleration. (Optional) Set this value to true to enable cache warm up to improve workbook load time. Set the value to false to disable cache warmup. Default is true. |
| commenting-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for user comments on views in the site. Default is true. |
| revision-history-enabled | (Optional) true if the site maintains revisions for changes to workbooks and data sources; otherwise, false. The default is false. |
| num-revision-limit | (Optional) An integer between 2 and 10000 to indicate a limited number of revisions for content. Setting this value to -1 removes any value that was set previously, and effectively removes any limit to the number of revisions that are maintained. |
| subscribe-others-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for view owners to subscribe other users to a view. Default is true. |
| extractEncryptionMode |
(Optional) Specify enforced, enabled, or disabled. Default is disabled. For more information, see Extract and Encryption Methods. |
| requestAccessEnabled | (Optional) Specify true to allow users send access request emails to content or project owners. Specify false if you don’t want users to be able to request access. The default is false. |
| runNowEnabled |
(Optional) Specify true to allow users to run flows, extract refreshes, and schedules manually. Specify false if you don’t want users to be able to run flows, extract refreshes, and subscriptions manually. The default is true. If this attribute is set to false, the following methods will fail and will return an error message. |
|
Licensing attributes
|
|
|
User quota all-license-limit-total |
(Optional) The maximum total number of users with Creator, Explorer, or Viewer licenses currently allowed on a site. On-premises server administrators can set An administrator can revert the license limit to number of activated licenses on the site, or shift control of license
limits to tiered capacities values, by omitting |
|
Tiered capacity attributes creator-license-limit
|
(Optional) The maximum number of licenses for users with the Creator, Explorer, or Viewer role, respectively, allowed on a site. On-premises server administrators can set tiered capacity attributes with the following rules: the number can't exceed the number of licenses of a given type that are activated for the site; a value must be supplied for every tiered capacity license type every time any one or more of them is set. A value of -1 removes the administrator-applied limit for a license type, and reverts the limit to the number of activated licenses configured for the role. Setting the value of a tiered capacity to -1 will not automatically increase the limit if more licenses are purchased and activated for the role in the future. To use role-specific license limits, the |
|
data-alerts-enabled-flag |
(Optional, boolean) If true, data alerts are enabled on the site. Default value is true. |
|
commenting-mentions-enabled-flag |
(Optional, boolean) If true, mentions for commenting are enabled. Default value is true. |
|
catalog-obfuscation-enabled-flag |
(Optional, boolean) If true, catalog obfuscation is enabled on the site. Default value is true. |
|
flow-auto-save-enabled-flag |
(Optional, boolean) If true, flow auto save is enabled on the site.
Default value is true. |
|
run-now-enabled-flag |
(Optional, boolean) If true, run now for schedules is enabled which allows non-administrators to run schedules manually. Default value is true. |
|
metrics-content-type-enabled-flag |
(Optional, boolean) If true, the metrics content type is enabled on the server. Default value is true. |
|
notify-site-admins-on-throttle-flag |
(Optional, boolean) If true, site admins will be notified if their background jobs are being throttled. Default value is false. |
|
authoring-enabled-flag |
(Optional, boolean) If true, web authoring is enabled. Default value is true. |
|
custom-subscription-email-enabled-flag |
(Optional, boolean) If true, sending custom subscription email is enabled. If set to false after being set true, the current custom subscription email is voided. Default value is false. |
|
custom-subscription-email |
A valid custom email that will be sent if customSubscriptionEmailEnabled is set to true. Default value is false. |
|
custom-subscription-footer-enabled-flag |
(Optional, boolean) If true, a custom footer will be included on subscription and data alert emails. If set to false after being set true, the current custom subscription footer is voided. Default value is false. |
|
custom-subscription-footer |
A custom subscription footer that will be added to subscription and data alerts if customSubscriptionFooterEnabled is set to true. Default value is false. |
|
ask-data-mode |
The mode of the ask data feature on the site. Can be set to one of two values:
DisabledByDefault. For more information, see Disable or Enable Ask Data for a Site. |
|
named-sharing-enabled-flag |
(Optional, boolean) If true, named sharing is enabled. Default value is true. |
|
cataloging-enabled-flag |
(Optional, boolean) If true, data catalog is enabled for the site. Default value is true. |
|
derived-permissions-enabled-flag |
(Optional, boolean) If true, derived permissions are enabled for the site. Default value is false. |
|
user-visibility-mode |
(Optional, string) When the value is FULL users can see the user of other site users. If the value is LIMITED User information on the site is not visible to other users. Default value is FULL. For more information, see User Visibility. |
| use-default-time-zone | Optional, boolean) Set this to true, if you want the time-zone attribute use the Server time Zone at run time. This attribute is set to the official IANA name. If this is set to false, the time-zone value must be specified. |
| time-zone | (Optional, string) Use this attribute to specify a time zone other than the Server time zone at run time. Only canonical names in the official IANA database are supported. You can find the list of the canonical time zone names on Wikipedia. |
| autoSuspendRefreshEnabled | (Optional) Tableau can automatically suspend extract refresh tasks for inactive workbooks to save resources. Specify true to enable or false to disable. Default is true. |
| autoSuspendRefreshInactivityWindow | (Optional) An integer from 7 through 100 to indicate the number of days to wait before automatically suspending extract refresh tasks for inactive workbooks. The default is 30. |
| explainDataEnabled |
(Optional, boolean) Set this attribute to
|
| dqwSubscriptionsEnabled |
(Optional, boolean) Set this attribute to
|
| groupAssertionsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using session info. Set to false if you do not want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for the entire site, including the following settings:
|
| groupAssertionsSAMLEnabled | (Optional, boolean) Set to true to allow assertions into group membership using SAML session info. Set to false if you don’t want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for SAML sessions. |
| groupAssertionsOIDCEnabled |
(Optional, boolean) Set to Note: This parameter only applies to Tableau Cloud. |
| groupAssertionsConnectedAppsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using Connected App JWT tokens. Set to false if you don’t want users to be able to be asserted in to groups via connected apps. The default is false. If this attribute is set to false, it will disable group assertions for JWT connected app connections. |
| groupSetsEnabled | (Optional, boolean) Set to true to allow groups sets. Set to false if you don’t want group sets support for the site. The default is false. If this attribute is set to false, it will disable group sets for the site. |
| recycleBinEnabled | (Optional, boolean) Set to true to enable the Recycle Bin. Set to false to disable it. The default is true. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing, incomplete, or contains malformed XML. |
| 400 | 400000 | Invalid storage quota | The storage quota value wasn’t a positive number. |
| 400 | 400000 | Invalid user quota | The user quota value wasn’t a positive number. |
| 400 | 400013 | Invalid administrator mode | The user provided an administrator mode that isn’t ContentOnly or ContentAndUsers. Note: An empty string or all whitespace is invalid. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409001 | Site name conflict | The site name in the request already belongs to an existing site. |
| 409 | 409002 | Site URL conflict | The content URI in the request already belongs to an existing site. |
| 409 | 409004 | User quota and tiered capacity conflict | The request cannot set both tiered capacity attributes and userQuota. One or the other must be null. |
| 409 | 409004 | License limit exceeded | The request cannot set tiered capacity attributes or userQuota values that are larger than the number of active licenses configured for the site. |
| 409 | 409004 | Administrator mode or user quota conflict | The request cannot set adminMode to ContentOnly and also specify a userQuota value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the subscription in. |
| subscription-subject | A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. A description is required. |
| attach-image-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| attach-pdf-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| page-orientation |
(Optional) The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-size-option |
(Optional) The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
| message | The text body of the subscription email message. |
| suspended-flag | (Optional) If true, the subscription is created in a disabled state, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. The default value is false. |
| content-type | Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
| send-view-if-empty-flag | (Optional) Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
| custom-view-id | (Optional) Applies to views only. The LUID of a custom view to use instead of the default view. |
| content-id | The ID of the workbook or view to subscribe to. |
| schedule-id | The ID of a schedule to associate the subscription with. To determine what schedules are available,
call List Server Schedules. The type of the schedule must be Subscription.
|
| user-id | The ID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400067 | Invalid subscription subject | The subscription subject is null or empty. |
| 400 | 400068 | Invalid subscription target | The content type specified in the request body is not a workbook or view. |
| 400 | 400069 | Invalid subscription type | The subscription type is not Workbook or View. |
| 400 | 400069 | Invalid schedule type | The schedule type is not Subscription. |
| 403 | 403060 | No permissions to create subscription. | The user does not have permission to create a subscription for the specified content. |
| 403 | 403063 | No user permissions for content. | The user specified in the request body does not have Read (view) permissions for the specified content. |
| 403 | 403064 | No user email address. | The user does not have an email address. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 400 | 404006 | Workbook not found | The workbook ID in the request body doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the request body doesn't correspond to an existing view. |
| 404 | 404023 | Schedule not found | The schedule ID in the request body doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
subscription subject
|
(Required to create subscription) string: A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. |
subscription attachImage
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription attachPdf
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription pageOrientation
|
enumeration: The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
subscription pageSizeOption
|
enumeration: The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
subscription message
|
string: The text body of the subscription email message. |
subscription suspended
|
boolean: If true, the subscription is created in a disabled state, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. The default value is false. |
content id
|
(Required to create subscription) LUID: The LUID of the workbook or view the user should be subscribed to. |
content type
|
(Required to create subscription) enumeration: Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
content sendIfViewEmpty
|
boolean: Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
content customViewID
|
string: Applies to views only. The LUID of a custom view to use instead of the default view. |
userId
|
(Required to create subscription) LUID: The LUID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request.. |
| 404 | 404002 | User not found | The user specified in the request could not be found. |
| 404 | 404025 | Subscription not found | The task for the subscription could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| mcp-setting-key | (Required) String. Specifies the setting to assign a value to. |
|
mcp-setting-value |
(Required) String. Provides the value for the associated key. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid parameter | The mcpSiteSettings entity is empty; the settings key is null, missing, or invalid; or site LUID format is invalid. |
| 401 | 401002 | Invalid authentication credentials | Missing or invalid authentication credentials. |
| 401 | 403001 | Missing authentication token | Authentication token not provided. |
| 403 | 403000 | Insufficient permissions | User isn't an administrator. |
| 403 | 403010 | Site mismatch | Authenticated user's site does not match the site LUID in the request. |
| 403 | 403157 | Feature disabled | Feature not enabled. |
| 403 | N/A | Insufficient OAuth scope | The user lacks the required OAuth scope. |
| 404 | 404000 | Site not found | A site with the specified LUID does not exist. |
| 500 | 500000 | Internal server error | Unknown server error. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| datasource-luid | The LUID of the data source. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsWorkCopy | Required. Work copy identifiers. |
| tdsWorkCopy.workCopyLuid | LUID of the new work copy. |
| tdsWorkCopy.datasourceLuid | Optional. LUID of the published data source. Not returned by this method; returned by Publish Work Copy. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid data source LUID | The data source LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | Data source not found or not visible to the caller | The data source LUID in the URI doesn't correspond to an existing data source in the site, or the caller doesn't have permission to access it. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 405 | 405003 | Composable data source | Creating a work copy is not supported for composable data sources (data sources that have one or more immediate parent published data sources). |
| 405 | 405004 | Semantic Data Model (SDM) data source | Creating a work copy is not supported for Semantic Data Model (SDM) data sources. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 429 | Work copy limit exceeded | The maximum number of open work copies is reached. Publish an existing work copy before creating a new one. | |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| site-id | The ID of the site that contains the workbook to be deleted. |
| webhook-id | The ID of the webhook. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| as-job-value | (Optional) If true, runs as an asynchronous job. Returns job information instead of executing synchronously. Default is false. Check the status of the job by calling Query Job. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Unauthorized | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | Required. The LUID of the site that contains the view. |
| lens-luid | Required. The LUID of the lens to delete permissions for. |
| group-luid | Optional (one user or group must be specified). The LUID of the group to remove the permission for. |
| user-luid | Optional. The LUID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The valid capabilities for a view are ChangePermissions, Delete, Move, Read, Write. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for an ask data lense. Valid capabilities for a lens are ChangePermissions, Delete, Move, Read, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions on the view. |
| 403 | 403039 | Project permissions locked | The parent project that contains the specified ask data lens has its permissions locked. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn’t correspond to an existing user. |
| 404 | 404046 | Lens not found | The ask data lens LUID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| 404 | 404014 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503003 | Unexpected server error | An unexpected error occurred while deleting the Bridge client. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| pool-id | The unique identifier (UUID) of the pool to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid pool ID or pool not found | Pool ID must be valid UUID and exist on the site. |
| 400 | 503902 | System pool | Cannot delete reserved system pools. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503902 | Unexpected server error | An unexpected error occurred while deleting the pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The only valid capability for a collection is Read. The only valid capability mode is Allow or Deny. For more information, see Permissions. |
| capability-mode | Allow to delete an allow permission, or Deny to delete a deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a collection. The only valid capability for a collection is Read. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the collection. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| 404 | 404002 | Resource not found | The user ID in the URI wasn't found. |
| 404 | 404012 | Resource not found | The group ID in the URI wasn't found. |
| 404 | 404013 | Resource not found | The capability in the URI isn't recognized. |
| 404 | 404014 | Resource not found | The user or group permission wasn't found on the collection. Check the permissions on the collection that you're trying to remove and try again. |
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| secret-id | The unique ID of the connected app secret. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| dataAcceleration-id | The ID of the task to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 409087 | Permission denied | The user isn't authorized to view data acceleration tasks. |
| 403 | 409087 | Permission denied | The user isn't authorized to access the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404026 | Task not found | The task id in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| certification-luid | The unique ID of the data quality certification. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400105 | Generic data quality certification error | The data quality certification could not be deleted for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| indicator-id | The unique ID of the data quality certification. |
| content |
The type of content or asset the data quality warning is attached to. To specify type, use one of the following values:
|
| database-id | The unique ID of the database asset. |
| table-id | The unique ID of the table asset. |
| datasource-id | The unique ID of the data source content. |
| virtualconnection-id | The unique ID of the virtual connection. |
| virtualconnectiontable-id | The unique ID of the virtual connection table. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400106 | Generic data quality certification error | The data quality certifications could not be deleted for some reason other than those specified in this table. |
| 404 | 404029 | Content not found | The content does not exist. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use:
Types are not case sensitive. |
| content-luid | The LUID of the content (database, table, column, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 409 | 400106 | Data quality warning delete error | An unknown error occurred and the data quality warning could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400105 | Data quality warning delete error | An unknown error occurred and the data quality warning could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user called this method but doesn't have Read (view) and Delete permission for the data source. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source in the site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to remove the favorite from. |
| datasource-id | The ID of the data source to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a data source from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | Data source not a favorite | The data source ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404011 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, ExtractRefresh, Read (view), Write, and SaveAs. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the data source. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Delete forbidden | A user called this method who does not have the required permissions |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site. |
| database-luid | The LUID of the database asset. |
| user-luid | The LUID of the user to remove the permissions for. |
| group-luid | The LUID of the group to remove the permissions for. |
| capability-name | The explicit permissions capability to remove. Capabilities that can be removed are Read, Write, ChangePermissions, or ChangeHierarchy. |
| capability-mode | The permissions mode to remove. Modes that can be removed are Allow or Deny. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the database asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| user-luid | The LUID of the user to remove the default permission for. |
| group-id | The LUID of the group to remove the default permission for. |
| capability-name |
The capability to remove the permissions for. Valid capabilities for databases are the following:
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Default permissions cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the project. |
| project-id | The LUID of the project to remove the default permission for. |
| group-id | The LUID of the group to remove the default permission for. |
| user-id | The LUID of the user to remove default permission for. |
| capability-name |
The capability to remove the permissions for. Valid capabilities for a workbook are
Valid capabilities for a data source are
Valid capabilities for a flow are
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permissions to remove permissions for the project. |
| 403 | 403095 | Delete permissions for flows forbidden | A non-administrator user called this method but doesn't have permissions to remove permissions for the project where the flow is located. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404012 | Group not found | A group LUID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI isn't assigned to the specified user or group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 404 | 404027 | Flow not found | The flow LUID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain name to remove from the system. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name or domain not found | Domain must conform to valid format and must exist in the system. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503907 | Unexpected server error | An unexpected error occurred while deleting the domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| eas-id | The unique ID of the registered EAS. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404047 | EAS not found | The requested EAS could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the datasource whose extract is to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the extract refresh task. |
| task-id | The LUID of the extract refresh task to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404026 | Task not found | The task id in the URI doesn't correspond to an existing extract refresh task. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection whose extract is to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409128 | No extract to delete. | The virtual connection has no extract. Neither the active revision nor any of its tables has extracts enabled. |
| 400 | 409099 | Unable to delete the extract. | A generic error occurred while converting the virtual connection to live and deleting its extract. |
| 403 | 409098 | User not authorized to delete the extract. | The user must be able to see the virtual connection and must have permission to convert its extract to live. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. This error also occurs if the virtual connection has no active revision. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site. |
| datasource-id | The LUID of the workbook containing the extract to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409070 | Invalid request method | The data source cannot be extracted because it is file based or in another unsupported form. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user called this method but doesn't have Read (view) and Delete permission for the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| user-id | The ID of the user to remove the favorite from. |
| datasource-id | The ID of the data source to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a data source from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | Flow not a favorite | The flow ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404027 | Data source not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name | The capability to remove the permission for. Valid capabilities for a flow are:
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a flow. Valid capabilities for a flow are ChangeHierarchy, ChangePermissions, Delete, Execute, ExportXml (Download), Read (view), and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the flow. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allowor Denyat the end of the URI. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allowor Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| group-id | The ID of the group to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group or the group is not part of the specified site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| group-set-id | The ID of the group set to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type wasn’t DELETE. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond to an existing group set or the group set isn’t part of the specified site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400105 | Generic delete label error | An unknown error occurred. Confirm that the LUID in the URI is correct. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | The URI does not contain a properly-formatted LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-category-name | The label category name. URL encode the label category name (as it appears in the Tableau web interface) if it has spaces or non-alphanumeric characters in it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400191 | Generic delete label category error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized |
You must be an administrator to create, update, or delete label values. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site. |
| category-list | (Optional) A comma-separated list of label value categories used to limit the label deletions to only the listed categories. See Data Labels in the REST API for information on label values and categories. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400106 | Generic delete labels error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 404 | 404029 | Resource not found | The contentType and contentID attribute combination does not correspond to an asset on the server. This can be caused by an incorrect contentType, an incorrect contentID, or both. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-value-name | The label value name. URL encode the label value name if it has spaces or non-alphanumeric characters in it. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 403 | 403004 | Operation on resource unauthorized | You must be a site or server administrator to create or update label values. |
| 409 | 409004 | Invalid parameter |
|
| 401 | 4000173 | Generic add labels to content error | An unknown error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the metric. |
| metric-luid | The unique ID of the metric to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403003 | Deletion forbidden | You attempted to delete a default project that cannot be deleted. |
| 404 | 404000 | Site not found | The site LUID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project or the project is not found on this site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| user-id | The ID of the user to remove the favorite from. |
| project-id | The ID of the project to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden favorites access | A non-administrator user attempted to delete a project from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove project the permission for. |
| capability-name |
The capability to remove the permission for. In Tableau Server 10.0, valid capabilities for a project are
ProjectLeader,
Read (view), and
Write.
For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a project. For a list of valid capabilities, see the capability-name attribute earlier. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permissions to remove default permissions for the project. |
| 403 | 403004 | Delete forbidden | A non-administrative user tried to update the project, but does not have permissions to the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the URI doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404012 | Group not found | A group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI isn't assigned to the specified user or group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| trigger-id |
The unique ID of the quality warning trigger. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400138 | Generic quality warning trigger error | The quality warning trigger could not be deleted for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the quality warning trigger has been applied to. In this case, use one of the following values:
These values are not case sensitive. |
| content-luid | The unique ID of the asset. This is the same as the content ID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400138 | Generic quality warning trigger error | The quality warning trigger could not be deleted for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| content-id | The LUID of the Recycle Bin content item to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Unknown resource | Requested content item not found. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the routing rule to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | The routing-rule-id is not a valid UUID. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503920 | Unexpected server error | An unexpected error occurred while deleting the rule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | The SCIM configuration can only be deleted by the user who created the SCIM configuration. |
| 404 | 404057 | Resource Not Found | The SCIM configuration cannot be deleted because it does not exist on this site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 404 | 404050 | Resource Not Found | The SCIM configuration does not have an associated SCIM token. |
| 404 | 404057 | Resource Not Found | The SCIM configuration ID is not valid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-id | The ID of the schedule to delete. To determine what schedules are available, call List Server Schedules. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400059 | Error deleting the schedule. | An unspecified error occurred during the deletion operation. |
| 404 | 404023 | Schedule not found | The specified schedule doesn't correspond to an existing schedule on the site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| session-id |
The unique ID of the session to be deleted. A session's ID and other metadata can be queried from the Tableau Server Postgres repository. Reading the Postgres repository excessively can impact performance and that writing directly to the repository is not supported in any form. For more information, see Collect Data with the Tableau Server Repository and Tableau Server Postgres Data Dictionary. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400105 | Session delete error | An unknown error occurred and the session could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to delete. |
| site-name | The name of the site to delete. If you specify a site name, you must also include the parameter key=name. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403002 | Deletion not allowed. | An attempt was made to delete the default Tableau Server site. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the subscription. |
| subscription-id | The ID of the subscription to delete. To determine what subscriptions are available, call Query Subscriptions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400062 | Error deleting the subscription. | An unspecified error occurred during the deletion operation. |
| 401 | 401002 | User not authenticated. | The user making the request has not been authenticated for this site. |
| 403 | 403059 | Delete forbidden. | A non-administrator user called this method but doesn't have permission to delete the subscription. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| table-luid | The LUID of the table asset. |
| user-luid | The LUID of the user to remove the permissions for. |
| group-luid | The LUID of the group to remove the permissions for. |
| capability-name | The explicit permissions capability to remove. Capabilities that can be removed are Read, Write, ChangePermissions, or ChangeHierarchy. |
| capability-mode | The permissions mode to remove. Modes that can be removed are Allow or Deny. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400120 | Bad request | Permissions could not be deleted because support for explicit permissions is available for table assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 403 | 403117 | Database locked | Permissions for the table asset cannot be deleted because the database asset is locked. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| column-id | The unique ID of the column asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 409 | 409062 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified in this table. |
| 409 | 409066 | Column not found | The column asset does not exist. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to remove the tag from. |
| tag-name | The name of the tag to remove from the data source. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400077 | Error deleting tag | There was a problem deleting the tag from the specified data source. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified data source. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified data source. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 404 | 404031 | Database not found | The database asset does not exist. |
| 409 | 409048 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| tag-name | The keyword text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404007 | Tag not found | The tag does not exist. |
| 404 | 404032 | Table not found | The table asset does not exist. |
| 409 | 409055 | Generic database tag error | The tag or tags could not be deleted (or added) for some other reason than those specified above. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the view to remove the tag from. |
| tag-name | The name of the tag to remove from the view. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400078 | Error deleting tag | There was a problem deleting the tag from the specified view. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified workbook. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag-name | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400077 | Error deleting tag | There was a problem deleting the tag from the specified virtual connection. |
| 403 | 403004 | Deleting tags forbidden | The user doesn't have permissions to add delete tags from the virtual connection. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove the tag from. |
| tag-name | The name of the tag to remove from the workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400051 | Error deleting tag | There was a problem deleting the tag from the specified workbook. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified workbook. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| user-id | The ID (not name) of the user to remove from the data-driven alert. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Delete forbidden | A user called this method who does not have the required permissions. |
| 403 | 409029 | Deleting recipient from data-driven alert forbidden | The user is not authorized to remove the recipient from the data-driven alert. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that users are being deleted from. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request payload is missing or incomplete, or contains malformed XML. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400212 | Generic error | An unknown error occurred. Try again. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. Confirm you have Read and Delete permissions for the view. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. Confirm the site ID. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. Confirm the view ID. |
| 405 | 405000 | Invalid request method | The HTTP request method was wrong. Confirm you're using the HTTP DELETE method. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| user-id | The ID of the user to remove the favorite from. |
| view-id | The ID of the view to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Forbidden Favorites access | A non-administrator user attempted to delete a view from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user |
| 404 | 404010 | View not a favorite | The view ID in the URI exists but is not a favorite of the specified user. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to delete permissions for. You can obtain this ID by calling Query Views for Site. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. The valid capabilities for a view are AddComment, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a view. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions on the view. |
| 403 | 403039 | Project permissions locked | The parent project that contains the specified view has its permissions locked. |
| 403 | 403096 | Parent workbook tabs enabled | The specified view currently has permissions inherited from its parent workbook. View permission can be deleted if the parent workbook has its tabs disabled. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn’t correspond to an existing user. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or an invalid capability value (other than Allow or Deny). |
| 404 | 404014 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| 409 | 409122 | Generic error | An unknown error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to remove the permission for. |
| group-id | The LUID of the group to remove the permission for. A request does not need to include both a user and a group grantee. |
| user-id | The LUID of the user to remove the permission for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to delete. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Required for this method. Element type of the element to delete (Column, FieldDescription, or TableDescription). Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Name of the element to delete. |
| tdsElementList[].column | Not applicable to this method. Delete uses elementType and name only; other content is ignored. |
| tdsElementList[].description | Not applicable to this method. Delete uses elementType and name only; other content is ignored. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to remove the favorite from. |
| workbook-id | The ID of the workbook to remove from the user's favorites. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Access to Favorites forbidden | A non-administrator user attempted to delete a workbook from a different user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404010 | Workbook not a favorite | The workbook ID in the URI exists but belongs to a different user. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove the permission for. |
| group-id | The ID of the group to remove the permission for. |
| user-id | The ID of the user to remove the permission for. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, ExtractRefresh, Filter, Read (view), ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, Write, RunExplainData, and CreateRefreshMetrics. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. This value is case sensitive. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read, Share_view, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to delete permissions from the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the URI doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny at the end of the URI. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to download. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the data source specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the data source. You can use this parameter to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403028 | Read forbidden | A non-administrator user attempted to download a data source, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasource-luid | The LUID of the data source to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to download. |
| revision-number | The revision number of the data source to download. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403028 | Read forbidden | A non-administrator user attempted to download a data source, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to download. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403097 | Read forbidden | A non-administrator user attempted to download a flow, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| flow-luid | The LUID of the flow to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on the destination site. |
destinationSiteLuid
|
(Required) The site LUID of the destination site. |
destinationServerUrl
|
(Required) The destination Tableau Server or Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Flow not found | The flow LUID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user whole credentials you want to download. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the view to use as the source of the crosstab to be downloaded as an .xlsx file. |
| max-age-minutes | (Optional) The maximum number of minutes an .xlsx file will be cached on the server before being refreshed. To prevent multiple .xlsx requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /excel?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this file. |
| 400 | 400130 | Unknown error |
The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 4001XX | Unauthorized |
The authentication token for the request is missing, invalid, or expired. |
| 403 | 4031XX | Unauthorized |
A user attempted to download a .xlsx file without Read and/or ExportData permissions for the workbook or view, and is not an administrator. |
| 404 | 404xxx | Site or view not found | The site or view specified in the request could not be found. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the virtual connection. |
| virtualconnection-id | The LUID of the virtual connection to download. To get the LUID, use List Virtual Connections. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Download virtual connection error | The virtual connection ID is not a valid ID, or the .tvcx file could not be built. |
| 403 | 403174 | Download virtual connection forbidden | The user does not have permission to download the virtual connection. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404049 | Virtual connection not found | The virtual connection does not exist. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Generic error | An unknown error occurred. |
| 403 | 403174 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| revision-number | The revision number (revisionNumber) of the virtual connection, as returned by the Get Virtual Connection Revisions method. This is an integer, not a LUID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Generic error | An unknown error occurred. Check to make sure the revision number is a revision and not the active virtual connection. |
| 403 | 403174 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. Check that the revision number exists. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to download. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the workbook specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the workbook. You can use this option to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403019 | Read forbidden | A non-administrator user attempted to download a workbook, but the caller doesn't have ExportXml permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| workbook-luid | The LUID of the workbook to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to use as the source of the .pdf file to be downloaded. |
| max-age-minutes | (Optional) The maximum number of minutes a workbook PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| fieldname=filter-value |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its resolution and aspect ratio. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this workbook. |
| 403 | 403004 | Unauthorized |
A non-administrator user attempted to download a pdf, but they don't have Read and/or ExportImage permissions for the workbook or user does not have Read permissions for the views of the workbook. |
| 403 | 403105 | Unauthorized |
The PDF export feature is disabled on the server or the server is not configured to allow PDF exports using the REST API. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to use as the source of the .pptx file to be downloaded. |
| max-age-minutes | (Optional) The maximum number of minutes a workbook .pptx will be cached before being refreshed. To prevent multiple .pptx requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this workbook. |
| 401 | 4001XX | Unknown error |
There was a problem downloading or querying this workbook. |
| 403 | 4031XX | Unauthorized |
A non-administrator user attempted to download a .pptx file, but they don't have Read and/or ExportImage permissions for the workbook or user does not have Read permissions for the views of the workbook. |
| 403 | 403105 | Unauthorized |
The PowerPoint export feature is disabled on the server or the server is not configured to allow PowerPoint exports using the REST API. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to download. |
| revision-number | The revision number of the workbook to download. To determine what versions are available, call Get Workbook Revisions. Note that the current revision of a workbook cannot be accessed by this call; use Download Workbook instead. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the workbook specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the workbook. You can use this option to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403019 | Read forbidden | A non-administrator user attempted to download a workbook, but the caller doesn't have required permissions. |
| 404 | 404024 | Workbook revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| site-id | The ID of the site that contains the webhook. |
| webhook-id | The ID of the webhook. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to retrieve. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503002 | Unexpected server error | An unexpected error occurred while retrieving the Bridge client. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| secret-id | The unique ID of the connected app secret. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| 404 | 404042 | Secret not found | The requested secret for the connected app could not be found. |
| api-version |
The version of the API to use, such as |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| custom-view-luid | The ID of the view to render as data. |
| max-age-minutes | (Optional) The maximum number of minutes view data will be cached before being refreshed. To prevent multiple view data requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| fieldname=filter-value | (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to get custok views, but the caller doesn't have Read or Expot imagepermission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 429000 | Concurrent request limit exceeded |
For Tableau Cloud, the cumulative number of concurrent requests has exceeded the limit of 20. This limit applies to long-running jobs such as exports and downloads for view data, images, .pdf or .pptx files, datasources, and crosstabs, Retry this request at a later time. Introduced September 2021. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| view-id | The LUID for the custom view being updated. |
| image-resolution | (Optional) The resolution of the image. Image width and actual pixel density are determined by the display context of the image. Aspect ratio is always preserved. Set the value to high to ensure maximum pixel density. |
| max-age-minutes | (Optional) The maximum number of minutes a view image will be cached before being refreshed. To prevent multiple image requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| image-format | (Optional) The format of the returned image. Valid values are png (default) or svg. Available in API 3.29 and later. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The ID of the site that contains the view. |
| custom-view-luid | The ID of the view to render as a .pdf file. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its
resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its
resolution and aspect ratio. |
| max-age-minutes | (Optional) The maximum number of minutes a view PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| fieldname=filter-value | (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| sheetURI | The URI of the sheet in the workbook. |
| unacceleratedSessionCount | The number of sessions that were created to load the workbook sheet before it was accelerated. For example, if you loaded it 7 times in a row, the session is reused so the count will still be 1. Generally, the more data you compare, the better the comparison is. Note: If sheets were loaded but never accelerated, they are not shown. |
| averageUnAcceleratedPLT | The average page load time for the sheet before it was accelerated. |
| acceleratedSessionCount | The number of sessions that were created to load the workbook sheet after it was accelerated. |
| averageAcceleratedPLT | The average page load time for the sheet after it was accelerated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 40500 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| 403 | 409087 | Permission denied | The user isn't authorized to view data acceleration tasks. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 40500 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source to get revisions for. |
| datasource-id | The ID of the data source to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403054 | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. | |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the specified data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A user queried this method who does not have the required permissions |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| embedded |
(Optional) Indicates whether the database is embedded or not. Use "false" if the database is not embedded and "true" if the database is embedded. For more information about embedded databases (and tables), see one of the following topics:
|
| datasource-name | (Optional) The data source name that can be found in the XML of the data source (.tds or .tdsx) or workbook (.tws or .twbx) file. |
| datasource-format | (Optional) The format of the data source that can be found in the XML of the data source (.tds or .tdsx) or workbook (.tws or .twbx) file. |
| encoded_xml |
This is the encoded version of the connection element (
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 409 | 409095 | Generic asset retrieval error | The database and table information could not be queried for some reason other than those specified in this table. |
| 409 | 409096 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 409 | 409097 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503908 | Unexpected server error | An unexpected error occurred while retrieving the domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh that you want information about. |
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404026 | Task not found | The task ID in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| user-id | The ID of the user for which you want to get a list favorites. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to view the specified user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-run-id | The ID of the flow run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Get forbidden | User does not have permissions to get the flow run. A user can view a flow run if they have permission to view the flow. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404036 | Flow run not found | The flow run ID in the URI doesn't correspond to an existing flow run. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the scheduled flow run task that you want information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Operation unauthorized | The user is not authorized to get the task. |
| 404 | 404026 | Task not found | The task ID in the URI doesn't correspond to an existing task. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| filter-expression | (Optional) An expression that lets you specify a subset to return. You can filter on predefined fields such as the userId of the user who started the flow run, flowId, progress, startedAt, and completedAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Get forbidden | User does not have permissions to get the flow run. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the filter doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-set-id | The ID of the group set you want information for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t GET. |
| 409 | 409120 | Group set not found | The group set ID in the request body doesn't correspond to an existing group set. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| user-id | The ID of the user whose group memberships are listed. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | User not found | The group ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 400103 | Generic query label error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. |
| 404 | 404030 | Label not found | The label LUID doesn't correspond to an existing project. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| category-list | (Optional) A comma-separated list of label value categories used to limit the labels shown to only the listed categories. See Data Labels in the REST API for information on label values and categories. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Permissions issue | The user does not have permissions to read the specified metric. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Metric not found | The metric ID in the URI doesn't correspond to an existing metric. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source to get revisions for. |
| metric-luid | The LUID of the metric whose data should be returned. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 40000 | Bad request | The LUID of the site or metric was malformed. |
| 401 | 40100 | Not authorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Not authorized | A non-administrator user attempted to get metric data, but does not have sufficient permissions. |
| 404 | 404000 | Site not found | The site LUIID in the URI doesn't correspond to an existing site. |
| 404 | Metric not found | The metric LUID in the URI doesn't correspond to an existing data source. | |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 405000 | Too many requests | The concurrent request limit for the site was exceeded. Retry after a pause. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The request is incomplete is malformed. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The request is incomplete is malformed. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| idp-configuration-id | The ID of the configuration. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views and workbooks. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409109 | Invalid request | Invalid notification type. |
| 400 | 409100 | Invalid request | Invalid channel. |
| 403 | 403004 | Invalid permissions | Invalid permission to update site user notification settings. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to get the users for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the users. |
| filter-expression | (Optional) An expression that lets you specify a subset of users to return. You can filter on predefined fields such as name and lastLogin. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the views or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-id | The ID of the view whose details are requested. |
| (Optional) get-usage-information | true to return usage statistics. The default is false. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Resource not found | The view ID in the URI doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-name | The name of the view as it appears in the URL to the view. For https://MY_SERVER/#/MY_SITE/views/workbook-name/Sheet1?:iid=1, the name would be Sheet1. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Resource not found | The view ID in the URI doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query the workbook, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook LUID or contentUrl in the URI doesn't correspond to an existing workbook, or the querystring ?key=contentUrl is not capitalized correctly. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook that downgrade info is being shown for. |
| workbook-id | The ID of the workbook being downgraded. |
| downgrade-target-version | The Tableau release version number the workbook is being downgraded to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400114 | Unknown downgrade error | The workbook cannot be exported to a downgraded version due to an unknown error. |
| 400 | 400115 | Invalid downgrade version | The downgrade version specified is not a valid Tableau version number. |
| 400 | 400116 | Downgrade version not supported | The downgrade version specified refers to a Tableau version that is not supported. |
| 403 | 40310 | Access to downgrade info denied | The caller does not have permissions required to access download info for this workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook to get revisions for. |
| workbook-id | The ID of the workbook to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403056 | A non-administrator user attempted to get workbook revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-luid | The LUID of the view to be added to the list of views hidden from recommendation for a user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The content ID in the URI doesn't correspond to an existing content of the requested type. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| path-to-csv | The file path to the .csv list users to be imported. |
| user-name |
(Optional) The name of the user. If the server uses local authentication, this can be any name. If you are using Active Directory authentication, or if you are using Tableau Cloud, there are specific requirements for the name. Tableau Server
Note: Active Directory specifies a user name using two attributes: Tableau Cloud
|
| auth-setting |
Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
Assigning user auth settings with this method
|
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| isVerbose | Tableau Cloud only When set to false, this method only returns the top three errors in a batch of users. When set to true, the method displays a full list of errors during CSV upload.
Available in REST API 3.22 (Tableau Cloud February 2024) |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request payload is missing or incomplete, or contains malformed XML. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to upload the file to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403015 | Access to Favorites forbidden | A non-administrator user attempted to initiate a file upload, but the caller doesn't have publishing rights on the site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the metrics. |
| lens-luid | The LUID of the ask data lens whose permissions are being listed. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query metrics for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404046 | Lens not found | A lens with the requested LUID could be found. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| poolId | Optional. Filter by specific pool; returns only Bridge clients assigned to this pool. Mutually exclusive with onlyDefaultPool and onlyUnassigned. |
| onlyDefaultPool | Optional. If true, returns only Bridge clients in the default pool. Mutually exclusive with poolId and onlyUnassigned. |
| onlyUnassigned | Optional. If true, returns only Bridge clients not assigned to any pool. Mutually exclusive with poolId and onlyDefaultPool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | BAD_REQUEST | Multiple filters specified | Only one filter parameter can be specified at a time (poolId, onlyDefaultPool, or onlyUnassigned). |
| 400 | BAD_REQUEST | Invalid poolId | The poolId specified is reserved and cannot be used as a filter. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503002 | Unexpected server error | An unexpected error occurred while retrieving Bridge clients. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503903 | Unexpected server error | An unexpected error occurred while retrieving pools. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the collection. |
| collection-id | The ID of the collection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404038 | Resource not found | The collection ID in the URI wasn't found. |
| 404 | 404000 | Resource not found | The site ID in the URI wasn't found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| site-luid | The LUID for the site. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression |
(Optional) An expression that lets you specify the set of available fields to return. When a request has a valid field expression, describing the attributes of a Tableau resource like a workbook or data source, only the attributes specified in the expression will be present in the response. For example, a field expression that results in a response containing only the resources LUIDs of the resources being requested would look like:
You can qualify the expression to return values based upon predefined keywords such as The supported fields for custom views are its attributes:
For more information, see Using Fields in the REST API. |
| filter-expression |
(Optional) An expression that lets you filter which Tableau resources are present in the response. A filter expression has a resource, an operator, and a value. For example, a filter that returns only resources created after a specified date would look like:
You can include multiple filter expressions in a request, and mix field, sort, and filter expressions in the same request. The supported filters for custom views use the For more information, see Filtering and Sorting in the Tableau REST API. |
| sort-expression |
(Optional) An expression that lets you sort the Tableau resources present in the response. A sort expression contains
an attribute name and a direction (
You can include multiple sort expressions in a request, and mix field, sort, and filter expressions in the same request. The supported filters for custom views use the For more information, see Filtering and Sorting in the Tableau REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains data-driven alerts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403004 | Read forbidden | A user queried this method who does not have the required permissions |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 400 | 400120 | Bad request | Support for explicit permissions is available for database assets associated with published data sources only. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset to set default permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for database assets associated with published data sources only. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Resource not found | The database LUID in the URI doesn't correspond to a database asset on the site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the project. |
| project-luid | The LUID of the project to get default permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403035 | Querying data source permissions forbidden | The caller doesn't have permissions to query the project's default permissions for data sources. |
| 403 | 403036 | Querying workbook permissions forbidden | The caller doesn't have permissions to query the project's default permissions for workbooks. |
| 403 | 403035 | Querying flow permissions forbidden | The caller doesn't have permissions to query the project's default permissions for flows. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the refresh tasks. |
| schedule-id | The ID of the schedule to get extract information for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400047 | Invalid schedule type | The schedule type does not represent an extract refresh task. (For example, it might be a subscription task.) |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404 | Schedule not found | The schedule ID in the URI doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| 405 | 405000 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group sets. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of group sets to return. You can filter on predefined fields such as name. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which group set information is returned. If you don’t specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter isn’t an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter isn’t an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t GET. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond with an existing group set. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400120 | Bad request | Permissions could not be returned because support for explicit permissions is available for table assets associated with published data sources (not embedded data sources) only. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Bad Request | The requested resource could not be found. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Site Not Found | The site ID in the URI doesn't correspond to an existing site. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the view. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| virtual-connection-id | The LUID for the virtual connection that includes the database connections. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for virtual connections at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual Connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtual-connection-id | The LUID for the virtual connection. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400058 | Generic error | An unknown error occurred. |
| 403 | 403054 | User not authorized. | User doesn't have permissions to revisions on this virtual connection. Check the user's permissions. |
| 403 | 403173 | User not authorized. | User forbidden from listing virtual connection revisions. Check the user's permissions and site role. |
| 403 | 403053 | Revision history is disabled on the site. | Check the revision history setting. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| sort-expression | (Optional) An expression that lets you specify the order in which virtual connection information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for virtual connections at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| site-id | The ID of the site that contains the webhooks. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| bridge-client-id | The unique identifier for the Bridge client to move. |
| poolId | Required when using moveToNamedPool. The UUID of the Bridge pool to move the client to. |
| moveToDefaultPool | Set to true to move the Bridge client to the default pool. Use in place of moveToNamedPool. |
| moveToUnassigned | Set to true to move the Bridge client to unassigned status. Use in place of moveToNamedPool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | BAD_REQUEST | Multiple operations specified | Cannot specify more than one move operation in a single request. |
| 400 | BAD_REQUEST | No operation / Missing poolId / Invalid poolId | Request must contain exactly one valid move operation; poolId required for moveToNamedPool and must be a valid UUID. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 404 | 503001 | Bridge client not found | Bridge client with the specified ID does not exist on this site. |
| 404 | 503005 | Pool not found | The specified poolId does not exist on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503004 | Unexpected server error | An unexpected error occurred while moving the Bridge client. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the database. |
| project-luid | The LUID of the destination project. |
| location-type |
The destination type. Currently, this value must be "PROJECT". |
| action-type | To move a database without moving its tables, this value must be "MoveDatabaseOnly". |
| database-luid | The LUID of the database. |
| asset-type | The type of asset being moved. Currently, this value must be "DATABASE". |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 409100 | Invalid location type | The location element's type attribute must be "PROJECT". |
| 400 | 409103 | Invalid content type | The resource element's contentType attribute must be "DATABASE". |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions or operation not allowed. Make sure Tableau Catalog is enabled. |
| 403 | 403030 | Permissions denied | The user does not have permission to move the database. |
| 403 | 403112 | Invalid Operation | The database may be embedded, and therefore cannot be moved. |
| 403 | 403156 | External assets can not be moved | The user does not have appropriate permissions. |
| 404 | 404005 | Project not found | The project LUID doesn't correspond to an existing project. |
| 404 | 404031 | Database not found | The database LUID doesn't correspond to an existing database. In a case where multiple databases were specified in the request, other database moves could have succeeded. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the table. |
| project-luid | The LUID of the destination project. |
| location-type |
The destination type. Currently, this value must be "PROJECT". |
| table-luid | The LUID of the table. |
| asset-type | The type of asset being moved. Currently, this value must be "TABLE". |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 409100 | Invalid location type | The location element's type attribute must be "PROJECT". |
| 400 | 409103 | Invalid content type | The resource element's contentType attribute must be "TABLE". |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions or operation not allowed. Make sure Tableau Catalog is enabled. |
| 403 | 403030 | Permissions denied | The user does not have permission to move the table. |
| 403 | 403112 | Invalid Operation | The table may belong to an embedded database, and therefore cannot be moved. |
| 403 | 403156 | External assets can not be moved | The user does not have appropriate permissions. |
| 404 | 404005 | Project not found | The project LUID doesn't correspond to an existing project. |
| 404 | 404032 | Table not found | The table LUID doesn't correspond to an existing table. In a case where multiple tables were specified in the request, other table moves could have succeeded. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| user-id | The ID of the user for which you want to get a list favorites. |
| favorite-id | The ID of the favorite you want to move. |
| content-type |
The content type of a favorite. To specify the type, use one of the following values:
|
| favorite-id-after | The ID of the favorite that should follow, or come after, the favorite you want to move. |
| 403 | 403004 | Forbidden Favorites access | A non-administrator user called this method but doesn't have permission to view the specified user's favorites. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 404 | 404010 | Favorite not found | The favorite ID specified doesn't correspond to a user's favorite. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site to publish to. |
| overwrite-flag | true to overwrite a data source that has the same name, or false
to fail if the specified data source already exists. The default is false. If overwrite-flag
is set to true but the data source doesn't already exist, the operation succeeds.
You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| replace-flag | (New in 2025.1) A boolean value (true or false). Set to true to replace the data in an existing data source. The default is false. |
| asJob-value | A Boolean value that is used to publish data sources asynchronously. If you set this value to false (the default), the publishing process runs as a synchronous process. If a data source is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. |
| append-flag | true to append the data being published to an existing data source that has the same name. The default
is false. If append-flag
is set to true but the data source doesn't already exist, the operation fails.
In order to append data to a published data source on Tableau Server, both the source file and the published file must be
an extract with the file extension If an extract was stored using the multiple tables option, you can't append data to it. You can include both the overwrite and append parameters in a request, but they cannot both be true. |
| upload-session-luid | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session LUID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| datasource-file-type | hyper, tds, tdsx, or tde the kind of file that you are uploading. This value is required if you are calling Publish Data Source in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| datasource-name | (Required) The name to assign to the data source when it is saved on the server. |
| remote-query-agent-flag | (Optional) When true, this flag will allow your Tableau Cloud site to use Tableau Bridge clients. Bridge allows you to maintain data sources with live connections to supported on-premises data sources.
|
| datasource-description | (Optional) A description of the data source. |
| connection-username | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the data source connection requires credentials, the <connectionCredentials> elements is included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag | (Optional) If the data source connection is configured to use OAuth, set this to true to specify
that the value of the name attribute in the
connectionCredentials element is an OAuth username. In that case, no password is
required and the value of the embed attribute specifies whether to embed the OAuth
credential with the data source.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The LUID of the project to assign the data source to. If the project is not specified, the data source will be published to the default project. |
| datasource-file-name | The file name (including extension) of the data source file to upload. This attribute is used in the request body only if the request also includes the content of the data source file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-datasource-file | The content of the data source file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| askDataEnablement | This attribute is not available in API 3.12 and later (Tableau Cloud September 2021 / Server 2021.3). |
| parentDataSourceUrls | The name (URL) of the immediately referenced published data source that the data source being published depends on. For a composed data source, you must include one entry for each top-level parent data source in the data model. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400000 | Missing data source | There is no attachment in the request for the data source. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be set to true or false. |
| 400 | 400008 | Invalid append value | The append parameter must be set to true or false. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400010 | Invalid data source filename | The name of the data source file did not end with the suffix .hyper, .tds, .tdsx, or .tde. |
| 400 | 400010 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than hyper, tds, tdsx, or tde. |
| 400 | 400010 | Unexpected attachments | The message had both a uploadSessionId parameter and an attachment, or the message contained more than one attachment. |
| 400 | 400011 | Publishing error | The data source could not be published for some other reason than those specified earlier. |
| 400 | 400011 | Bad Request | The request is invalid. This can occur if more than one of the conflict resolution parameters (overwrite, append, or replace) is set to true. Only one of these parameters can be true in a single request. |
| 400 | 400019 | Malformed request body | The request message is missing or incomplete, or contains malformed XML. Make sure that the Content-Length value is set. |
| 400 | 400055 | Incompatible overwrite and append values | The overwrite and append parameter cannot both be set to true. |
| 400 | 400129 | Invalid Ask Data enablement | The enablement setting in the request body is not valid for the current server configuration. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a data source, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user who is unlicensed attempted to publish a data source. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A data source with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The data source could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The append parameter is true but the data source name specified in the request body does not correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the request body doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a flow that has the same name, or false to fail if the specified flow already exists. The default is false. If overwrite-flag is set to true but the flow doesn't already exist, the operation succeeds. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| flow-file-type | tfl or tflx to indicate whether you have uploaded a flow file (tfl) or a packaged flow file (tflx). This value is only necessary and required if you upload a file in multiple parts. In the Publish Flow call after completing file upload, specify the file type. |
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| name | The name to assign to the flow when it is saved on the server. |
| description | The description of the flow. |
| server-address | Specify the server address for an input connections. |
| port-number | Specify the port number for input connections. |
| connection-username | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection username. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| connection-password | (Optional) If the flow input connections require credentials, the <connectionCredentials> elements are included and this attribute specifies the connection password. If the element is included but is not required, the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) |
| embed-flag | (Optional) If the flow input connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials. |
| oauth-flag |
(Optional) If the flow input connection is configured to use OAuth, set this to If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| project-id | The ID of the project to assign the flow to. |
| content-of-flow-file | The file itself if you are including it in the request body. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400089 | Missing flow name | Flow name is required and was not specified. |
| 403 | 403007 | Invalid permissions | The caller does not have the necessary permissions to publish the flow. |
| 400 | 400090 | Missing flow payload | The flow information (the structure containing the flow description, flow project) was not included in the request body. |
| 400 | 400086 | Invalid flow attachment | The name of the flow doesn't end in .tfl or .tflx. |
| 400 | 400087 | Generic flow publishing error | The flow could not be published for some other reason than those specified earlier. |
| 409 | 409041 | Flow already found in destination | The flow name should be unique, or the overwrite flag parameter should be set to true. |
| 403 | 403008 | Insufficient storage quota | The flow could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site to publish to. |
| publish-as-draft-flag | (Optional) true to publish the virtual connection as a draft, or false to publish it as an active virtual connection. The default is true. This parameter applies only when you publish a JSON representation. The parameter is case sensitive.
If the virtual connection contains an extract, the publishAsDraft parameter value is ignored and the virtual connection is published as a draft. Note: If you are using the REST API to publish a virtual connection as a draft, note the virtual connection's LUID ( |
| overwrite-flag | true to overwrite a virtual connection that has the same name in the target project, or false to fail if the specified virtual connection already exists. The default is false. If overwrite-flag is set to true but the virtual connection doesn't already exist, the operation succeeds. |
| upload-session-id | (Optional, .tvcx files only) If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to
Initiate File Upload. If this value is not included, the server assumes
that the body of the request contains the file to be published.
|
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| virtualconnection-name | (Required) The name to assign to the virtual connection when it is saved on the server. This is typically derived from the file name. |
| project-id | (Optional) The LUID of the project to publish to. If you omit it, the virtual connection is published to the default project. |
| owner-id | (Optional) The LUID of the owner of the virtual connection. If you omit it, the authenticated user becomes the owner. |
tableau_virtual_connection file part
|
The .tvcx file. Include it when you publish in a single request. Omit it when you commit a file that was uploaded in parts. If you include both a file part and the uploadSessionId parameter, or if you include neither, the request fails. |
| virtualconnection-name | The name of the virtual connection you are publishing. If publishing an existing virtual connection as a revision, the virtual connection name is ignored. |
| project-id | The LUID of the project you are publishing to. |
| owner-id | This attribute is required, but is ignored. |
| virtualconnection-as-json |
The virtual connection schema rendered as JSON, as obtained using the Download Virtual Connection as JSON or Download Virtual Connection Revision as JSON method. The schema appears in the content element (for XML output) or content property (for JSON output). Note: Changing the downloaded schema and then using it with this method isn't supported. When using the Publish Virtual Connection method, we recommend using the virtual connection schema format that matches the format you used for downloading it. This is important because the virtual connection schema returned by the download methods has escape characters in it if the output was JSON. If you download and publish using different formats, you will have to make changes to the JSON representation of the virtual connection. In other words:
For more information on the difference between using XML and using JSON with the REST API, see Fundamentals of the Tableau Server REST API. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request |
When you publish a .tvcx file, the request is not valid for one of these reasons:
|
| 400 | 400201 | Publish virtual connection error | The virtual connection could not be published. This includes content that is not valid virtual connection JSON, or a .tvcx file or its contents that could not be read. |
| 403 | 403008 | Insufficient site storage | The content would exceed the site's storage quota. Applies when publishing a .tvcx file. |
| 403 | 403175 | Publish virtual connection forbidden | The user does not have permission to publish the virtual connection. |
| 404 | 404015 | File upload not found | The uploadSessionId does not match an upload owned by the user. Applies when publishing a .tvcx file. |
| 404 | 404049 | Virtual connection not found | The virtual connection could not be found while publishing it with the extract in the .tvcx file. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409123 | Virtual connection exists | A virtual connection with the same name already exists in the project and overwrite is false. Applies when publishing a .tvcx file. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| datasource | Required. Published data source name and optional description. Other data source fields are not read by this method. |
| datasource.name | Required. Name of the data source to publish. A null, empty, or whitespace-only value is HTTP 400 with error code 400008. |
| datasource.description | Optional. Description of the published data source. May be null, empty, or whitespace. |
| tdsWorkCopy | Required. Work copy and published data source identifiers. |
| tdsWorkCopy.workCopyLuid | Optional. LUID of the work copy. Not returned by this method; returned by Create Work Copy. |
| tdsWorkCopy.datasourceLuid | LUID of the newly published data source. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Datasource name missing | The published data source name is missing or blank. |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | Work copy not found or not visible to the caller | The work copy LUID in the URI doesn't correspond to an existing work copy, or the caller doesn't have permission to access it. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a workbook that has the same name, or false to fail if the specified workbook already exists. The default is false. If overwrite-flag is set to true but the workbook doesn't already exist, the operation succeeds. |
| asJob-value | (Optional, boolean) If false, the workbook publishing process runs as a synchronous process. If a workbook is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. Default value is false. |
| skip-connection-check-flag | (Optional, boolean) If true, then the Tableau server will not check if a non-published connection of a workbook is reachable. Publishing will succeed but unchecked connection issues may result in a non-functioning workbook. If you encounter this issue, follow Keep Data Fresh guidelines. Default value is false. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| workbook-file-type | twb or twbx to indicate whether you have uploaded a workbook file (twb) or a packaged workbook file (twbx). This value is required if you are calling Publish Workbook in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| workbook-name | The name to assign to the workbook when it is saved on the server. |
| workbook-description | (Optional) Starting in API 3.20, the description for the workbook. |
| show-tabs-flag | (Optional) Specify true to have the published workbook show views in tabs; otherwise, false. The default is false. |
| user-luid | (Optional) The LUID of the user to generate thumbnails as. You can get the user LUID by calling Get Users on Site. |
| server-address | (Optional) Specify the server address for a data source connection if that data source does not use OAuth. |
| port-number | (Optional) Specify the port number for a data source connection if that data source does not use OAuth. |
| connection-username | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection username. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| connection-password | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection password. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| embed-flag | (Optional) If the workbook's data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials for when the data source is used. |
| oauth-flag | (Optional) If the workbook's data source connection is configured to use OAuth, set this to true to specify that the value of the name attribute
in the <connectionCredentials> element is an
OAuth username. In that case, no password is required and the value of the embed attribute specifies
whether to embed the OAuth credential with the workbook, and the server address and port number are not required.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| hide-view-flag | Setting this flag to true will cause the named view to be hidden in the published workbook. The default value is false.
You can specify any number of views to hide. If all views in a workbook are hidden the server will not perform a publish. |
| project-id | The ID of the project to assign the workbook to. If the project is not specified, the workbook will be published to the default project. |
| workbook-file-name | The file name (including extension) of the workbook file to upload. This attribute is used in the request body only if the request also includes the content of the workbook file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-workbook-file | The content of the workbook file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| encryptExtracts | (Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400000 | Missing workbook | There is no attachment in the request and no uploadSessionID parameter. |
| 400 | 400000 | Unexpected attachments | The message had both an uploadSessionId parameter and an attachment, or the request body contained more than one attachment. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be true or false. |
| 400 | 400011 | Publishing error | The workbook could not be published for some other reason than those specified earlier. |
| 400 | 400020 | Invalid workbook file name | The name of the workbook doesn't end in .twb or .twbx. |
| 400 | 400035 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than .twb or .twbx. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a workbook, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user attempted to publish a workbook. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A workbook with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source used by the workbook. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The workbook could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 403 | 403130 | Publishing overwrite | A workbook with the same name already exists. |
| 403 | 403131 | Concurrent update | The workbook is already being published in another process. |
| 403 | 403132 | Failed connection check | One or more data sources used by the workbook could not be reached. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404006 | Workbook not found | The user specified overwrite as true but no workbook with the specified name exists on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the uploadSessionId parameter doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content that the quality warning trigger has been applied to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The unique ID of the asset. This is the same as the content ID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400134 | Generic quality warning trigger error | The quality warning triggers could not be queried for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 409 | 409059 | Unknown column error | An unknown column asset error occurred. |
| 409 | 409060 | Unknown column query error | An unknown error occurred and the column query could not complete. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 409 | 409059 | Unknown column error | An unknown column asset error occurred. |
| 409 | 409060 | Unknown column query error | An unknown error occurred and the column query could not complete. |
| 409 | 409066 | Column not found | The requested column assets could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| certification-luid | The unique ID of the data quality certification. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400103 | Generic data quality certification error | The data quality certification could not be queried for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404030 | Data quality indicator not found | The requested data quality certification was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the data quality certification has been applied to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The LUID of the content (database, table, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400104 | Generic data quality certification error | The data quality certification could not be queried for some reason other than those specified in this table. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404029 | Data quality indicator not found | The requested data quality certification was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of asset that the data quality warning is being attached to. To specify the type, use one of the following values:
These values are not case sensitive. |
| content-luid | The LUID of the content (database, table, column, published data source, flow, virtual connection, or virtual connection table). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400104 | Unknown data quality warning query error | An unknown error occurred and the data quality warning query could not complete. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400103 | Unknown data quality warning query error | An unknown error occurred and the data quality warning query could not complete. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The site that contains the data source. |
| datasource-id | The ID of the data source to get. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a data source, but the caller doesn't have Connect permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to return connection information about. |
error Code| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data sources. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of data sources to return. You can filter on predefined fields such as name and updatedAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the data sources or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the Rest API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409046 | Unknown database query error | An unknown error occurred and the database query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested databases could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409046 | Unknown database query error | An unknown error occurred and the database query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to return information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query the flow, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to return connection information about. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403092 | Read forbidden | A user who is not a server administrator user attempted to query the flow connections, but the caller doesn't have Readpermission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flows. |
| filter-expression | (Optional) An expression that lets you specify a subset of flows to return. You can filter on predefined fields such as name, tags, and createdAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which flow information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403101 | Read forbidden | A non-administrator user attempted to query flows for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get flows for. |
| isOwner | (Optional) trueto return only flows that the specified user owns, or falseto return all flows that the specified user has at least read access to. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for flows at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403101 | Read forbidden | A non-administrator user attempted to query flows for the user, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the groups. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of groups to return. You can filter on predefined fields such as name. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| job-id | The ID of the job to get status information for. |
| Type | Value | Text |
|---|---|---|
| CountOfUsersAddedToGroup | Integer | Description of how many users were added to the group during the import. |
| CountOfUsersAddedToSite | Integer | Description of how many users were added to the site during the import. |
| CountOfUsersWithInsufficientLicenses | Integer | Description of how many users could not have their site role updated due to server lacking sufficient licenses for them. |
| CountOfUsersInActiveDirectoryGroup | Integer | Description of the total number of users in the Active Directory group being imported or synchronized |
| CountOfUsersProcessed | Integer | Description of the total number of users processed during the import or synchronization process. |
| CountOfUsersSkipped | Integer | Description of the total number of users skipped during the import or synchronization process |
| CountOfUsersInformationUpdated | Integer | Description of the total number of users whose information was updated during the import or synchronization process. |
| CountOfUsersSiteRoleUpdated | Integer | Description of the total number of users whose site role was updated during the import or synchronization process. |
| CountOfUsersRemovedFromGroup | Integer | (Synchronization process only) Description of the number of users removed from the group during the synchronization process. |
| CountOfUsersUnlicensed | Integer | (Synchronization process only) Description of the number of users who were unlicensed during the synchronization process. |
| SiteDelete | Integer | Description of the site deletion progress. Can include a general error or errorCode=9 when a site can't be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404018 | Job not found | The job ID in the URI doesn't correspond to an existing job. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site where the job is running. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the projects. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of data sources to return. You can filter on predefined fields such as name, ownerName, and parentProjectId. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| content-type |
The type of content the quality warning trigger has been applied to. To specify the type, use on of the following values:
These values are not case sensitive. |
| trigger-id | The unique ID of the quality warning trigger. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400134 | Generic quality warning trigger error | The quality warning trigger could not be queried for some reason other than those specified below. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404037 | Quality warning not found | The requested quality warning trigger was not found. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to get information for. |
| site-name | The name of the site to get information for. If you specify a site name, you must also include the parameter key=name. |
| content-url | The URL of the site to get information for. If you specify a content URL, you must also include the parameter key=contentUrl. |
| include-usage-flag | The boolean flag to include site usage metrics in the response body. If true, then the site element of the response will contain a usage node with the attributes numUsers (number of users) and storage (storage in megabytes). To set the flag to include usage in the response, append |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table could not be found. |
| 409 | 409052 | Unknown table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested tables could not be found. |
| 409 | 409052 | Unknown table error | An unknown table asset error occurred. |
| 409 | 409053 | Unknown table query error | An unknown error occurred and the table query could not complete. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get information for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 403 | 403133 | Query user permissions forbidden | The user does not have permissions to query user information for other users. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to render as data. |
| max-age-minutes | (Optional) The maximum number of minutes view data will be cached before being refreshed. To prevent multiple view data requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 429000 | Concurrent request limit exceeded |
For Tableau Cloud, the cumulative number of concurrent requests has exceeded the limit of 20. This limit applies to long-running jobs such as exports and downloads for view data, images, .pdf or .pptx files, datasources, and crosstabs, Retry this request at a later time. Introduced September 2021. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to return an image for. |
| viz-height |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) The height of the rendered pdf image in pixels that, along with the value of |
| viz-width |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) The width of the rendered pdf image in pixels that, along with the value of |
| image-resolution | (Optional) The resolution of the image. Image width and actual pixel density are determined by the display context of the image. Aspect ratio is always preserved. Set the value to high to ensure maximum pixel density. |
| max-age-minutes | (Optional) The maximum number of minutes a view image will be cached before being refreshed. To prevent multiple image requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view.
For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017.
To learn more, see View filter queries. |
| image-format | (Optional) The format of the returned image. Valid values are png (default) or svg. Available in API 3.29 and later. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400010 | Bad request | Invalid query parameter. For example, attempting to query 'jpg' image-format. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a view preview image, but the caller doesn't have Read permission. |
| 403 | 403068 | Forbidden | The endpoint has been disabled on the server. To enable the endpoint, a server administrator must use tsm to configure the sheet_image.enabled setting. For more information, see tsm configuration set Options in the Tableau Server help. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view in the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to render as a .pdf file. |
| filter-value | The value of the field that you want to use to filter the workbook view.
For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017.
To learn more, see View filter queries. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its
resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its
resolution and aspect ratio. |
| max-age-minutes | (Optional) The maximum number of minutes a view PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| workbook-id | The ID of the workbook that contains the view to return a thumbnail image for. |
| view-id | The ID of the view to return a thumbnail image for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a view preview image, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view in the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views. |
| get-usage-information | (Optional) true to return usage statistics. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) Fields and operators that you can use to filter results. For more information, see Filter expressions. |
| sort-expression | (Optional) Field and direction to sort results. For more information, see Sorting. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the workbooks or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400008 | Invalid parameter value | The includeUsageStatistics was provided with a value other than true or false. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to get the views for. |
| (Optional) get-usage-information | true to return usage statistics. The default is false. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Invalid parameter value | The includeUsageStatistics was provided with a value other than true or false. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to return connection information about. |
error Code| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to return the thumbnail image for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query the workbook preview image, but the caller doesn't have Read permission for the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbooks. |
| filter-expression | (Optional) An expression that lets you specify a subset of workbooks to return. You can filter on predefined fields such as name, tags, and createdAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which workbook information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the workbooks or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| accelerationEnabled | true if data acceleration is enabled, otherwise false. For more information, see Data Acceleration (Retired). Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| accelerationStatus | The status can be:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query workbooks for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get workbooks for. |
| isOwner | (Optional) true to return only workbooks that the specified user owns, or false to return all workbooks that the specified user has at least read access to. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query workbooks for the user, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| datasource-luid | The LUID of the data source. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
elementType | Required. The kind of element to return. Allowed values are Column, FieldDescription, and TableDescription. |
name | Optional. The name of a single element to read. When omitted, the call lists elements of the requested elementType. When this value is non-empty and the TDS service returns gRPC NOT_FOUND, the API responds 404 with error code 404065. |
5
| tdsElementList[] | Required. Elements read from the data source or work copy. Empty when the TDS service returns no records. |
| tdsElementList[].elementType | Optional. Element type. Not set by the read converter for this operation. |
| tdsElementList[].name | Required. Name of the element, set from the gRPC read result or from the failure record when the record failed. |
| tdsElementList[].column | Optional. Present when the read result is a column. Mutually exclusive with description. |
| tdsElementList[].column.caption | Optional. Column display caption from the TDS service. |
| tdsElementList[].column.role | Optional. Column role, FieldRole.name() from the TDS service. |
| tdsElementList[].column.type | Optional. Column field type, FieldType.name() from the TDS service. |
| tdsElementList[].description | Optional. Description text. Present when the read result is a field description or a table description. Mutually exclusive with column. |
| tdsElementList[].error | Optional. Present only when this read record failed. The HTTP status of the read stays 200. |
| tdsElementList[].error.code | Required (within error). The raw gRPC status code for the failed record — not a translated HTTP code and not a Tableau 6-digit error code. |
| tdsElementList[].error.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid data source LUID | The data source LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Invalid elementType | elementType must be Column, FieldDescription, or TableDescription. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | 404065 | TDS element not found | No element with the requested name exists. Returned only when the name query parameter is non-empty. A missing data source or work copy is not given this code. |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
elementType | Required. The kind of element to return. Allowed values are Column, FieldDescription, and TableDescription. |
name | Optional. The name of a single element to read. When omitted, the call lists elements of the requested elementType. When this value is non-empty and the TDS service returns gRPC NOT_FOUND, the API responds 404 with error code 404065. |
5
| tdsElementList[] | Required. Elements read from the data source or work copy. Empty when the TDS service returns no records. |
| tdsElementList[].elementType | Optional. Element type. Not set by the read converter for this operation. |
| tdsElementList[].name | Required. Name of the element, set from the gRPC read result or from the failure record when the record failed. |
| tdsElementList[].column | Optional. Present when the read result is a column. Mutually exclusive with description. |
| tdsElementList[].column.caption | Optional. Column display caption from the TDS service. |
| tdsElementList[].column.role | Optional. Column role, FieldRole.name() from the TDS service. |
| tdsElementList[].column.type | Optional. Column field type, FieldType.name() from the TDS service. |
| tdsElementList[].description | Optional. Description text. Present when the read result is a field description or a table description. Mutually exclusive with column. |
| tdsElementList[].error | Optional. Present only when this read record failed. The HTTP status of the read stays 200. |
| tdsElementList[].error.code | Required (within error). The raw gRPC status code for the failed record — not a translated HTTP code and not a Tableau 6-digit error code. |
| tdsElementList[].error.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Invalid elementType | elementType must be Column, FieldDescription, or TableDescription. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 404 | 404065 | TDS element not found | No element with the requested name exists. Returned only when the name query parameter is non-empty. A missing data source or work copy is not given this code. |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Unknown error | There was an internal server error. | |
| 503 | Service unavailable | Service unavailable. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| URL | The entity id of your identity provider (IdP) or URL that uniquely identifies your IdP. |
| URI |
(Optional) The JSON Web Key (JKWS) of the EAS. |
| name |
(Optional) The name of the connected app. If the name attribute is not specified, the connected app name defaults to "External Authorization Server." This attribute is available starting from API version 3.22 (February 2024). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Issuer URL missing | The required issuer URL is missing from the request body. |
| 400 | 400157 | Unexpected EAS error | There was a unexpected error when creating the connected app. |
| 400 | 400161 | EAS limit exceeded | The site has reached its limit of EAS that can be registered or the external authorization server (EAS) ID is not in the correct format. |
| 400 | 400194 | Issuer URL already configured | Another connected app on the site is using the same issuer URL. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409059 | Column error | An unknown column asset error occurred. |
| 409 | 409061 | Unknown column delete error | An unknown error occurred and the column could not be deleted. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| datasource-id | The ID of the data source to remove the revision for. |
| revision-number | The revision number of the data source to remove. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user attempted to remove a data source revision, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403055 | Cannot delete head revision | The head (first) version cannot be deleted. To remove the data source, call Delete Data Source. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| database-id | The unique ID of the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409047 | Database delete error | An unknown error occurred and the database asset could not be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group set. |
| group-set-id | The ID of the group set to remove the group from. |
| group-id | The ID of the group to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400032 | Deletion failed | A problem arose that prevented the group from being removed from the group set. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type wasn’t DELETE. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond to an existing user. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| idp-configuration-id | The ID of the configuration. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the allow rule to remove projects from. |
| mode | Required. The operation mode; must be remove for this method. |
| project | Required. One or more project IDs to remove. Each entry requires an id. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Missing or empty project list, or invalid project or rule UUID. |
| 400 | 503910 | Invariant violation | Attempted to remove projects from a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503922 | Unexpected server error | An unexpected error occurred while removing projects. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409054 | Unknown table delete error | An unknown error occurred and the table could not be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to remove the user from. |
| user-id | The ID of the user to remove. |
| user-id |
The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site . Beginning in API 3.21, you can bulk remove users from a group by specifying multiple user IDs. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400032 | Deletion failed | A problem arose that prevented the user from being removed from the site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user name in the URI doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group name in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that is associated with the user you want to remove from the identity pool. |
| user-id | The ID of the user to remove from the identity pool. |
| idpool-uuid | The ID of the identity pool to remove the user from. You can get the identity pool ID by calling the List Identity Pools endpoint in the Tableau REST OpenAPI. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 429 | 429003 | Can't remove user | There was a problem and the user couldn't be removed from the identity pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to remove. |
| mapAssetsTo |
Optional. When included in the URI path, the contents owned by the user being removed are transferred to another user. If the user owns subscriptions and no mapAssetsTo is provided, the value of the owner is changed to unknown user. If a user owns only subscriptions, you can delete them from either server or site without having to set mapAssetsTo a different user.
If a user owns only subscriptions, you can delete the user from the server or site without setting this value. Note: Even though both server administrators and site administrators can call this method, only server administrators can use the mapAssetsTo parameter to reassign content ownership. Site administrators can't use this parameter value. You must be a server administrator to remove a user who still owns content on Tableau Server. |
| new-user-id | The ID of a user that receives ownership of contents of the user being remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Deletion failed | Some other problem arose that prevented the user from being removed from the site. |
| 403 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 409 | 409003 | User asset conflict | The specified user still owns content on Tableau Server and cannot be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| workbook-id | The ID of the workbook to remove the revision for. |
| revision-number | The revision number of the workbook to remove. To determine what versions are available, call Get Workbook Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user attempted to remove a data source revision, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403055 | Cannot delete head revision | The head (first) version cannot be deleted. To remove the workbook, call Delete Workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404024 | Workbook revision not found | The revision number in the URI doesn't correspond to an existing workbook revision. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasourc-luid | The LUID for the data source. |
| flow-luid | The LUID for the flow. |
| project-luid | The LUID for the project. |
| view-luid | The LUID for the view. |
| workbook-luid | The LUID for the workbook. (Optional, but can be included for compatibility with older versions.) |
| workbook-id | The <workbook> element is not required, but can be included for compatibility with earlier versions of the REST API. If the <workbook> element is included, the workbook-id value must match the workbook ID in the URI. Any other attributes in the <workbook> element are ignored. |
| user-id | The ID (not name) of the user to add permissions for. |
| group-id | The ID (not name) of the group to add permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a workbook resource. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, CreateRefreshMetrics, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to set permissions on the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user ID in the request body doesn't correspond to an existing user. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the ID doesn't correspond to an existing view. |
| 404 | 404012 | Group not found | A group ID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The specified capability doesn't correspond to a defined capability. This can apply to either an invalid capability name or a capability other than Allow or Deny for any mode value. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | The request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| site-luid |
The LUID for the site. |
| project-luid |
The LUID for the project. |
| user-luid | The LUID of the user to add default permissions for. |
| group-luid | The LUID of the group to add permissions for. |
| capability-name |
The capability to assign. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, SaveAs, Read (view), and Write. For more information, see Permissions. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The capability in the URI is invalid for a data source. Valid capabilities for a workbook are AddComment, ChangeHierarchy, ChangePermissions, Delete, ExportData, ExportImage, ExportXml, Filter, Read (view), RunExplainData, ShareView, ViewComments, ViewUnderlyingData, WebAuthoring, and Write. Valid capabilities for a data source are ChangePermissions, Connect, Delete, ExportXml, Read (view), and Write. For detailed information about capabilities for each content type, see Capabilities. |
| 400 | 400042 | Malformed permissions qualifier | The request body includes a <workbook> or <datasource> element. |
| 403 | 403004 | Permissions setting forbidden | A non-administrator user called this method but doesn't have permission to add permissions on the project. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | A user LUID in the request body as the grantee doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project LUID in the URI doesn't correspond to an existing project. |
| 404 | 404009 | Project ID mismatch | A project LUID specified in the URI doesn’t match the project ID specified in the request body. (You don’t have to specify a project ID in the request body.) |
| 404 | 404012 | Group not found | A group LUID in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not found | The capability in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | The request type wasn’t POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the Recycle Bin. |
| content-type | Content type in plural form: workbooks, datasources, flows, or projects. |
| content-id | The LUID of the recycle bin content item to restore. |
| project-id | The LUID of the project to restore the content to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | Check the request body and query string parameters. |
| 401 | 401000 | No auth credentials | Check the authorization header. |
| 401 | 401002 | Invalid auth credentials | Session expired or invalid. |
| 403 | 403004 | Operation on resource unauthorized | Check user permission. |
| 403 | 403008 | Insufficient site storage remaining | Restore would exceed site storage quota. |
| 403 | 403157 | Feature disabled | Recycle Bin disabled. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404003 | Unknown resource | Requested content item not found. |
| 405 | 405000 | Method not allowed | Request type unrecognized for this method. |
| 406 | 406000 | Unacceptable media type | Bad Accept: header. |
| 409 | 409004 | Invalid parameter | Parameter type-mismatched, unknown content type, or malformed LUID. |
| 429 | 429000 | Too many requests | Request throttled. |
| 500 | 500000 | Internal server error | Unknown error. |
| 503 | 500001 | Internal service error | Internal service error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Revoke server admin tokens forbidden, | The user does not have the server administrator permissions required to call this method. |
| 404 | 404000 | Server not found | The Tableau Server in the URI doesn't correspond to an existing server. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user. The user LUID is returned after you successfully authenticate to the Tableau REST API. |
| pat-name | The name of the PAT you want to revoke. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The credentials token provided in the request header was invalid or has expired. |
| 403 | 403004 | Forbidden | You can only revoke PATs that are yours. |
| 403 | 403010 | Cross-site access is forbidden | You're a site admin and can't revoke a PAT when you're not the site admin for all sites the PAT owner is a member of. |
| 404 | 404051 | Personal access token not found | The PAT couldn't be revoked because it does not exist. |
| 405 | 405000 | Not supported | This error can occur for the following reasons:
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the extract refresh task that you want to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400047 | Extract refresh error | The task specified is not an extract refresh task. |
| 400 | 409090 | Extract operation not allowed | The extract operation is not allowed for the asset that the task refreshes. |
| 403 | 403004 | Operation on resource unauthorized | The user is not authorized to run the task. |
| 403 | 409082 | Run now disabled | The Run Now setting is disabled for the site. |
| 404 | 404003 | Unknown resource | The task ID in the URI doesn't correspond to an existing task. |
| 404 | 404049 | Virtual connection not found | The virtual connection that the task refreshes no longer exists. |
| 405 | 405000 | Method not allowed | The request type was not POST. |
| 409 | 409093 | Operation already in queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| flow-id |
The ID of the flow to add to the schedule. This will include all the output steps in the flow and any output steps created in the future. |
| flow-outputstep-id |
The ID of the output steps you want to run. This parameter is optional. If you don't specify the output steps, all the output steps in the flow will be included. You can specify one or more output steps. Use the List Metrics for Site - Retired in API 3.22 method to get the list of flow-outputstep-ids. |
| flow-run-mode |
The mode to use for running this flow, either full or incremental. This parameter is optional. If you don't specify an option the run mode will be full. The flow must be configured with incremental options on the input nodes to refresh incrementally. |
| parameter-id |
The ID of the flow parameter. Use the List Metrics for Site - Retired in API 3.22 method to get the flow parameter ID. A parameter is a global placeholder value such as a number, text value, or boolean value that can replace a constant value in a flow. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| overrideValue |
The run-time value for the flow parameter. You must specify this if the parameter is required. Use the List Metrics for Site - Retired in API 3.22 method to see if the parameter is required and to get a list of allowed values if the parameter is expecting a value from an enumerated list. Note: Parameters are optional and only relevant for flows that contain parameters and the parameter setting is enabled. For more information, see Run flows with parameters. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400132 | Invalid flow run mode | The specified flow run mode is not valid. |
| 400 | 400148 | Invalid parameter override value | The run-time value specified is not valid. |
| 400 | 400149 | Parameter override value missing | The run-time value for the parameter was not specified and is required. |
| 403 | 403149 | Flow cannot be run | The flow parameter setting is disabled on the site preventing the flow run. |
| 403 | 403150 | Flow cannot be run | The flow cannot be run because flow parameters contain parameter domain type "any" but the Allow parameters that can accept any input setting is disabled on the site. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404043 | Flow parameter not found | The parameter ID specified in the request body does not match any of the existing parameters for this flow. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that the user is a member of. |
| task-id | The ID of the flow run task that you want to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400084 | Flow run task error | The task specified is not a flow run task. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| linked-task-id | The ID of the linked task to run. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400153 | Generic error | Unable to run the linked task for some reason other than the ones specified below. |
| 403 | 403155 | Linked task cannot be run | The linked task setting is disabled on the site. |
| 404 | 404045 | Linked task not found | The linked task ID in the URI doesn't correspond to an existing linked task. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409082 | Run now forbidden | Run now setting has been disabled. |
| api-version |
The version of the API to use, such as |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| personal-access-token-name |
The name of the personal access token when signing in with a personal access token. The token name is available on a user’s account page on Tableau server or online. |
| personal-access-token-secret |
The secret value of the personal access token when signing in with a personal access token. The value of the secret is available only in the dialog that appears when a user creates a personal access token as described in the Tableau Help. |
| username |
The name of the user when signing in with username and password. The name and password in the <credentials> element can represent any user
in the specified site. If the user is not an administrator, they might have limited permissions to perform subsequent operations.
Note: If the server is configured to use Active Directory authentication, and if the user name is not unique across domains, you must include the domain as part of the user name (for example, domain_name\Adam). |
| password | The password when signing in with username and password. |
| json-web-token | A JSON Web Token (JWT) associated with a Tableau connected app or unified access token (Tableau Cloud only).
Tableau connected apps JWT: If using Tableau connected apps, the JWT uses a shared secret provided by the Tableau connected app and signed by your external application. Depending on the method used to create the connected app, a JWT can be generated by the connected app as part of the external app's call to sign in to Tableau. The JWT must include access scopes that determine which REST methods the external app can call. Unified access tokens: Starting in December 2025, if using unified access tokens (UATs), the JWT uses a shared secret as part of the UAT configuration. Added in API 3.27, Tableau Cloud only. |
| is-uat | Enables JWT authorization using a unified access token (UAT) when set to true. Added in API 3.27, Tableau Cloud only. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
For Tableau Server, to specify the default site, omit
For Tableau Cloud, a sign-in request must have a |
| user-to-impersonate | The LUID of a user to sign in as. For impersonation when a system administrator signs in with user name and password. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains both username/password and a personal access token, or contains malformed XML. |
| 401 | 401001 | Login error | The credentials (name or password, or personal access token name or secret) are invalid for the specified site, or the site contentURL is invalid. |
| 401 | 401001 | Login error | Login is blocked because several requests with invalid credentials were made. |
| 401 | 401001 | Login error | The Administrator requires the user to update their password. |
| 401 | 401001 | Login error | The password has expired. |
| 401 | 401009 | Login error | The request body is missing or empty. |
| 405 | 405000 | Invalid request method | Request type was not POST.
If you are signing in to a Tableau Cloud site, this error may be caused by leaving the pod name out of the server address in the URI. The error can also be caused by attempting to make a request to a SSL-protected server using HTTP, rather than HTTPS. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
For Tableau Server, to specify the default site, omit
For Tableau Cloud, a sign-in request must have a |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authentication credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authentication credentials were provided. |
| 401 | 401003 | Switch site error | There was a problem switching sites. The site might be unavailable or is not found. |
| 403 | 403070 | Cannot switch to the same site | The site specified as the destination site is also the current site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| site-id | The ID of the site that contains the webhook. |
| webhook-id | The ID of the webhook. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-luid | The LUID of the view to be removed from the list of views hidden from recommendation for a user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The content ID in the URI doesn't correspond to an existing content of the requested type. |
| 404 | 404035 | Recommendation not found | A hidden recommendation for the given content ID was not found. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| site-id | The ID of the site that contains the webhook to be updated. |
| webhook-id | The ID of the webhook. |
| webhook-name | This is required. A name for the webhook. |
| api-event-name | webhook-source-api-event-name |
You must specify one of these attribute values. The name of the Tableau event that triggers your webhook. The event name must be one of the supported events listed in the Trigger Events table. The event and webhook-source use different name values for the same event. Recommended: Use the event attribute of the webhook to specify the triggering API event for the webhook. The webhook-source element serves the same purpose but is being deprecated in future versions of Tableau webhooks. If both events and webhook-source are specified, their events specified must match. If either are specified, with the other being NULL, then the specified event becomes the webhook trigger, whether the element containing the event name is event or webhook-source. |
| url | (Optional) The destination URL for the webhook. The webhook destination URL must be https and have a valid certificate. |
| webhook-enabled-flag | (Optional) Boolean. If true (default), the newly created webhook is enabled. If false then the webhook will be disabled. |
| reason-for-disablement |
The reason a webhook is disabled.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400127 | Bad request | statusChangeReason was provided with isEnabled = true |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| pool-id | The unique identifier (UUID) of the pool to update. |
| name | Required. New display name for the pool, 1–80 characters, unique on the site (excluding the current pool). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 / 400929 | Invalid pool ID, missing name, or duplicate name | Pool ID must be valid UUID; name required, 1–80 characters, unique (excluding current pool). |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503901 | Unexpected server error | An unexpected error occurred while updating the pool. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| task-id | The LUID of the extract refresh task. Use Get extract refresh tasks on site to find tasks by name. |
extractRefresh type
|
enumeration: The type of extract refresh being scheduled. Valid values include:
|
||||||||||
workbook id or datasource id or virtualConnection id |
LUID: The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. | ||||||||||
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
||||||||||
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
||||||||||
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
||||||||||
schedule frequency
|
enumeration: The scheduled frequency for triggering the extract refresh. Valid values include:
|
||||||||||
frequencyDetails start
|
time: If the schedule frequency is Daily, Weekly, or Monthly, then start is the time of day on
which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The request did not include a valid schedule payload. |
| 400 | 409004 | Invalid parameter | A value in the request is invalid or missing. This includes an invalid or missing schedule or interval value, or start and end times that are not valid for the schedule. For hourly and daily schedules that use hour intervals, the difference between start and end must be a multiple of one hour. This error also includes transactionLevel sent for a task that is not a virtual connection task, a startingItemIds entry that is not a valid ID, or more startingItemIds entries than the maximum allowed per request. |
| 400 | 400225 | Duplicate table ID | startingItemIds contains the same table ID more than once. |
| 400 | 400223 | Table not found | A table ID in startingItemIds is not in the virtual connection's active revision. |
| 400 | 400224 | Table not in extract mode | A table ID in startingItemIds refers to a table that is in live mode. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request. |
| 403 | 403200 | Virtual connection task forbidden | The user cannot see, or cannot manage or refresh the extract of, the virtual connection that the task refreshes. |
| 404 | 404026 | Task not found | The task does not exist, is not an extract refresh task, or targets content that no longer exists. |
| 404 | 404023 | Schedule not found | The task's existing schedule could not be found while merging the new schedule values. |
| 405 | 405000 | Method not allowed | The site is not on Tableau Cloud, or the task refreshes a virtual connection and virtual connection custom-schedule tasks are disabled for the site. |
| 409 | 409130 | Task state invalid | The stored virtual connection task is in an unexpected state and must be repaired or recreated. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| column-id | The unique ID of the column asset. |
| new-description-value | (Optional) Custom text to describe the column. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Column error | An unknown table asset error occurred. |
| 409 | 409057 | Column update error | An unknown error occurred and the table asset could not be updated. |
| 409 | 409058 | Column update forbidden | A user without "write" permissions to the table asset attempted an update. |
| 409 | 409066 | Column not found | The requested column asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| client-id | The unique ID of the connected app. |
| name | (Optional) The new name of the connected app. |
| enabled | (Optional) Controls whether the connected app is enabled or not. Value can be "true" or "false". If the state is not specified, the connected app is set to "false" and not enabled by default. |
| project_id |
(Optional, embedding workflows only) The ID of the project that the connected app's access level is scoped to. To get the project ID, see Query Projects. You can specify one project, multiple projects, and all projects on a site.
Note: The stand-alone projectId attribute will be retired in a future release so we recommend using projectIds attribute instead. |
| domainsafelist |
(Optional, embedding workflows only ) A list of domains the connected app is allowed to be hosted. Specify one or more URLs, separated by spaces, using a format described in Domain allowlist rules in the Tableau Server Help or Domain allowlist rules in the Tableau Cloud Help. Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. For example: |
| unrestrictedEmbedding | (Optional, embedding workflows only) Controls whether the connected app can be hosted on all domains. If "true" value is specified, the connected app can trust and connect to all domains. If "false" value is specified, the connected app can only be hosted on the domains specified in the <domainSafelist> attribute. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 400 | 400143 | Generic connected app error | The connected app could not be deleted for some other reason than those specified in this table. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404041 | Connected app not found | The requested connected app could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
customView name | (Optional) string The new name of the custom view that replaces the existing one. |
owner id | (Optional) LUID The LUID of the new owner of custom view that replaces the existing one. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to update. |
| connection-id | The ID of the connection. To determine what connections are available for a data source, call Query Data Source Connections. |
| upload-session-id | The upload session ID. A user-generated identifier that is unique to a request. If the server receives more than one request with the same ID within 24 hours, all subsequent requests will be treated as duplicates and ignored by the server. This can be used to guarantee idempotency of requests. |
| actions-type | (Required) The definition of the operation(s) to perform on the data in the target hyper file. |
| source-schema-name | (Optional) The name of the source database schema for the data to be updated. A value is not required unless there are multiple schemas in the database. |
| source-table-name | (Required) The name of the source database table containing the data to be updated. |
| target-schema-name | (Optional) The name of the target hyper file schema of the data to be updated from the source database. A value is not required unless there are multiple schemas in the database. |
| target-table-name | (Required) The name of the table containing the data to be updated in the target hyper file. |
| condition | (Required for insert, upsert, and delete)A declaration that defines a comparison operation between source and target data or between source or target data and a user provided constant. For details and examples, see Update Data in Published Live-to-Hyper Data Sources. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed JSON. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403062 | Update data source multiple connections forbidden | A connection ID is required because the data source has multiple connections. Consider using Update Data in Hyper Connection to specify the connection. (This error does not apply to that Connection method) |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source LUID in the request body doesn't correspond to an existing data source. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404008 | Operation not supported | The operation requested is not supported, the source data for the connection must be a Hyper file/database. |
| 404 | 404020 | Connection not found | No resource was found for the specified connection and data source. (This error does not apply to Update Data in Hyper Data Source) |
| 405 | 405000 | Invalid request method | Request type was not PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| 409 | 409094 | Data update job already exists | A data update job for the datasource is already queued or in progress. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to update. |
| upload-session-id | The upload session ID. A user-generated identifier that is unique to a request. If the server receives more than one request with the same ID within 24 hours, all subsequent requests will be treated as duplicates and ignored by the server. This can be used to guarantee idempotency of requests. |
| actions-type | (Required) The definition of the operation(s) to perform on the data in the target hyper file. |
| source-schema-name | (Optional) The name of the source database schema for the data to be updated. A value is not required unless there are multiple schemas in the database. |
| source-table-name | (Required) The name of the source database table containing the data to be updated. |
| target-schema-name | (Optional) The name of the target hyper file schema of the data to be updated from the source database. A value is not required unless there are multiple schemas in the database. |
| target-table-name | (Required) The name of the table containing the data to be updated in the target hyper file. |
| condition | (Required for insert, upsert, and delete)A declaration that defines a comparison operation between source and target data or between source or target data and a user provided constant. For details and examples, see Update Data in Published Live-to-Hyper Data Sources. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed JSON. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403062 | Update data source multiple connections forbidden | A connection ID is required because the data source has multiple connections. Consider using Update Data in Hyper Connection to specify the connection. (This error does not apply to that Connection method) |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source LUID in the request body doesn't correspond to an existing data source. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404008 | Operation not supported | The operation requested is not supported, the source data for the connection must be a Hyper file/database. |
| 404 | 404020 | Connection not found | No resource was found for the specified connection and data source. (This error does not apply to Update Data in Hyper Data Source) |
| 405 | 405000 | Invalid request method | Request type was not PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| 409 | 409094 | Data update job already exists | A data update job for the datasource is already queued or in progress. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| dataqualitywarning-id | The unique ID of the data quality warning. |
| type |
Type of data quality warning to apply to the asset. To specify the type, use one of the following values:
Note: In Tableau Server 2023.1 and earlier, SENSITIVE_DATA is another type of data quality warning. Starting in Tableau Cloud June 2023 and Tableau Server 2023.3, it's a sensitivity label instead. These values are not case sensitive. |
| status |
(Optional) Controls whether the data quality warning displays. Value can be "true" or "false". If the state is not specified, the data quality warning is set to "true" and is visible by default. |
| message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) A custom message to accompany the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | (Optional) Enables high visibility for the data quality warning when set to "true". Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400109 | Bad request | The request body can't be empty. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| 404 | 404030 | Data quality warning not found | The data quality warning for the requested asset could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
datasource name
|
(Optional) The new name of a the data source. |
project
|
(Optional) The LUID of a project to add the data source to. |
owner
|
(Optional) The LUID of a user to assign the data source to as owner. |
datasource certification-status
|
(Optional) A Boolean value that indicates whether the data source is certified. To learn more about data source certification, see Use Certified and Recommended Data Sources and Tables. |
datasource certification-note
|
(Optional) A note that provides more information on the certification of the data source, if applicable. |
datasource encryptExtracts
|
(Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. |
askDataEnablement
|
This attribute is removed in API 3.12 and later (Tableau Cloud September 2021 / Server 2021.3).
(Optional) Determines if a data source allows use of Ask Data. The value can be
If |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Invalid parameter value | A user attempted to rename a datasource to a name containing only spaces, or to a name with more 255 characters. |
| 400 | 400129 | Invalid Ask Data enablement | The requested enablement setting in the request body does not correspond to the site configuration. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change the owner for the data source. |
| 403 | 403030 | Project update forbidden | A non-administrator user tried to change the project for the data source, but the caller doesn't have Write permission for the project. |
| 403 | 403032 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403141 | Update forbidden | A user attempted to update a data source that they do not have permissions to update. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT or PATCH. |
| 409 | 409015 | Data source name conflict | The data source name in the request already belongs to the specified site. For the purpose of uniqueness checks, data source names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
| connection-luid | The LUID of the connection to update. To determine what connections are available for a data source, call Query Data Source Connections. |
| connection serverAddress | The new server for the connection. |
| connection serverPort | The new port for the connection |
| connection authenticationType | Added in version 3.27.
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| connection userName | The new username for the connection. |
| connection password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| datasource-luid | The LUID of the data source to update. |
| connectionLuids | An array of connection LUIDs in the data source that you are updating. |
| connection serverAddress | The new server for the connection. |
| connection serverPort | The new port for the connection |
| connection authenticationType |
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| connection userName | The new username for the connection. |
| connection password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user attempted to update a data source, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404004 | Data source not found | The data source ID in the URI is unknown. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409093 | Operation already in Queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data-driven alert. |
| data-alert-id | The ID of the data-driven alert. You can obtain this ID by calling Query Data-Driven Alerts. |
| data-alert-subject | (Optional) The string to set as the new subject of the alert. |
| data-alert-frequency | (Optional) The frequency of the data-driven alert: once, frequently, hourly, daily, or weekly. |
| data-alert-owner-id | (Optional) The ID of the user to assign as owner of the data-driven alert. |
| is-public-flag | (Optional) Determines the visibility of the data-driven alert. If the flag is true, users with access to the view containing the alert can see the alert and add themselves as recipients. If the flag is false, then the alert is only visible to the owner, site or server administrators, and specific users they add as recipients. (Optional) Determines the visibility of the data-driven alert. If the flag is true, users with access to the view containing the alert can see the alert and add themselves as recipients. If the flag is false, then the alert is only visible to the owner, site or server administrators, and specific users they add as recipients. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Write forbidden | A user called this method who does not have the required permissions. |
| 403 | 409030 | Updating data-driven alert forbidden | The user is not authorized to update the data-driven alert. |
| 404 | 409023 | Resource Not Found | The data-driven alert ID specified in the URI is invalid. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Resource Not Found | The user ID specified in the request body is invalid. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site asset. |
| database-luid | The LUID of the database asset. |
| certification-status |
(Optional) Certify or remove certification by using the following:
|
| certification-note | (Optional) Custom text to accompany the certification status. |
| new-description-value | (Optional) Custom text to describe the database asset. |
| new-content-permissions |
(Optional) The new permissions setting for the database. You can specify one of the following:
The default permissions setting is ManagedByOwner. These values are case sensitive. |
| new-contact-luid | (Optional) The LUID of the Tableau Server or Tableau Cloud user to associate with the database asset. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404031 | Database not found | The requested database could not be found. |
| 409 | 409045 | Database error | An unknown database asset error occurred. |
| 409 | 409050 | Database update error | An unknown error occurred and the database asset could not be updated. |
| 409 | 409051 | Database update forbidden | A user without "write" permissions to the database asset attempted an update. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The domain to move. |
| newPoolLuid | Required. The UUID of the target Bridge pool. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid domain name, invalid pool ID, domain not found, or pool not found | Domain and pool ID must be valid; domain and pool must exist on the site. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503906 | Unexpected server error | An unexpected error occurred while updating the domain. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| existingDomainName | Required. The current domain name. |
| newDomainName | Required. The new domain name. Must not already exist in the system. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid existing/new domain name, domain not found, or new name exists | Domain names must conform to valid format; existing domain must exist; new name must not already be in use. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 403000 | Insufficient permissions | User does not have Site Administrator role. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503906 | Unexpected server error | An unexpected error occurred while updating the domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| eas-id | The unique ID of the registered EAS. |
| URL | (Optional) The entity id of your identity provider (IdP) or URL that uniquely identifies your IdP. |
| URI |
(Optional) The JSON Web Key (JKWS) of the EAS. |
| name |
(Optional) The name of the connected app. If the name attribute is not specified, the connected app name defaults to "External Authorization Server." This attribute is available starting from API version 3.22 (February 2024). |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Issuer URL missing | The request body contains an empty issuer URL attribute. |
| 400 | 400157 | Unexpected EAS error | There was an unexpected error when updating the connected app. |
| 400 | 400194 | Issuer URL already configured | Another connected app on the site is using the same issuer URL. |
| 403 | 403000 | Admin permissions required | A non-admin user called this method and doesn't have adequate permissions to perform the action. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404047 | EAS not found | The requested EAS could not be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to update. |
| unrestricted-embedding |
(Optional) Specifies whether or not embedding is restricted. When the setting is set to true, Tableau views on this site can be embedded in any domain. When set to false, embedding is blocked for all domains, but you can allow embedding in certain domains using the |
| allow-list |
(Optional) Specifies the domains where Tableau views on this site can be embedded. Use this setting with Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. You can use wildcards in domain names and you can also list multiple domain names separated by spaces. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403500 | The user does not have permission |
Tableau Cloud: Only site administrators can run this method. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| new-project-id | (Optional) The ID of a project to add the flow to. |
| new-owner-id | (Optional) The ID of a user to assign the flow to as owner. The new owner must be the user calling this method. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change the owner for the flow. |
| 403 | 403030 | Project update forbidden | A non-administrator user tried to change the project for the flow, but the caller doesn't have Write permission for the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 409 | 409041 | Flow name conflict | The flow name in the request already belongs to the specified site. For the purpose of uniqueness checks, flow names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| connection-id | The ID of the connection to update. To determine what connections are available for a flow, call Query Flow. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | true to embed the password; otherwise, false. |
| authenticationType | Added in API 3.28.
The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for Alternatively, you can inspect the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403103 | Update forbidden | A non-administrator user tried to update a flow, but the caller doesn't have Write permission. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change connection information for the flow, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow to update. |
| id | The ID of the flow connection to update. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | true to embed the password; otherwise, false. |
| authenticationType |
The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for Alternatively, you can inspect the |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403103 | Update forbidden | A non-administrator user tried to update a flow, but the caller doesn't have Write permission. |
| 403 | 403098 | Owner update forbidden | A non-administrator user tried to change connection information for the flow, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404027 | Flow not found | The flow ID in the URI doesn't correspond to an existing flow. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the flow. |
| flow-id | The ID of the flow. |
| user-id | The ID of the user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403184 | Ownership changes are disabled | On Tableau Server, a machine administrator can use TSM to to enable or disable content ownership changes. For more information, see wgserver.change_owner.enabled in tsm configuration set Options |
| 403 | 403187 | Permission denied | You must be a site administrator, a server administrator, or the flow owner to change the ownership of a flow. |
| 404 | 404061 | Resource not found | The flow id and/or user id can't be found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to update. |
| AsJob-value | A Boolean value that is used if you are importing from Active Directory. Set this value to true to synchronize with Active Directory as a background task, or set this value to
false to synchronize immediately (synchronously). The default is false.
Note: This parameter has no effect if the server is configured to use local authentication. This attribute is available for Tableau Server only. |
| new-group-name | The new name for the group. |
| AD-group-name |
The name of the Active Directory group to synchronize with. This attribute is available for Tableau Server only. |
| AD-domain |
The domain for the Active Directory group. This attribute is available for Tableau Server only. |
| minimum-site-role |
Required if an import element or grantLicenseMode attribute are present in the request. The site role assigned to users who are imported from Active Directory (Tableau Server only) or granted a license automatically using the grant license on-sync or on-login mode. If the requested user name matches an existing user in the group, the user either retains their existing role or are granted the one specified in the request, based on the role that enables the most capabilities. This is true whether the group the user belongs to is imported from Active Directory (Tableau Server only) or local. Site roles that can be assigned, listed from the one enabling the least capabilities to the most, are as follows.
Note: You cannot use the REST API to set a user to be a Tableau Server administrator (ServerAdministrator site role). |
| license-mode |
Optional. The mode for automatically applying licenses for group members. When the mode is onLogin, a license is granted for each group member when they log in to a site. For local groups, the mode can be either onLogin or unset. If the attribute is omitted during an update, the group will use the license grant mode configured prior to the update. A local group configured to use onLogin can switch the mode to unset by updating the group using:
For groups that import an Active Directory domain (Tableau Server only), the grantLicenseMode can be updated to either onSync or onLogin. If the attribute is omitted during an update, the group will use the license grant mode configured prior to the update. The minimum role granted to users through grantLicenseMode is specified in the siteRole attribute of the import element. If that role has less permissions than an existing role assigned to the user, then the user's permissions remain unchanged. |
| on-demand-access |
Optional. A boolean value that is used to enable on-demand access for embedded Tableau content when the Tableau Cloud site is licensed with Embedded Analytics usage-based model or capacity-based model with Cloud+ or Tableau+ edition. Set to true to enable the capability for the group or set to false to disable the capability for the group. For more information about on-demand access, see On-demand access for users in the Tableau Embedding API v3 Help. This attribute is available for Tableau Cloud only starting from API version 3.21 (October 2023). |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400984 | Not licensed | On-demand access can't be enabled if your site is not licensed with the usage-based model or capacity-based usage model with Tableau+ or Cloud+ edition. |
| 403 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 403 | 400019 | Malformed import element | If the body includes an <import> element, it must contain a source, domainName,
and siteRole attribute. If any of these attributes are missing, the element is malformed. In addition, the source attribute
must have a value of ActiveDirectory; otherwise the element is malformed. |
| 403 | 403011 | Active Directory not configured | The request body contains an <import> element is included, but Tableau Server is configured for local authentication. |
| 403 | 403020 | Imported group name update forbidden | The request body contains an <import> element and the value of the name attribute of the <group> element in the request body is different from the name of the group imported into Tableau Server as referenced by the group-id value in the URI. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing site. |
| 404 | 404016 | Domain not found | The request body includes an <import> element, but the specified domain name doesn't exist in Active Directory. |
| 404 | 404017 | Active Directory group not found | The request body includes an <import> element, but no group with the name specified in the <group> element exists in Active Directory. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409009 | Group name conflict | The group name in the request is already in use in the specified site. For the purpose of uniqueness checks, group names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-set-id | The ID of the group set to update. |
| name | The new name for the group set. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t PUT. |
| 409 | 409120 | Group set not found. | The group set ID in the request body doesn't correspond to an existing group set. |
| 409 | 409121 | Group set name conflict | The group set name in the request already belongs to another group set. For the purpose of uniqueness checks, group set names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-luid | The unique LUID of the label asset. |
| label-value-name |
(Optional) The label value name. You cannot change the category when updating a label. Choosing a label value name that's associated with a different category causes an error. See Data Labels in the REST API for a list of built-in label values and categories. Choosing a monitoring quality warning value (extract_refresh_failure or flow_run_failure) causes an error. |
| label-message | (Optional) The message text for the label. In the web interface, this is reflected as a certification note or a data quality warning message. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| active-flag | (Optional) Boolean. If set to true, the label becomes active. If set to false, the label becomes inactive. If omitted, the default is true. |
| elevated-flag | (Optional) Boolean. If set to true, the label becomes elevated. If set to false, the label becomes not elevated. If omitted, the default is false. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400103 | Generic query label error | An unknown error occurred. |
| 400 | 400109 | Missing payload | The request body is missing a label element. |
| 403 | 403004 | Invalid parameter | Operation on resource unauthorized |
| 404 | 404030 | Label not found | The label LUID doesn't correspond to an existing project. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid, or you are trying to change the label value to one from a different category. This error can also occur if you try to create or change a monitoring quality warning (label values extract_refresh_failure and flow_run_failure). |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| label-category-name | The label category name. URL encode the label category name (as it appears in the Tableau web interface) if it has spaces or non-alphanumeric characters in it. |
| label-category-name |
The label category name. Required, but not does not have to be different from the existing name. Must be 1-128 characters long. (In Tableau Server 2023.3 and earlier, must be 1-24 characters long.) |
| label-category-description |
The label category description. Required, but not does not have to be different from the existing description. Must be 1-500 characters in length. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400190 | Generic update label categories error | An unknown error occurred. |
| 403 | 403004 | Operation on resource unauthorized | You must be an administrator to create, update, or delete label values. |
| 409 | 409004 | Invalid parameter |
|
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The unique LUID of the site asset. |
| asset-type |
The type of asset. Valid asset types are:
|
| asset-luid | The asset LUID. |
| label-value-name |
The label value name. The built-in label value names are:
You can also use custom label value names that an administrator creates. (Custom label values were released with Tableau Cloud June 2023 and Tableau Server 2023.3.) If the request body specifies a label value that is already on the asset, the label on the asset is updated to match the request body. Otherwise, a label is created and attached to the asset. Note: On Tableau Server 2023.3 and earlier, only one label of a category is allowed on an asset. If the request body specifies a label value with the same category as a label already on the asset, the label on the asset is updated to match the request body. Otherwise, a label is created and attached to the asset. See Data Labels in the REST API for a list of built-in label values and categories. Choosing a monitoring quality warning value (extract_refresh_failure or flow_run_failure) causes an error. |
| label-message |
(Optional. Was required in Tableau Server 2023.3 and earlier.) The message text for the label. In the web interface, this is reflected as a certification note or a data quality warning message. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| active-flag | (Optional) Boolean. If set to true, the label becomes active. If set to false, the label becomes inactive. If omitted, the default is true. |
| elevated-flag | (Optional) Boolean. If set to true, the label becomes elevated. If set to false, the label becomes not elevated. If omitted, the default is false. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400123 | Unkown error | The metric could not be updated for an unknown reason. |
| 403 | 403119 | Owner update forbidden | The user does not have administrator permissions to change the owner for the metric. |
| 403 | 403120 | Project update forbidden | The user doesn't have Write permission for the project they are trying to move the metric to. |
| 403 | 403118 | Name update forbidden | The user does not have administrator permissions to change the name for the metric. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing owner. |
| 404 | 404004 | Metric not found | The metrice ID in the URI doesn't correspond to an existing metric. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409015 | Metric name conflict | The metric name in the request already belongs to the specified site. For the purpose of uniqueness checks, metric names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
mobileSecuritySettings name
|
(Optional)Enum. The device condition addressed by a security setting element. Supported values are:
|
mobileSecuritySettings enabled
|
(Optional) Boolean. If true, enables the Tableau mobile client to detect and respond to
the condition described in the setting's name. The enabled attribute for the Android
or iOS configuration element of the setting must also be true for detection on that type of device.
If mobileSecuritySettings enabled = false, the Android and iOS configuration element attribute
settings will be ignored.
|
mobileSecuritySettings androidConfig / iosConfig
|
(Optional)Element. Security settings specific to the platform of the mobile device hosting the Tableau client for the setting being configured. Required attributes of this element are:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing, incomplete, or is malformed XML. Invalid values for enabled, iosConfig, androidConfig, severity, or enabled attributes are possible causes. |
| 400 | 400174 | Mobile security settings error | An uknown mobile security settings error has occurred. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user does not have the required administrtor permissions. |
| 403 | 403157 | Forbidden | Mobile security settings are not enabled on the server. |
| 409 | 409004 | Invalid setting | A mobile security setting enabled, name or other value is missing or malformed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| trigger-id | The unique ID of the monitoring quality warning. |
| type |
Type of monitoring quality warning. To specify the type, use one of the following values:
These values are not case sensitive. |
| status |
Monitoring status. Values can be "true" or "false". If set to "true", the data source is monitored for extract refresh failures or the flow is monitored for flow run failures). If an extract refresh or flow run failure occurs, the specified data quality warning is attached to the data source or flow (depending on type). The data quality warning is removed when the extract refresh or flow run is successful. For more information about monitoring quality warnings, see the monitoring quality warning section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| message | (Optional) A custom message for the data quality warning. You can format the message with italics, bold text, links, images, and more. Use HTML character entities to match the special characters in the formatting guide that's normally visible as a tooltip in the UI. |
| severity | High visibility status of the data quality warning. Values can be "true" or "false". For more information, see the "Visibility" section of the "Set a Data Quality Warning" topic in the Server Help or Cloud Help. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400137 | Generic quality warning trigger error | The monitoring quality warning could not be updated for some other reason than those specified below. |
| 403 | 403004 | Unauthorized operation. | Insufficient permissions to perform the operation. |
| 409 | 409004 | Invalid parameter | One or more values in the request body are invalid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
idpConfigurationId
|
(Required)
Starting in API 3.24, multiple authentication configurations can be created and enabled at the same time. Include the idpConfigurationId to identify which configuration to update. If no IdPConfigurationId is specified, the initial (default) OIDC configuration is updated if it exists. To get the idpConfigurationId value, use the List Authentication Configurations for Site method. For more information, see Authentication in the Tableau Cloud Help. |
enabled
|
(Required) Controls whether the configuration is enabled or not. Value can be "true" or "false". For example "true". |
clientId
|
(Required) The client ID from your IdP. For example, "0oa111usf1gpUkVUt0h1". |
clientSecret
|
(Required) The client secret from your IdP. |
authorizationEndpoint
|
(Required) Use the authorization endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (authorization_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/authorize". |
tokenEndpoint
|
(Required) Use the token endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the token endpoint (token_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/token". |
userinfoEndpoint
|
(Required) Use the user information endpoint from your IdP. To find the value, enter the configuration URL in a browser and obtain the user information endpoint (userinfo_endpoint) from the details that are returned. For example, "https://myidp.com/oauth2/v1/userinfo". |
jwksUri
|
(Required) Use the JWK set URI from your IdP. To find the value, enter the configuration URL in a browser and obtain the JWK set URI endpoint (jwks_uri) from the details that are returned. For example, "https://myidp.com/oauth2/v1/keys". |
idpConfigurationName
|
(Optional) The name of the configuration. Starting in API 3.24, you can create and enable multiple authentication configurations. Authentication configurations that were enabled before API 3.24 are given a name and its name can't be updated. For example, "Initial OIDC". If this configuration was created after API 3.23 and no name is provided for the update, the name will stay the same. For more information, see Authentication in the Tableau Cloud Help. |
endSessionEndpoint
|
(Optional) If single logout (SLO) is enabled for the site, which is done through Tableau Cloud site UI, you can specify the configuration URL or the end session endpoint from your IdP. For example, "https://myidp.com/oauth2/v1/logout". |
allowEmbeddedAuthentication
|
(Optional) Controls how users authenticate when accessing embedded views. Value can be "true" or "false". Default value is "false", which authenticates users in a separate pop-up window. When set to "true", users authenticate using an inline frame (IFrame), which is less secure. |
customScope
|
(Optional) Specifies a custom scope user-related value that you can use to query the IdP. For example, "openid, email, profile". |
prompt
|
(Optional) Specifies whether the user is prompted for re-authentication and consent. For example, "login, consent". |
clientAuthentication
|
(Optional) Token endpoint authentication method. Value can be "client_secret_basic" or "client_secret_post". Default value is "client_secret_basic". |
essentialAcrValues
|
(Optional) List of essential Authentication Context Reference Class values used for authentication. For example, "phr". |
voluntaryAcrValues
|
(Optional) List of voluntary Authentication Context Reference Class values used for authentication. |
emailMapping
|
(Optional) Claim for retrieving email from the OIDC token. Default value is "email". |
firstNameMapping
|
(Optional) Claim for retrieving first name from the OIDC token. Default value is "given_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
lastNameMapping
|
(Optional) Claim for retrieving last name from the OIDC token. Default value is "family_name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "false". |
fullNameMapping
|
(Optional) Claim for retrieving name from the OIDC token. Default value is "name". You can use this attribute to retrieve the user’s display name when useFullName attribute is set to "true". |
useFullName
|
(Optional) Controls what is used as the display name. Value can be "true" or "false". Default value is "false", which uses first name (firstNameMapping attribute) and last name (lastNameMapping attribute) as the user display name. When set to "true", full name (fullNameMapping attribute) is used as the user display name. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| project-id | The ID of the project to update. |
| publish-value | (Optional) A Boolean value that specifies whether to publish the sample workbooks provided by Tableau to the project when you update the project. When the publish-value is not specified in the request, or the publishSamples parameter is missing, no samples will be published. To publish the sample workbooks, set publishSamples parameter to true. This option is equivalent to the tabcmd command-line utility option, publishsamples. For more information, see tabcmd. |
project id
|
(Required) The LUID of the project being updated. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults Windows | Linux. |
project name
|
(Optional) The new name for the project. |
project description
|
(Optional) The new description for the project. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To update a project without changing its placement in the project hierarchy, omit the parentProjectId attribute. To move a project to the top of the project hierarchy, provide an empty string ("") for the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
project contentPermissions
|
(Optional) This value controls user permissions in a project, however, if the project is nested within a project with more restrictive policies, it will inherit those permissions and these settings will have no effect. The functional permissions of a project, including those it inherits, are available in value of contentPermission in the response body from a request to create, update, or query a project.
The default is ManagedByOwner. For more information, see Lock Content Permissions. |
project parentProjectId
|
(Optional) The new identifier of the parent project. Use this option to create or change project hierarchies. To update a project without changing its placement in the project hierarchy, omit the parentProjectId attribute. To move a project to the top of the project hierarchy, provide an empty string ("") for the parentProjectId attribute. For information about how permissions are evaluated in project hierarchies, see Project Permissions States and Defaults. |
owner id
|
The LUID of the user that owns the project. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Bad request | The request cannot set content permissions to LockedToProjectWithoutNested for a REST API version lower than 3.8. |
| 403 | 403005 | Update forbidden | Attempt to rename the default project, which cannot be renamed. |
| 403 | 403008 | Insufficient storage on site | The samples could not be published because there is not enough storage space remaining on the server to accommodate the samples. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the project, but does not have permissions to update the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404009 | Project ID mismatch | The request body contains a project ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't correspond to an existing project. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409006 | Project name conflict | The project name in the request already belongs to the specified site. For the purpose of uniqueness checks, project names are case-insensitive. |
| api-version | The version of the API to use. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| routing-rule-id | The unique identifier (UUID) of the routing rule to update. |
| domain | Optional. A new domain for the rule. |
| isBlocked | Optional. Changes the rule between a block rule (true) and an allow rule (false). |
| poolId | Required when transitioning to an allow rule. The UUID of the target Bridge pool. Must be omitted when the rule is, or becomes, a block rule. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 503909 | Validation failed | Empty update (no attributes supplied), invalid routing-rule-id or poolId UUID, blank or invalid domain, or poolId missing when transitioning to an allow rule. |
| 400 | 503910 | Invariant violation | poolId supplied while the rule is, or becomes, a block rule. |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 403 | 503923 | Permission denied | Caller is not a site administrator for the site. |
| 404 | 503915 | Routing rule not found | No routing rule exists with the given ID on this site. |
| 409 | 503911 | Duplicate routing rule | The update would collide with an existing rule for the same domain and project scope. |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | 503917 | Unexpected server error | An unexpected error occurred while updating the rule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| name | (Required) Name of the SCIM configuration. |
| idpConfigurationId |
(Required) Authentication configuration to associate with the SCIM configuration. Starting in API 3.26, you can have multiple SCIM configurations. Include the idpConfigurationId to identify which configuration to update. If a SCIM token is associated with SCIM configuration, updating the IdPConfigurationId deletes the SCIM token. Ensure the SCIM token's secret is removed from the identity provider's (IdP's) SCIM configuration. To get the idpConfigurationId, see List Authentication Configurations for Site. Starting in API 3.28, you can associate OIDC or Google authentication with SCIM. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Bad Request | The content of the request body contains unsupported attributes, the SCIM configuration name already exists, or the idpConfigurationId is missing or not valid. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | The SCIM configuration can only be updated by the user who created the SCIM configuration. |
| 404 | 404050 | Resource Not Found | The SCIM configuration does not have an associated SCIM token. |
| 404 | 404057 | Resource Not Found | The SCIM configuration UUID is not valid or does not exist on this site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| domain-id | The integer ID of the of the Active Directory domain being updated. Find a domain's ID using List Server Active Directory Domains. |
| new-domain-name | A new full domain name you are using to replace the existing one. |
| new-domain-nickname | A new domain nickname you are using to replace the existing one. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404032 | Resource not found | The requested domain ID in the URI doesn't correspond to an existing domain. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| schedule-id | The ID of the schedule to update. To determine what schedules are available, call List Server Schedules. |
| new-schedule-name | The new name to give to the schedule. |
| new-schedule-priority | An integer value between 1 and 100 that determines the default priority of the schedule if multiple tasks are pending in the queue. Lower numbers have higher priority. |
| new-schedule-execution-order | Parallel to allow jobs associated with this schedule to run at the same time, or
Serial to require the jobs to run one after the other.
|
| new-schedule-frequency | The granularity of the schedule. Valid values are:
The value you provide for schedule-frequency determines whether you must include an end-time value, and what
is required in the contents of the <intervals> element. |
| new-state | Active to enable the schedule, or
Suspended to disable it.
|
| start-time | The time of day on which scheduled jobs should run (or if the frequency is hourly, on which they should start being run), in the format HH:MM:SS (for example, 18:30:00).
This value is required for all schedule frequencies.
The entered time will be applied based on the time zone of your server. |
| end-time | If the schedule frequency is Hourly, the time of day on which scheduled jobs should stop being run, in the format HH:MM:SS (for example, 23:30:00). Hourly jobs will occur at the specified intervals between the start time and the end time.
For other schedule frequencies, this value is not required; if the attribute is included, it is ignored.
The entered time will be applied based on the time zone of your server. |
| interval-expression | A value that specifies the interval between jobs associated with the schedule. The value you specify here depends on the
value of schedule-frequency.
The interval expression is only one of the following:
You can specify an interval in hours or minutes, but not both.
If the schedule frequency is
The interval expression is You can specify multiple <interval> elements to indicate that scheduled jobs should run on multiple days during the week. Note: Updating a schedule without specifying days of the week will reset any existing weekly interval to include all 7 days. If you need the job you are updating to remain scheduled on selected days, make sure to include that information in your update request.
The interval expression is Note: If you want to specify multiple days in the month, you can do this using the web interface. You cannot create or update such a monthly schedule using REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400008 | Invalid Parameter | One of the parameters in the request body is invalid. |
| 400 | 400071 | Error updating schedule | The schedule couldn't be updated for an unspecified reason. |
| 404 | 404023 | Schedule not found | The specified schedule doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409021 | Schedule name conflict | The schedule name in the request already belongs to an existing schedule. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to update. |
| new-site-name | (Optional) The new name of the site. |
| new-content-url | (Optional) The new site URL. This value can contain only characters that are valid in a URL. These characters include letters (A-Z, a-z), digits (0-9), hyphens ("-"), and underscores ("_") If you provide invalid characters, those characters are stripped from the URL and the site is created anyway. For example, if you try to set the site URL as test.site, it's converted to testsite and returned in the response. The response's site URL namespace is the authoritative source of truth for the new site URL. |
| new-admin-mode | (Optional) Specify ContentAndUsers to allow site administrators to use the server interface and tabcmd commands to add and remove users. (Specifying this option doesn't give site administrators permissions to manage users using the REST API.) Specify ContentOnly to prevent site administrators from adding or removing users. (Server administrators can always add or remove users.)
Note: You cannot set adminMode to ContentOnly and also set a userQuota value. The default value is ContentAndUsers. |
| new-state | (Optional) Active to set the site to active mode, or Suspended to suspend the site. Default is Active. |
| new-storage-quota | (Optional) The new maximum amount of space for the new site, in megabytes. If you set a quota and the site exceeds it, publishers will be prevented from uploading new content until the site is under the limit again. |
| new-disable-subscriptions | (Optional) true to prevent users from being able to subscribe to workbooks on the specified site. Default is false. |
| revision-history-enabled | (Optional) true if the site maintains revisions for changes to workbooks and data sources; otherwise, false. The default is false. |
| revision-limit | (Optional) An integer between 2 and 10000 to indicate a limited number of revisions for content. Setting this value to -1 removes any value that was set previously, and effectively removes any limit to the number of revisions that are maintained. |
| allow-subscription-attachments-flag |
(Optional) If true, and subscription to attachments is enabled on the server, then users can create subscriptions that send an email with images of a workbook or view in a PDF attachment. The default value is true. If subscription to attachments is disabled in the server settings, then making this value true will have no effect. Default is true. |
| subscribe-others-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for view owners to subscribe other users to a view. Default is true. |
| editing-flows-enabled-flag |
(Optional) Specify true to enable and false to disable editing flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means editing flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| scheduling-flows-enabled-flag |
(Optional) Specify true to enable and false to disable scheduling flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means scheduling flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| flows-enabled-flag |
The flowsEnabled attribute is deprecated as of API 3.10. |
| guest-access-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for guests, users without specific site access permission, to access the site. Default is false. |
| cache-warmup-enabled-flag |
This attribute was removed in API 3.19 and later. For current methods to improve Tableau performance see, View Acceleration. (Optional) Set this value to true to enable cache warm up to improve workbook load times. Set the value to false to disable cache warmup. Default is true. |
| commenting-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for user comments on views in the site. Default is true. |
| extractEncryptionMode |
(Optional) Specify enforced, enabled, or disabled. Default is disabled. For more information, see Extract and Encryption Methods. |
| dataAccelerationMode |
(Optional) Specify enable_selective or disabled. The default is enable_selective, which lets you update particular workbooks to turn on data acceleration using the accelerationEnabled attribute. For more information, see Data Acceleration (Retired). Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| requestAccessEnabled | (Optional) Specify true to allow users send access request emails to content or project owners. Specify false if you don't want users to be able to request access. The default is false. |
| runNowEnabled |
(Optional) Specify true to allow users to run flows, extract refreshes, and schedules manually. Specify false if you don't want users to be able to run flows, extract refreshes, and subscriptions manually. The default is true. If this attribute is set to false, the following methods will fail and will return an error message. |
|
Licensing attributes
|
|
|
User quota all-license-limit-total |
(Optional) The maximum total number of users with Creator, Explorer, or Viewer licenses currently allowed on a site. On-premises server administrators can set An administrator can revert the license limit to number of activated licenses on the site, or shift control of license
limits to tiered capacities values, by omitting |
|
Tiered capacity attributes creator-license-limit
|
(Optional) The maximum number of licenses for users with the Creator, Explorer, or Viewer role, respectively, allowed on a site. On-premises server administrators can set tiered capacity attributes with the following rules: the number can't exceed the number of licenses of a given type that are activated for the site; a value must be supplied for every tiered capacity license type every time any one or more of them is set. A value of -1 removes the administrator-applied limit for a license type, and reverts the limit to the number of activated licenses configured for the role. Setting the value of a tiered capacity to -1 will not automatically increase the limit if more licenses are purchased and activated for the role in the future. To use role-specific license limits, the |
|
data-alerts-enabled-flag |
(Optional, boolean) If true, data alerts are enabled on the site. Default value is true. |
|
commenting-mentions-enabled-flag |
(Optional, boolean) If true, mentions for commenting are enabled. Default value is true. |
|
catalog-obfuscation-enabled-flag |
(Optional, boolean) If true, catalog obfuscation is enabled on the site. Default value is true. |
|
flow-auto-save-enabled-flag |
(Optional, boolean) If true, flow auto save is enabled on the site. Default value is true. |
|
run-now-enabled-flag |
(Optional, boolean) If true, run now for schedules is enabled which allows non-administrators to run schedules manually. Default value is true. |
|
metrics-content-type-enabled-flag |
(Optional, boolean) If true, the metrics content type is enabled on the server. Default value is false. |
|
notify-site-admins-on-throttle-flag |
(Optional, boolean) If true, site admins will be notified if their background jobs are being throttled. Default value is false. |
|
authoring-enabled-flag |
(Optional, boolean) If true, web authoring is enabled. Default value is false. |
|
custom-subscription-email-enabled-flag |
(Optional, boolean) If true, sending custom subscription email is enabled. If set to false after being set true, the current custom subscription email is voided. Default value is false. |
|
custom-subscription-email |
A valid custom email that will be sent if customSubscriptionEmailEnabled is set to true. Default value is false. |
|
custom-subscription-footer-enabled-flag |
(Optional, boolean) If true, a custom footer will be included on subscription and data alert emails. If set to false after being set true, the current custom subscription footer is voided. Default value is false. |
|
custom-subscription-footer |
A custom subscription footer that will be added to subscription and data alerts if customSubscriptionFooterEnabled is set to true. Default value is false. |
|
ask-data-mode |
The mode of the ask data feature on the site. Can be set to one of two values:
DisabledByDefault. For more information, see Disable or Enable Ask Data for a Site. |
|
named-sharing-enabled-flag |
(Optional, boolean) If true, named sharing is enabled. Default value is true. |
|
cataloging-enabled-flag |
(Optional, boolean) If true, data catalog is enabled for the site. Default value is true. |
|
derived-permissions-enabled-flag |
(Optional, boolean) If true, derived permissions are enabled for the site. Default value is false. |
|
user-visibility-mode |
(Optional, string) When the value is FULL users can see the user of other site users. If the value is LIMITED User information on the site is not visible to other users. Default value is FULL. For more information, see User Visibility. |
| use-default-time-zone | (Optional, boolean) Set this to true, if you want the time-zone attribute use the Server time Zone at run time. This attribute is set to official IANA name. If this is set to false, the time-zone value must be specified. |
| time-zone | (Optional, string) Use this attribute to specify a time zone other than the Server time zone at run time. Only canonical names in the official IANA database are supported. You can find the list of the canonical time zone names on Wikipedia. |
| autoSuspendRefreshEnabled | (Optional) Tableau can automatically suspend extract refresh tasks for inactive workbooks to save resources. Specify true to enable or false to disable. Default is true. |
| autoSuspendRefreshInactivityWindow | (Optional) An integer between 7 and 100 to indicate the number of days to wait before automatically suspending extract refresh tasks for inactive workbooks. The default is 30. |
| explainDataEnabled |
(Optional, boolean) Set this attribute to |
| dqwSubscriptionsEnabled |
(Optional, boolean) Set this attribute to |
| attribute-capture-enabled |
(Optional, boolean) Set this attribute to Starting in October 2025 (API version 3.27), you can also use this attribute to pass user information about your identity provider to Tableau Cloud. During single sign-on (SSO), user attribute functions in Tableau content can accept attributes from OIDC claims or SAML assertions. For more information, see OIDC or SAML topics in the Tableau Cloud Help.
|
| groupAssertionsEnabled | (Optional) Set to true to allow assertions into group membership using session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for the entire site, including the following settings:
|
| groupAssertionsSAMLEnabled | (Optional, boolean) Set to true to allow assertions into group membership using SAML session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for SAML sessions. |
| groupAssertionsOIDCEnabled |
(Optional, boolean) Set to true to allow assertions into group membership using OIDC session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for OIDC sessions. |
| groupAssertionsConnectedAppsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using Connected App JWT tokens. Set to false if you don't want users to be able to be asserted into groups via connected apps. The default is false. If this attribute is set to false, it will disable group assertions for JWT connected app connections. |
| groupSetsEnabled | (Optional, boolean) Set to true to allow groups sets. Set to false if you don't want group sets support for the site. The default is false. If this attribute is set to false, it will disable group sets for the site. |
| recycleBinEnabled | (Optional, boolean) Set to true to enable the Recycle Bin. Set to false to disable it. The default is true. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Invalid revision history limit | The value for the revision history limit isn't an integer. |
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400004 | Invalid administrator mode | An administrator mode parameter was provided in the request with an invalid value. The valid values are ContentOnly and ContentAndUsers. |
| 400 | 400004 | Invalid state | A state parameter was provided in the request with an invalid value |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type wasn't PUT. |
| 409 | 409001 | Site name conflict | The new site name in the request already belongs to an existing site. |
| 409 | 409002 | Site URL conflict | The new content URL in the request already belongs to an existing site. |
| 409 | 409004 | User quota and tiered capacity conflict | The request can't set both tiered capacity attributes and userQuota. One or the other must be null. |
| 409 | 409004 | License limit exceeded | The request can't set tiered capacity attributes or userQuota values that are larger than the number of active licenses configured for the site. |
| 409 | 409004 | Administrator mode or user quota conflict | The request can't set adminMode to ContentOnly and also specify a userQuota value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| subscription-id | The ID of the subscription to update. |
| new-subscription-subject | (Optional) A new subject for the subscription. |
| attach-image-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| attach-pdf-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| page-orientation |
(Optional) The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-size-option |
(Optional) The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
| suspended-flag |
(Optional boolean) If |
| new-schedule-id | (Optional) The ID of a server schedule to associate this subscription with. To determine what schedules are available,
call List Server Schedules. The type of the schedule must be Subscription.
|
| send-view-if-empty-flag | (Optional) Applies to views only. If true, an image is sent even if the view specified in a subscription is empty. If false, nothing is sent if the view is empty. The default value is true. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400067 | Invalid subscription subject | The subscription subject is null or empty. |
| 400 | 400069 | Invalid subscription type | The subscription type is not Workbook or View. |
| 400 | 400069 | Invalid schedule type | The schedule type is not Subscription. |
| 400 | 400133 | Invalid data condition type | The data condition type is invalid for the subscription. |
| 403 | 403065 | No permissions to update subscription. | The user does not have permission to update the specified subscription. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404023 | Schedule not found | The schedule ID in the request body doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| task-luid | The LUID of the extract refresh task. Use Query subscriptions to find task IDs by subscription subject or user. |
subscription subject
|
(Required to create subscription) string: A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. |
subscription attachImage
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription attachPdf
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription pageOrientation
|
enumeration: The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
subscription pageSizeOption
|
enumeration: The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
subscription message
|
string: The text body of the subscription email message. |
subscription suspended
|
boolean: If true, the subscription is disabled, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. If false, the subscription is enabled. |
content id
|
(Required to create subscription) LUID: The LUID of the workbook or view the user should be subscribed to. |
content type
|
(Required to create subscription) enumeration: Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
content sendIfViewEmpty
|
boolean: Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
userId
|
(Required to create subscription) LUID: The LUID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request. |
| 404 | 404002 | User not found | The user specified in the request could not be found. |
| 404 | 404025 | Subscription not found | The task for the subscription could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| table-id | The unique ID of the table asset. |
| certification-status |
(Optional) Use one of the following values:
These values are case sensitive. |
| certification-note | (Optional) Custom text to accompany the certification status. |
| new-description-value | (Optional) Custom text to describe the table asset. |
| new-contact-id | (Optional) The ID (not name) of the certification owner. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404032 | Table not found | The requested table asset could not be found. |
| 409 | 409052 | Table error | An unknown table asset error occurred. |
| 409 | 409057 | Table update error | An unknown error occurred and the table asset could not be updated. |
| 409 | 409058 | Table update forbidden | A user without "write" permissions to the table asset attempted an update. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
extensionsEnabled
|
Required. Boolean. If |
blocklist
|
(Optional) Array. A list of domains that are not allowed to serve extensions to the Tableau Server. Domains are in the form of
(Optional) String. The URL of the extension you want to from the server. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Bad Request | The requested resource could not be found. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
extensionsEnabled
|
Required. Boolean. If true, extensions are allowed to run on the site. If false, no extensions are aloowed to run on the site even if their URL is in the site safelist. |
useDefaultSetting
|
(Optional) Boolean. If extensions are enabled on the server, the default settings allow extensions to run on a site, provided the extension is not specifically blocked on the server. |
safeList url
|
(Optional) Array. The list of URLs of the extensions allow to run on the site. Regular expressions are supported. An extension permissions to run an a site are also dependent on the domain of the URL not being present on the server blocklist, and server and site extension enablement being Note that updating the safelist replaces the existing list with the new list. If you want to add a URL to the existing list, you must also include the existing URLs in the new list. |
safeList fullDataAllowed
|
(Optional) Boolean. Set to true to allow the extension full access to the underlying data. By default, when you add an extension to the safe list, the extension only has access to the summary (or aggregated) data. Many extensions require full data access to function properly. |
safeList promptNeeded
|
(Optional) Boolean. The prompt tells users details about the extension and whether the extension has access to full data. Set to true to give users the ability to allow or deny the extension from running. Set to false to hide this prompt from users, allowing the extension to run immediately. |
allowTrusted
|
(Optional) Boolean. If true, specific categories of extensions (sandboxed, Tableau-built, or partner-built) are allowed to run by default on the site. If false, no extensions are allowed unless they are explicitly added to the safeList. |
includeSandboxed
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, sandboxed extensions are allowed to run by default. Sandboxed extensions run in a protected environment and cannot access other resources or data on the web. |
includeTableauBuilt
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, extensions built by Tableau are allowed to run by default. |
includePartnerBuilt
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, extensions built by Tableau's trusted partners are allowed to run by default. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Site Not Found | The site ID in the URI doesn't correspond to an existing site. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| key | (Required) String. Specifies which setting to add, modify, or remove. |
| value | (Optional) String. Provides the value associated with the key. If this property is omitted, then the associated key will be removed from the current Tableau MCP settings for the given site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid parameter | The mcpSiteSettings entity is empty; the settings key is null, missing, or invalid; or site LUID format is invalid. |
| 401 | 401002 | Invalid authentication credentials | Missing or invalid authentication credentials. |
| 401 | 403001 | Missing authentication token | Authentication token not provided. |
| 403 | 403000 | Insufficient permissions | User isn't an administrator |
| 403 | 403010 | Site mismatch | Authenticated user's site does not match the site LUID in the request. |
| 403 | 403157 | Feature disabled | Feature not enabled. |
| 403 | N/A | Insufficient OAuth scope | The user lacks the required OAuth scope. |
| 404 | 404000 | Site not found | A site with the specified LUID does not exist. |
| 500 | 500000 | Internal server error | Unknown server error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to update. |
| new-full-name | (Optional) The new name for the user. Users can change names without affecting the groups they belong to. Tableau Server only. Not available in Tableau Cloud. |
| new-email | (Optional) The new email address for the for the Tableau Server user.
Starting in API 3.26 (July 2025), the email address where the Tableau Cloud user can receive notifications. If no value is provided, Tableau Cloud uses the |
| new-password | (Optional) The new password for the user. Tableau Server only. Not available in Tableau Cloud. |
| new-site-role |
The new site role to assign to the user. You can assign the following roles: Creator, Explorer, ExplorerCanPublish, ServerAdministrator, SiteAdministratorExplorer, SiteAdministratorCreator, Unlicensed, or Viewer. Note: Only a user in the ServerAdministrator site role can use the REST API to add or remove another user from the ServerAdministrator site role. Users in the ServerAdministrator site role can only be moved to the Creator site role if one or more Creator licenses have been activated on the server; otherwise these users can only be moved to the Publisher site role. This method only supports the ServerAdministrator site role in API 2.8 and later. |
| new-auth-setting | (Optional) The authentication type for the user. Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
|
| identity-pool-name | (Optional, Tableau Server only) When identity pools are configured, the name of the identity pool.
Starting in API 3.19, include the identity pool name when identity pools are configured and you need to add a user to an identity pool that uses the local identity store and OIDC authentication. For more information, see Identity Pools Methods. |
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| language |
(Optional, Tableau Cloud only) Language of the user. Starting in API 3.28 (March 2026), you can set the user's default language in Tableau Cloud to one of the supported languages (ISO 639-1). You can assign one of the following values: de, en_GB, en, es, fr_CA, fr, it, nl, pt, sv, th, ja, zh, zh_TW, or ko. |
| locale |
(Optional, Tableau Cloud only) Locale of the user. Starting in API 3.28 (March 2026), you can set the user's default locale to one of the supported locales. You can assign one of the following values: ar_SA, ar_AE, ar_BH, ar_DZ, ar_EG, ar_IQ, ar_JO, ar_KW, ar_LB, ar_LY, ar_MA, ar_OM, ar_QA, ar_SD, ar_SY, ar_TN, ar_YE, be_BY, bg_BG, ca_ES, cs_CZ, da_DK, de_DE, de_AT, de_CH, de_LU, el_GR, el_CY, en_US, en_AU, en_CA, en_GB, en_IE, en_IN, en_MT, en_NZ, en_PH, en_SG, en_ZA, es_ES, es_AR, es_BO, es_CL, es_CO, es_CR, es_DO, es_EC, es_GT, es_HN, es_MX, es_NI, es_PA, es_PE, es_PR, es_PY, es_SV, es_US, es_UY, es_VE, et_EE, fi_FI, fr_FR, fr_BE, fr_CH, fr_LU, fr_CA, ga_IE, he_IL, hi_IN, hr_HR, hu_HU, id_ID, is_IS, it_IT, it_CH, ja_JP, ko_KR, lt_LT, lv_LV, mk_MK, ms_MY, mt_MT, nl_NL, nl_BE, no_NO, pl_PL, pt_BR, pt_PT, ro_RO, ru_RU, sk_SK, sl_SI, sq_AL, sr_RS, sr_BA, sr_ME, sv_SE, th_TH, tr_TR, uk_UA, vi_VN, zh_CN, zh_HK, zh_SG, or zh_TW. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400000 | Invalid email address | The email attribute does not contain a valid email address. |
| 400 | 400003 | Bad request | The user authentication setting ServerDefault is not supported for you site. Try again using TableauIDWithMFA instead. |
| 400 | 400012 | Bad request | The user cannot be assigned the Unlicensed role because they are still a member of a group that has a minimum site role set. |
| 400 | 400217 | Unsupported language | The specified language is not valid or not supported. |
| 400 | 400218 | Unsupported locale | The specified locale is not valid or not supported. |
| 403 | 403009 | Licensing update on self forbidden | A user cannot update their own licensing role. |
| 403 | 403009 | Guest update forbidden | The Guest user is a special user and cannot be updated. |
| 400 | 400013 | Invalid site role |
The value of the siteRole attribute must be Creator, Explorer, ExplorerCanPublish, ServerAdministrator, SiteAdministratorExplorer, SiteAdministratorCreator, Unlicensed, or Viewer. |
| 403 | 403193 | Forbidden | A non-administrator user called this method or doesn't have permissions to update language for the user. |
| 403 | 403194 | Forbidden | A non-administrator user called this method or doesn't have permissions to update locale for the user. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409000 | User conflict | The user with the specified name is already registered on the site in the same domain. |
| 409 | 409014 | Licensing conflict | The request is attempting to update the user to a licensing role that has insufficient capacity. |
| 500 | 500109 | Internal language error | The language request could not be completed. |
| 500 | 500110 | Internal locale error | The locale request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| enabled-flag | (Required, boolean) If true, the specified site notifications will be on. If false, the specified site notifications will be off.
|
| channel | (Required, string) Specifies the channel that the notification preferences are to be updated (turned on or off). Valid channels are: email, in_app, and slack. |
| notification-type |
Specifies the notification type for which the notification preferences are to be updated (turned on or off). Valid notification types are: comments, webhooks, prepflow, share, dataalerts,and extractrefresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Invalid Permissions | Invalid permission to update site user notification settings. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type was not PATCH. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| virtualconnection-name | The name of the virtual connection. |
| certification-flag | Boolean. If true, the virtual connection is certified. If false, it won't. |
| certification-message | The certification label's message. |
| project-id | The LUID of the project the virtual connection is located in. |
| owner-id |
The LUID of the user that owns the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400203 | Generic error | An unknown error occurred. |
| 403 | 403004 | User not authorized to change virtual connection | Check to make sure the user has the required permissions. |
| 403 | 403176 | User not authorized to change virtual connection's owner | Check to make sure the user has the required permissions. |
| 403 | 403177 | User not authorized to move assets into the target project. | Check to make sure the user has the required permissions. |
| 403 | 403178 | User not authorized to move the virtual connection | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| 409 | 409124 | A virtual connection with the chosen name already exists in the project. | Try a different virtual connection name. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| virtual-connection-id | The LUID for the virtual connection that includes the database connections. |
| connection-id | The ID of the database connection. To determine what connections are in a virtual connection, call List Virtual Connection Database Connections. |
connection serverAddress | The new server for the database connection. |
connection serverPort | The new port for the database connection |
connection userName | The new username for the database connection. |
connection password | The new password for the database connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Operation unauthorized | The user isn’t authorized to perform the task. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 403180 | Full refresh not allowed. | A full refresh extract operation is not allowed for the virtual connection. |
| 400 | 403181 | Incremental refresh not allowed. | The request specified an incremental refresh, but an incremental refresh extract operation is not allowed for the virtual connection. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision or no extract-eligible tables. Live tables are not refreshed. |
| 403 | 403199 | User not authorized to refresh the virtual connection. | The user must have either the Manage Extract or the Allow Extract Refresh permission on the virtual connection. |
| 403 | 409082 | Run Now is disabled for the site. | Enable Run Now for the site, then try the request again. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Direct virtual connection extract refresh is not enabled for this site. |
| 409 | 409093 | Operation already in queue. | An extract refresh job for the virtual connection is already in the queue. |
| api-version | The version of the API to use. These TDS Edit methods are available in API 3.30 and later. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site in the URI. This handler does not bind the path variable — the service uses the authenticated user's site LUID (authUser.getSiteLuid()). |
| workcopy-luid | The LUID of the work copy. Must be a UUID (8-4-4-4-12 hexadecimal digits), matching [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}. |
| tdsElementList[] | Required. Elements to update. Must contain at least one element. An empty or missing list is HTTP 400 with error code 400008. |
| tdsElementList[].elementType | Optional. Element type sent to the TDS service. For this operation, use Column, FieldDescription, or TableDescription. Any other value is forwarded and reported as a per-element failure. |
| tdsElementList[].name | Required. Element name. |
| tdsElementList[].column | Used when elementType is Column. At most one of caption, type, and role may be set — setting more than one is HTTP 400 with no numeric sub-code. A column with none of them set is a no-op update. |
| tdsElementList[].column.caption | Optional. The caption to set. |
| tdsElementList[].column.role | Optional. An accepted FieldRole constant other than FIELD_ROLE_UNKNOWN or UNRECOGNIZED — either of those is rejected as HTTP 400 with error code 400008. |
| tdsElementList[].column.type | Optional. An accepted FieldType constant other than FIELD_TYPE_UNKNOWN or UNRECOGNIZED — either of those is rejected as HTTP 400 with error code 400008. |
| tdsElementList[].description | Used when elementType is FieldDescription or TableDescription. Description text to set. When description is null, the field is left unset so the TDS service can report a per-element failure instead of HTTP 500. |
| tdsElementResult[] | Failed elements only. Omitted on full success, including omitted rather than returned as an empty array. |
| tdsElementResult[].elementType | Required. Element type of the failed element, copied from the request. |
| tdsElementResult[].name | Required. Name of the failed element, copied from the request. |
| tdsElementResult[].status | Required. Failure status for this element. |
| tdsElementResult[].status.code | Required (within status). The translated HTTP status for this element (200, 400, 401, 403, 404, 409, 500, or 503). Not a Tableau 6-digit error sub-code. |
| tdsElementResult[].status.message | Optional. Error message from the TDS service. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Missing tdsElementList | tdsElementList is missing or empty. The list is required and must contain at least one element. |
| 400 | 400008 | Invalid column type or role | type or role is not an accepted field type or role. FIELD_TYPE_UNKNOWN, FIELD_ROLE_UNKNOWN, and UNRECOGNIZED are rejected. The accepted names are not in the staged sources. |
| 400 | Column update sets more than one field | A column update may set at most one of caption, type, or role. | |
| 400 | Invalid work copy LUID | The work copy LUID in the URI is not a UUID (8-4-4-4-12 hexadecimal digits). | |
| 400 | Per-element invalid argument | One or more elements were rejected as invalid. The body lists only the failed elements, and each status.code is the HTTP status 400. | |
| 400 | Unmapped per-element gRPC status | The TDS service returned a status that maps to HTTP 400. The body lists only the failed elements. | |
| 401 | 401000 / 401002 | Missing or invalid authentication | No authentication token provided, or token is expired or invalid. |
| 401 | Per-element unauthenticated | The TDS service rejected an element as unauthenticated. The body lists only the failed elements. | |
| 403 | 403004 | Data Management Bundle not licensed | On Tableau Server the TDS Edit API requires a Data Management Bundle license. The call is rejected when that license is absent. |
| 403 | 403004 | Unable to resolve tenant | On Tableau Cloud the subscription could not be checked because the tenant id for the site could not be retrieved. |
| 403 | 403004 | No cloud entitlements | On Tableau Cloud no entitlements were found for the tenant. The TDS Edit API requires a Tableau+ subscription. |
| 403 | 403004 | Subscription not entitled | On Tableau Cloud the site edition is not Tableau+. The TDS Edit API requires a Tableau+ subscription. |
| 403 | Per-element permission denied | The TDS service rejected an element because permission was denied. The body lists only the failed elements. | |
| 404 | Per-element not found | One or more elements were not found. The body lists only the failed elements. This is not error code 404065, which the read methods return for a missing named element. | |
| 405 | 405000 | Method not allowed | The HTTP method is not supported for this resource. |
| 409 | Per-element already exists | One or more elements already exist. The body lists only the failed elements. | |
| 429 | 429000 | Rate limit exceeded | Too many requests sent in a given time period. |
| 500 | Per-element internal error | The TDS service failed while editing an element. The body lists only the failed elements. | |
| 503 | Per-element unavailable | The TDS service was unavailable while editing an element. The body lists only the failed elements. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to update. |
| include-view-acceleration-status-flag | Query parameter is optional. Boolean: If includeViewAccelerationStatus=true then the list of views and the acceleration status of each view will be returned. |
workbook name
|
(Optional) New name for the workbook being updated. | ||||
workbook showTabs
|
(Optional) Specify true to have the updated workbook show views in tabs; otherwise, false. The default is false. | ||||
workbook recentlyViewed
|
(Optional) Set this value to true to have the updated workbook show in the site's recently viewed list. The default is false. Once the flag is set to true, setting it to false will have no effect. When enough views or workbooks have populated the recently viewed list, the oldest item will fall off the list and its recently-viewed-flag will revert to false. | ||||
workbook encryptExtracts
|
(Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. | ||||
workbook description
|
(Optional) Starting in API 3.20, the new description for the updated workbook. | ||||
project id
|
(Optional) The LUID of a project to assign the workbook to. | ||||
owner id
|
(Optional) The LUID of a user to assign the workbook to as owner. | ||||
dataAccelerationConfig accelerationEnable
|
(Optional) Boolean: If true, accelerate the specified view(s). Default is false. Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
||||
dataAccelerationConfig accelerateNow
|
(Optional) Boolean: If
Note, the
|
||||
view id
|
(Optional) LUID: The LUID of a view being accelerated. If no views are listed in the request then all views in the workbook will be accelerated. | ||||
dataFreshnessPolicy option
|
(Optional) Enum: The data freshness policy mode for
scheduling refreshment of the workbook data specified in the request. A valid value is one of:
|
||||
freshAtSchedule frequency
|
(Optional) Enum: The interval of workbook data refresh. A valid value is one of:
|
||||
freshAtSchedule time
|
(Optional) Time in HH:MM:SS: The time of day that workbook data will be refreshed, in
increment of 15 minutes. Minutes must end in 00, 15, 30, or 45. for instance time="10:30:00". |
||||
freshAtSchedule timeZone
|
(Optional) Timezone string in IANA format: The timezone of the fresh at schedule time.
For instance, timezone="America/Los_Angeles". If no timezone is provided, then
the local timezone of the Tableau server is used."
|
||||
freshAtSchedule intervals interval
|
A value that specifies the interval between refreshes of view acceleration data.
The value you specify here depends on the
value specified in freshAtSchedule frequency.
If the schedule frequency is
The interval expression is
The interval expression is
|
||||
| freshEverySchedule frequency | (Optional) Enum: The time unit used for the cadence of view acceleration data refreshes. The count of the specified
unit that occurs between refreshes is determined by freshEverySchedule value.
A valid value is one of:
|
||||
| freshEverySchedule value |
(Optional) Integer: The quantity of frequency units between view acceleration data refreshes. For instance,
to specify a refresh every 4 hours, the dataFreshnessPolicy would look like:
|
||||
|
|||||
| XML | JSON |
|
Copy
|
Copy
n
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400036 | Bad request | View acceleration is enabled, but the workbook loads too quickly to make use of it, or the view has never been accessed by a user. |
| 403 | 403025 | Project update forbidden | A non-administrator user tried to change the workbook project, but the caller doesn't have Write permission for the target project. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change the workbook owner. |
| 403 | 403027 | Update forbidden | A non-administrator user tried to change the workbook, but the caller doesn't have Write permission for the workbook. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the workbook, but does not have permissions to publish the updated workbook to the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't match the project ID provided in the request body. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to update. |
| connection-id | The ID of the connection to update. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| authenticationType |
Added in version 3.27.
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) or earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403029 | Update forbidden | A non-administrator user tried to update the workbook connection, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404020 | Connection not found | The connection ID in the URI doesn't correspond to an existing connection. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| workbook-id | The ID of the workbook to update. |
| connectionLuids | An array of connection LUIDs in the workbook that you are updating. |
| serverAddress | The new server for the connection. |
| serverPort | The new port for the connection |
| authenticationType |
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have sufficient permissions. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the workbook, but does not have permissions to publish the updated workbook to the project. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404006 | Resource not found | The workbook ID in the URI is unknown. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409093 | Operation already in Queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Generic error | An unknown error occurred. The content of the request body may be missing or incomplete, or may contain malformed XML. |
| 403 | 403179 | Permissions error | The user calling the method isn't a site administrator, server administrator, or owner of the workbook. |
| 404 | 404006 | Workbook not found | The workbook LUID is invalid, or the user doesn't have permission to read the workbook. |
| 500 | 500000 | Internal server error | The server was unable to create the job. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| datasource-luid | The LUID of the data source to download the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| flow-luid | The LUID of the flow to upload the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
userLuidPair
|
(Required) The user IDs needed to map source site flow owner to destination site flow owner. |
sourceSiteUserLuid
|
(Required) The user ID of the flow owner from the source site; an attribute of the |
destinationSiteUserLuid
|
(Required) The user ID of the flow owner on the destination site; an attribute of the associatedUserLuidMapping element. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. You can get this value by calling the Download Flow Encrypted Keychain method. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user whose credentials you want to upload. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| workbook-luid | The LUID of the workbook to download the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| upload-session-id | The upload session ID returned from the Initiate File Upload endpoint. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing uploadSessionId parameter | The required uploadSessionId parameter isn't present in the querystring. | |
| 404 | Resource not found | The uploadSessionId parameter couldn't be found. | |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing required parameter | The required tableau_workbook parameter isn't present in the request. | |
| 400 | Invalid file type or content | The file is not a valid TWB file or does not contain TWB XML content, or the "filename" parameter doesn't end with ".twb". | |
| 406 | 406000 | No acceptable response | This method can only return a JSON response. Use the Accept: application/json header. |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing required parameter | The required tableau_workbook parameter isn't present in the request. | |
| 400 | Invalid file type or content | The file is not a valid TWB file or does not contain TWB XML content, or the "filename" parameter doesn't end with ".twb". | |
| 406 | 406000 | No acceptable response | This method can only return a JSON response. Use the Accept: application/json header. |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source. |
| datasource-id | The ID of the data source to download. |
| revision-number | The revision number of the data source to download. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403028 | Read forbidden | A non-administrator user attempted to download a data source, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to download. |
| revision-number | The revision number of the workbook to download. To determine what versions are available, call Get Workbook Revisions. Note that the current revision of a workbook cannot be accessed by this call; use Download Workbook instead. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the workbook specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the workbook. You can use this option to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403019 | Read forbidden | A non-administrator user attempted to download a workbook, but the caller doesn't have required permissions. |
| 404 | 404024 | Workbook revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the data source to get revisions for. |
| datasource-id | The ID of the data source to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403054 | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. | |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook to get revisions for. |
| workbook-id | The ID of the workbook to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403056 | A non-administrator user attempted to get workbook revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| datasource-id | The ID of the data source to remove the revision for. |
| revision-number | The revision number of the data source to remove. To determine what versions are available, call Get Data Source Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user attempted to remove a data source revision, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403055 | Cannot delete head revision | The head (first) version cannot be deleted. To remove the data source, call Delete Data Source. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 404 | 404024 | Data source revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| workbook-id | The ID of the workbook to remove the revision for. |
| revision-number | The revision number of the workbook to remove. To determine what versions are available, call Get Workbook Revisions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Deletion forbidden | A non-administrator user attempted to remove a data source revision, but the caller doesn't have required permissions. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403055 | Cannot delete head revision | The head (first) version cannot be deleted. To remove the workbook, call Delete Workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404024 | Workbook revision not found | The revision number in the URI doesn't correspond to an existing workbook revision. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| session-id |
The unique ID of the session to be deleted. A session's ID and other metadata can be queried from the Tableau Server Postgres repository. Reading the Postgres repository excessively can impact performance and that writing directly to the repository is not supported in any form. For more information, see Collect Data with the Tableau Server Repository and Tableau Server Postgres Data Dictionary. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400105 | Session delete error | An unknown error occurred and the session could not be deleted. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404000 | Resource not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The requested asset could not be found. |
| api-version |
The version of the API to use, such as |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version |
The version of the API to use, such as |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| domain-id | The integer ID of the of the Active Directory domain being updated. Find a domain's ID using List Server Active Directory Domains. |
| new-domain-name | A new full domain name you are using to replace the existing one. |
| new-domain-nickname | A new domain nickname you are using to replace the existing one. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized access | No authorization credentials were provided. |
| 401 | 401002 | Unauthorized access | Invalid authorization credentials were provided. |
| 404 | 404032 | Resource not found | The requested domain ID in the URI doesn't correspond to an existing domain. |
| site-name | The name of the site. |
| content-url | The subdomain name of the site's URL. This value can contain only characters that are upper or lower case alphabetic characters, numbers, hyphens (-), or underscores (_). If you provide unsupported special characters, Tableau creates the site content URL by omitting those characters from the string. For example, if you provide the site URL as "test.site", Tableau converts it to "testsite" and returns this new URL in the response. |
| admin-mode |
(Optional) Specify ContentAndUsers to allow site administrators to use the server
interface and Note: You can’t set adminMode to ContentOnly and also set userQuota. The default value is ContentAndUsers. |
| storage-quota | (Optional) The maximum amount of space for the new site, in megabytes. If you set a quota and the site exceeds it, publishers will be prevented from uploading new content until the site is under the limit again. |
| disable-subscriptions |
(Optional) Specify true to prevent users from being able to subscribe to workbooks on the specified site. The default is false. |
| editing-flows-enabled-flag |
(Optional) Specify true to enable and false to disable editing flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means editing flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| scheduling-flows-enabled-flag |
(Optional) Specify true to enable and false to disable scheduling flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true which means scheduling flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| flows-enabled-flag |
The flowsEnabled attribute is deprecated as of API version 3.10. |
| allow-subscription-attachments-flag |
(Optional) If true, and subscription to attachments is enabled on the server, then users can create subscriptions that send an email with images of a workbook or view in a PDF attachment. The default value is true. If subscription to attachments is disabled in the server settings, then making this value true will have no effect. Default is true. |
| guest-access-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for guests, users without specific site access permission, to access the site. Default is false. |
| cache-warmup-enabled-flag |
This attribute is removed in API 3.19 and later (Tableau Cloud September 2021). For current methods to improve Tableau performance see, View Acceleration. (Optional) Set this value to true to enable cache warm up to improve workbook load time. Set the value to false to disable cache warmup. Default is true. |
| commenting-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for user comments on views in the site. Default is true. |
| revision-history-enabled | (Optional) true if the site maintains revisions for changes to workbooks and data sources; otherwise, false. The default is false. |
| num-revision-limit | (Optional) An integer between 2 and 10000 to indicate a limited number of revisions for content. Setting this value to -1 removes any value that was set previously, and effectively removes any limit to the number of revisions that are maintained. |
| subscribe-others-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for view owners to subscribe other users to a view. Default is true. |
| extractEncryptionMode |
(Optional) Specify enforced, enabled, or disabled. Default is disabled. For more information, see Extract and Encryption Methods. |
| requestAccessEnabled | (Optional) Specify true to allow users send access request emails to content or project owners. Specify false if you don’t want users to be able to request access. The default is false. |
| runNowEnabled |
(Optional) Specify true to allow users to run flows, extract refreshes, and schedules manually. Specify false if you don’t want users to be able to run flows, extract refreshes, and subscriptions manually. The default is true. If this attribute is set to false, the following methods will fail and will return an error message. |
|
Licensing attributes
|
|
|
User quota all-license-limit-total |
(Optional) The maximum total number of users with Creator, Explorer, or Viewer licenses currently allowed on a site. On-premises server administrators can set An administrator can revert the license limit to number of activated licenses on the site, or shift control of license
limits to tiered capacities values, by omitting |
|
Tiered capacity attributes creator-license-limit
|
(Optional) The maximum number of licenses for users with the Creator, Explorer, or Viewer role, respectively, allowed on a site. On-premises server administrators can set tiered capacity attributes with the following rules: the number can't exceed the number of licenses of a given type that are activated for the site; a value must be supplied for every tiered capacity license type every time any one or more of them is set. A value of -1 removes the administrator-applied limit for a license type, and reverts the limit to the number of activated licenses configured for the role. Setting the value of a tiered capacity to -1 will not automatically increase the limit if more licenses are purchased and activated for the role in the future. To use role-specific license limits, the |
|
data-alerts-enabled-flag |
(Optional, boolean) If true, data alerts are enabled on the site. Default value is true. |
|
commenting-mentions-enabled-flag |
(Optional, boolean) If true, mentions for commenting are enabled. Default value is true. |
|
catalog-obfuscation-enabled-flag |
(Optional, boolean) If true, catalog obfuscation is enabled on the site. Default value is true. |
|
flow-auto-save-enabled-flag |
(Optional, boolean) If true, flow auto save is enabled on the site.
Default value is true. |
|
run-now-enabled-flag |
(Optional, boolean) If true, run now for schedules is enabled which allows non-administrators to run schedules manually. Default value is true. |
|
metrics-content-type-enabled-flag |
(Optional, boolean) If true, the metrics content type is enabled on the server. Default value is true. |
|
notify-site-admins-on-throttle-flag |
(Optional, boolean) If true, site admins will be notified if their background jobs are being throttled. Default value is false. |
|
authoring-enabled-flag |
(Optional, boolean) If true, web authoring is enabled. Default value is true. |
|
custom-subscription-email-enabled-flag |
(Optional, boolean) If true, sending custom subscription email is enabled. If set to false after being set true, the current custom subscription email is voided. Default value is false. |
|
custom-subscription-email |
A valid custom email that will be sent if customSubscriptionEmailEnabled is set to true. Default value is false. |
|
custom-subscription-footer-enabled-flag |
(Optional, boolean) If true, a custom footer will be included on subscription and data alert emails. If set to false after being set true, the current custom subscription footer is voided. Default value is false. |
|
custom-subscription-footer |
A custom subscription footer that will be added to subscription and data alerts if customSubscriptionFooterEnabled is set to true. Default value is false. |
|
ask-data-mode |
The mode of the ask data feature on the site. Can be set to one of two values:
DisabledByDefault. For more information, see Disable or Enable Ask Data for a Site. |
|
named-sharing-enabled-flag |
(Optional, boolean) If true, named sharing is enabled. Default value is true. |
|
cataloging-enabled-flag |
(Optional, boolean) If true, data catalog is enabled for the site. Default value is true. |
|
derived-permissions-enabled-flag |
(Optional, boolean) If true, derived permissions are enabled for the site. Default value is false. |
|
user-visibility-mode |
(Optional, string) When the value is FULL users can see the user of other site users. If the value is LIMITED User information on the site is not visible to other users. Default value is FULL. For more information, see User Visibility. |
| use-default-time-zone | Optional, boolean) Set this to true, if you want the time-zone attribute use the Server time Zone at run time. This attribute is set to the official IANA name. If this is set to false, the time-zone value must be specified. |
| time-zone | (Optional, string) Use this attribute to specify a time zone other than the Server time zone at run time. Only canonical names in the official IANA database are supported. You can find the list of the canonical time zone names on Wikipedia. |
| autoSuspendRefreshEnabled | (Optional) Tableau can automatically suspend extract refresh tasks for inactive workbooks to save resources. Specify true to enable or false to disable. Default is true. |
| autoSuspendRefreshInactivityWindow | (Optional) An integer from 7 through 100 to indicate the number of days to wait before automatically suspending extract refresh tasks for inactive workbooks. The default is 30. |
| explainDataEnabled |
(Optional, boolean) Set this attribute to
|
| dqwSubscriptionsEnabled |
(Optional, boolean) Set this attribute to
|
| groupAssertionsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using session info. Set to false if you do not want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for the entire site, including the following settings:
|
| groupAssertionsSAMLEnabled | (Optional, boolean) Set to true to allow assertions into group membership using SAML session info. Set to false if you don’t want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for SAML sessions. |
| groupAssertionsOIDCEnabled |
(Optional, boolean) Set to Note: This parameter only applies to Tableau Cloud. |
| groupAssertionsConnectedAppsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using Connected App JWT tokens. Set to false if you don’t want users to be able to be asserted in to groups via connected apps. The default is false. If this attribute is set to false, it will disable group assertions for JWT connected app connections. |
| groupSetsEnabled | (Optional, boolean) Set to true to allow groups sets. Set to false if you don’t want group sets support for the site. The default is false. If this attribute is set to false, it will disable group sets for the site. |
| recycleBinEnabled | (Optional, boolean) Set to true to enable the Recycle Bin. Set to false to disable it. The default is true. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing, incomplete, or contains malformed XML. |
| 400 | 400000 | Invalid storage quota | The storage quota value wasn’t a positive number. |
| 400 | 400000 | Invalid user quota | The user quota value wasn’t a positive number. |
| 400 | 400013 | Invalid administrator mode | The user provided an administrator mode that isn’t ContentOnly or ContentAndUsers. Note: An empty string or all whitespace is invalid. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409001 | Site name conflict | The site name in the request already belongs to an existing site. |
| 409 | 409002 | Site URL conflict | The content URI in the request already belongs to an existing site. |
| 409 | 409004 | User quota and tiered capacity conflict | The request cannot set both tiered capacity attributes and userQuota. One or the other must be null. |
| 409 | 409004 | License limit exceeded | The request cannot set tiered capacity attributes or userQuota values that are larger than the number of active licenses configured for the site. |
| 409 | 409004 | Administrator mode or user quota conflict | The request cannot set adminMode to ContentOnly and also specify a userQuota value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to delete. |
| site-name | The name of the site to delete. If you specify a site name, you must also include the parameter key=name. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403002 | Deletion not allowed. | An attempt was made to delete the default Tableau Server site. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the task. |
| sheetURI | The URI of the sheet in the workbook. |
| unacceleratedSessionCount | The number of sessions that were created to load the workbook sheet before it was accelerated. For example, if you loaded it 7 times in a row, the session is reused so the count will still be 1. Generally, the more data you compare, the better the comparison is. Note: If sheets were loaded but never accelerated, they are not shown. |
| averageUnAcceleratedPLT | The average page load time for the sheet before it was accelerated. |
| acceleratedSessionCount | The number of sessions that were created to load the workbook sheet after it was accelerated. |
| averageAcceleratedPLT | The average page load time for the sheet after it was accelerated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 40500 | Invalid requests method | Request type was not GET |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views and workbooks. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views. |
| get-usage-information | (Optional) true to return usage statistics. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) Fields and operators that you can use to filter results. For more information, see Filter expressions. |
| sort-expression | (Optional) Field and direction to sort results. For more information, see Sorting. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the workbooks or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400008 | Invalid parameter value | The includeUsageStatistics was provided with a value other than true or false. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to update. |
| unrestricted-embedding |
(Optional) Specifies whether or not embedding is restricted. When the setting is set to true, Tableau views on this site can be embedded in any domain. When set to false, embedding is blocked for all domains, but you can allow embedding in certain domains using the |
| allow-list |
(Optional) Specifies the domains where Tableau views on this site can be embedded. Use this setting with Important: We recommend using the domain allowlist as a security best practice to ensure Tableau content is only embedded in locations that you allow. You can use wildcards in domain names and you can also list multiple domain names separated by spaces. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403500 | The user does not have permission |
Tableau Cloud: Only site administrators can run this method. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to update. |
| new-site-name | (Optional) The new name of the site. |
| new-content-url | (Optional) The new site URL. This value can contain only characters that are valid in a URL. These characters include letters (A-Z, a-z), digits (0-9), hyphens ("-"), and underscores ("_") If you provide invalid characters, those characters are stripped from the URL and the site is created anyway. For example, if you try to set the site URL as test.site, it's converted to testsite and returned in the response. The response's site URL namespace is the authoritative source of truth for the new site URL. |
| new-admin-mode | (Optional) Specify ContentAndUsers to allow site administrators to use the server interface and tabcmd commands to add and remove users. (Specifying this option doesn't give site administrators permissions to manage users using the REST API.) Specify ContentOnly to prevent site administrators from adding or removing users. (Server administrators can always add or remove users.)
Note: You cannot set adminMode to ContentOnly and also set a userQuota value. The default value is ContentAndUsers. |
| new-state | (Optional) Active to set the site to active mode, or Suspended to suspend the site. Default is Active. |
| new-storage-quota | (Optional) The new maximum amount of space for the new site, in megabytes. If you set a quota and the site exceeds it, publishers will be prevented from uploading new content until the site is under the limit again. |
| new-disable-subscriptions | (Optional) true to prevent users from being able to subscribe to workbooks on the specified site. Default is false. |
| revision-history-enabled | (Optional) true if the site maintains revisions for changes to workbooks and data sources; otherwise, false. The default is false. |
| revision-limit | (Optional) An integer between 2 and 10000 to indicate a limited number of revisions for content. Setting this value to -1 removes any value that was set previously, and effectively removes any limit to the number of revisions that are maintained. |
| allow-subscription-attachments-flag |
(Optional) If true, and subscription to attachments is enabled on the server, then users can create subscriptions that send an email with images of a workbook or view in a PDF attachment. The default value is true. If subscription to attachments is disabled in the server settings, then making this value true will have no effect. Default is true. |
| subscribe-others-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for view owners to subscribe other users to a view. Default is true. |
| editing-flows-enabled-flag |
(Optional) Specify true to enable and false to disable editing flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means editing flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| scheduling-flows-enabled-flag |
(Optional) Specify true to enable and false to disable scheduling flows for a site. For more information on flows, see Enable and Configure Tableau Prep Conductor. The default is set to true, which means scheduling flows is enabled by default. For more information, see Implication of disabling Tableau Prep Conductor. |
| flows-enabled-flag |
The flowsEnabled attribute is deprecated as of API 3.10. |
| guest-access-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for guests, users without specific site access permission, to access the site. Default is false. |
| cache-warmup-enabled-flag |
This attribute was removed in API 3.19 and later. For current methods to improve Tableau performance see, View Acceleration. (Optional) Set this value to true to enable cache warm up to improve workbook load times. Set the value to false to disable cache warmup. Default is true. |
| commenting-enabled-flag |
(Optional) Specify true to enable and false to disable the ability for user comments on views in the site. Default is true. |
| extractEncryptionMode |
(Optional) Specify enforced, enabled, or disabled. Default is disabled. For more information, see Extract and Encryption Methods. |
| dataAccelerationMode |
(Optional) Specify enable_selective or disabled. The default is enable_selective, which lets you update particular workbooks to turn on data acceleration using the accelerationEnabled attribute. For more information, see Data Acceleration (Retired). Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| requestAccessEnabled | (Optional) Specify true to allow users send access request emails to content or project owners. Specify false if you don't want users to be able to request access. The default is false. |
| runNowEnabled |
(Optional) Specify true to allow users to run flows, extract refreshes, and schedules manually. Specify false if you don't want users to be able to run flows, extract refreshes, and subscriptions manually. The default is true. If this attribute is set to false, the following methods will fail and will return an error message. |
|
Licensing attributes
|
|
|
User quota all-license-limit-total |
(Optional) The maximum total number of users with Creator, Explorer, or Viewer licenses currently allowed on a site. On-premises server administrators can set An administrator can revert the license limit to number of activated licenses on the site, or shift control of license
limits to tiered capacities values, by omitting |
|
Tiered capacity attributes creator-license-limit
|
(Optional) The maximum number of licenses for users with the Creator, Explorer, or Viewer role, respectively, allowed on a site. On-premises server administrators can set tiered capacity attributes with the following rules: the number can't exceed the number of licenses of a given type that are activated for the site; a value must be supplied for every tiered capacity license type every time any one or more of them is set. A value of -1 removes the administrator-applied limit for a license type, and reverts the limit to the number of activated licenses configured for the role. Setting the value of a tiered capacity to -1 will not automatically increase the limit if more licenses are purchased and activated for the role in the future. To use role-specific license limits, the |
|
data-alerts-enabled-flag |
(Optional, boolean) If true, data alerts are enabled on the site. Default value is true. |
|
commenting-mentions-enabled-flag |
(Optional, boolean) If true, mentions for commenting are enabled. Default value is true. |
|
catalog-obfuscation-enabled-flag |
(Optional, boolean) If true, catalog obfuscation is enabled on the site. Default value is true. |
|
flow-auto-save-enabled-flag |
(Optional, boolean) If true, flow auto save is enabled on the site. Default value is true. |
|
run-now-enabled-flag |
(Optional, boolean) If true, run now for schedules is enabled which allows non-administrators to run schedules manually. Default value is true. |
|
metrics-content-type-enabled-flag |
(Optional, boolean) If true, the metrics content type is enabled on the server. Default value is false. |
|
notify-site-admins-on-throttle-flag |
(Optional, boolean) If true, site admins will be notified if their background jobs are being throttled. Default value is false. |
|
authoring-enabled-flag |
(Optional, boolean) If true, web authoring is enabled. Default value is false. |
|
custom-subscription-email-enabled-flag |
(Optional, boolean) If true, sending custom subscription email is enabled. If set to false after being set true, the current custom subscription email is voided. Default value is false. |
|
custom-subscription-email |
A valid custom email that will be sent if customSubscriptionEmailEnabled is set to true. Default value is false. |
|
custom-subscription-footer-enabled-flag |
(Optional, boolean) If true, a custom footer will be included on subscription and data alert emails. If set to false after being set true, the current custom subscription footer is voided. Default value is false. |
|
custom-subscription-footer |
A custom subscription footer that will be added to subscription and data alerts if customSubscriptionFooterEnabled is set to true. Default value is false. |
|
ask-data-mode |
The mode of the ask data feature on the site. Can be set to one of two values:
DisabledByDefault. For more information, see Disable or Enable Ask Data for a Site. |
|
named-sharing-enabled-flag |
(Optional, boolean) If true, named sharing is enabled. Default value is true. |
|
cataloging-enabled-flag |
(Optional, boolean) If true, data catalog is enabled for the site. Default value is true. |
|
derived-permissions-enabled-flag |
(Optional, boolean) If true, derived permissions are enabled for the site. Default value is false. |
|
user-visibility-mode |
(Optional, string) When the value is FULL users can see the user of other site users. If the value is LIMITED User information on the site is not visible to other users. Default value is FULL. For more information, see User Visibility. |
| use-default-time-zone | (Optional, boolean) Set this to true, if you want the time-zone attribute use the Server time Zone at run time. This attribute is set to official IANA name. If this is set to false, the time-zone value must be specified. |
| time-zone | (Optional, string) Use this attribute to specify a time zone other than the Server time zone at run time. Only canonical names in the official IANA database are supported. You can find the list of the canonical time zone names on Wikipedia. |
| autoSuspendRefreshEnabled | (Optional) Tableau can automatically suspend extract refresh tasks for inactive workbooks to save resources. Specify true to enable or false to disable. Default is true. |
| autoSuspendRefreshInactivityWindow | (Optional) An integer between 7 and 100 to indicate the number of days to wait before automatically suspending extract refresh tasks for inactive workbooks. The default is 30. |
| explainDataEnabled |
(Optional, boolean) Set this attribute to |
| dqwSubscriptionsEnabled |
(Optional, boolean) Set this attribute to |
| attribute-capture-enabled |
(Optional, boolean) Set this attribute to Starting in October 2025 (API version 3.27), you can also use this attribute to pass user information about your identity provider to Tableau Cloud. During single sign-on (SSO), user attribute functions in Tableau content can accept attributes from OIDC claims or SAML assertions. For more information, see OIDC or SAML topics in the Tableau Cloud Help.
|
| groupAssertionsEnabled | (Optional) Set to true to allow assertions into group membership using session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for the entire site, including the following settings:
|
| groupAssertionsSAMLEnabled | (Optional, boolean) Set to true to allow assertions into group membership using SAML session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for SAML sessions. |
| groupAssertionsOIDCEnabled |
(Optional, boolean) Set to true to allow assertions into group membership using OIDC session info. Set to false if you don't want users to be able to be asserted in to groups. The default is false. If this attribute is set to false, it will disable group assertions for OIDC sessions. |
| groupAssertionsConnectedAppsEnabled | (Optional, boolean) Set to true to allow assertions into group membership using Connected App JWT tokens. Set to false if you don't want users to be able to be asserted into groups via connected apps. The default is false. If this attribute is set to false, it will disable group assertions for JWT connected app connections. |
| groupSetsEnabled | (Optional, boolean) Set to true to allow groups sets. Set to false if you don't want group sets support for the site. The default is false. If this attribute is set to false, it will disable group sets for the site. |
| recycleBinEnabled | (Optional, boolean) Set to true to enable the Recycle Bin. Set to false to disable it. The default is true. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Invalid revision history limit | The value for the revision history limit isn't an integer. |
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400004 | Invalid administrator mode | An administrator mode parameter was provided in the request with an invalid value. The valid values are ContentOnly and ContentAndUsers. |
| 400 | 400004 | Invalid state | A state parameter was provided in the request with an invalid value |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type wasn't PUT. |
| 409 | 409001 | Site name conflict | The new site name in the request already belongs to an existing site. |
| 409 | 409002 | Site URL conflict | The new content URL in the request already belongs to an existing site. |
| 409 | 409004 | User quota and tiered capacity conflict | The request can't set both tiered capacity attributes and userQuota. One or the other must be null. |
| 409 | 409004 | License limit exceeded | The request can't set tiered capacity attributes or userQuota values that are larger than the number of active licenses configured for the site. |
| 409 | 409004 | Administrator mode or user quota conflict | The request can't set adminMode to ContentOnly and also specify a userQuota value. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the subscription in. |
| subscription-subject | A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. A description is required. |
| attach-image-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| attach-pdf-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| page-orientation |
(Optional) The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-size-option |
(Optional) The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
| message | The text body of the subscription email message. |
| suspended-flag | (Optional) If true, the subscription is created in a disabled state, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. The default value is false. |
| content-type | Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
| send-view-if-empty-flag | (Optional) Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
| custom-view-id | (Optional) Applies to views only. The LUID of a custom view to use instead of the default view. |
| content-id | The ID of the workbook or view to subscribe to. |
| schedule-id | The ID of a schedule to associate the subscription with. To determine what schedules are available,
call List Server Schedules. The type of the schedule must be Subscription.
|
| user-id | The ID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400067 | Invalid subscription subject | The subscription subject is null or empty. |
| 400 | 400068 | Invalid subscription target | The content type specified in the request body is not a workbook or view. |
| 400 | 400069 | Invalid subscription type | The subscription type is not Workbook or View. |
| 400 | 400069 | Invalid schedule type | The schedule type is not Subscription. |
| 403 | 403060 | No permissions to create subscription. | The user does not have permission to create a subscription for the specified content. |
| 403 | 403063 | No user permissions for content. | The user specified in the request body does not have Read (view) permissions for the specified content. |
| 403 | 403064 | No user email address. | The user does not have an email address. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 400 | 404006 | Workbook not found | The workbook ID in the request body doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the request body doesn't correspond to an existing view. |
| 404 | 404023 | Schedule not found | The schedule ID in the request body doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
subscription subject
|
(Required to create subscription) string: A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. |
subscription attachImage
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription attachPdf
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription pageOrientation
|
enumeration: The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
subscription pageSizeOption
|
enumeration: The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
subscription message
|
string: The text body of the subscription email message. |
subscription suspended
|
boolean: If true, the subscription is created in a disabled state, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. The default value is false. |
content id
|
(Required to create subscription) LUID: The LUID of the workbook or view the user should be subscribed to. |
content type
|
(Required to create subscription) enumeration: Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
content sendIfViewEmpty
|
boolean: Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
content customViewID
|
string: Applies to views only. The LUID of a custom view to use instead of the default view. |
userId
|
(Required to create subscription) LUID: The LUID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request.. |
| 404 | 404002 | User not found | The user specified in the request could not be found. |
| 404 | 404025 | Subscription not found | The task for the subscription could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the subscription. |
| subscription-id | The ID of the subscription to delete. To determine what subscriptions are available, call Query Subscriptions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400062 | Error deleting the subscription. | An unspecified error occurred during the deletion operation. |
| 401 | 401002 | User not authenticated. | The user making the request has not been authenticated for this site. |
| 403 | 403059 | Delete forbidden. | A non-administrator user called this method but doesn't have permission to delete the subscription. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the subscriptions. |
| subscription-id | The ID of the subscription to get information for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403058 | Unauthorized | The user attempted to get information for a subscription that they don't have permission to access. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404025 | Subscription not found | The specified subscription doesn't correspond to an existing subscription. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the subscriptions. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for the sites at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| subscription-id | The ID of the subscription to update. |
| new-subscription-subject | (Optional) A new subject for the subscription. |
| attach-image-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| attach-pdf-flag |
(Optional) Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
| page-orientation |
(Optional) The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-size-option |
(Optional) The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
| suspended-flag |
(Optional boolean) If |
| new-schedule-id | (Optional) The ID of a server schedule to associate this subscription with. To determine what schedules are available,
call List Server Schedules. The type of the schedule must be Subscription.
|
| send-view-if-empty-flag | (Optional) Applies to views only. If true, an image is sent even if the view specified in a subscription is empty. If false, nothing is sent if the view is empty. The default value is true. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400067 | Invalid subscription subject | The subscription subject is null or empty. |
| 400 | 400069 | Invalid subscription type | The subscription type is not Workbook or View. |
| 400 | 400069 | Invalid schedule type | The schedule type is not Subscription. |
| 400 | 400133 | Invalid data condition type | The data condition type is invalid for the subscription. |
| 403 | 403065 | No permissions to update subscription. | The user does not have permission to update the specified subscription. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404023 | Schedule not found | The schedule ID in the request body doesn't correspond to an existing schedule. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| task-luid | The LUID of the extract refresh task. Use Query subscriptions to find task IDs by subscription subject or user. |
subscription subject
|
(Required to create subscription) string: A description for the subscription. This description is displayed when users list subscriptions for a site in the server environment. |
subscription attachImage
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription attachPdf
|
boolean: Setting this If subscriptions to attachments are disabled in Tableau server or site settings,
then making a request that sets |
subscription pageOrientation
|
enumeration: The orientation of the pages produced when attach-pdf-flag
is true. The value can be Portrait or
Landscape. If this parameter is not present the page orientation will default to Portrait.
|
subscription pageSizeOption
|
enumeration: The type of page produced, which determines the page dimensions when
attach-pdf-flag is true. The value can be:
A3, A4, A5, B5, Executive, Folio,
Ledger, Legal, Letter, Note, Quarto, or
Tabloid. If this parameter is not present the page type will default to Letter.
|
subscription message
|
string: The text body of the subscription email message. |
subscription suspended
|
boolean: If true, the subscription is disabled, meaning it won't run until it's enabled using the Update Subscription method or Resume Subscription in the web UI. If false, the subscription is enabled. |
content id
|
(Required to create subscription) LUID: The LUID of the workbook or view the user should be subscribed to. |
content type
|
(Required to create subscription) enumeration: Workbook to create a subscription for a workbook, or View to create a subscription for a view.
|
content sendIfViewEmpty
|
boolean: Applies to views only. If true, an image is sent even if the view specified in a subscription is
empty. If false, nothing is sent if the view is empty. The default value is true.
|
userId
|
(Required to create subscription) LUID: The LUID of the user to create the subscription for.
Note: The user must have an email address defined in Tableau Server. |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Unauthorized Access | The user is not authorized to make this request. |
| 404 | 404002 | User not found | The user specified in the request could not be found. |
| 404 | 404025 | Subscription not found | The task for the subscription could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Bad Request | The requested resource could not be found. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Site Not Found | The site ID in the URI doesn't correspond to an existing site. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
extensionsEnabled
|
Required. Boolean. If |
blocklist
|
(Optional) Array. A list of domains that are not allowed to serve extensions to the Tableau Server. Domains are in the form of
(Optional) String. The URL of the extension you want to from the server. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Bad Request | The requested resource could not be found. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
extensionsEnabled
|
Required. Boolean. If true, extensions are allowed to run on the site. If false, no extensions are aloowed to run on the site even if their URL is in the site safelist. |
useDefaultSetting
|
(Optional) Boolean. If extensions are enabled on the server, the default settings allow extensions to run on a site, provided the extension is not specifically blocked on the server. |
safeList url
|
(Optional) Array. The list of URLs of the extensions allow to run on the site. Regular expressions are supported. An extension permissions to run an a site are also dependent on the domain of the URL not being present on the server blocklist, and server and site extension enablement being Note that updating the safelist replaces the existing list with the new list. If you want to add a URL to the existing list, you must also include the existing URLs in the new list. |
safeList fullDataAllowed
|
(Optional) Boolean. Set to true to allow the extension full access to the underlying data. By default, when you add an extension to the safe list, the extension only has access to the summary (or aggregated) data. Many extensions require full data access to function properly. |
safeList promptNeeded
|
(Optional) Boolean. The prompt tells users details about the extension and whether the extension has access to full data. Set to true to give users the ability to allow or deny the extension from running. Set to false to hide this prompt from users, allowing the extension to run immediately. |
allowTrusted
|
(Optional) Boolean. If true, specific categories of extensions (sandboxed, Tableau-built, or partner-built) are allowed to run by default on the site. If false, no extensions are allowed unless they are explicitly added to the safeList. |
includeSandboxed
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, sandboxed extensions are allowed to run by default. Sandboxed extensions run in a protected environment and cannot access other resources or data on the web. |
includeTableauBuilt
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, extensions built by Tableau are allowed to run by default. |
includePartnerBuilt
|
(Optional) Boolean. Valid only if allowTrusted is true. When true, extensions built by Tableau's trusted partners are allowed to run by default. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403000 | Non-admin access forbidden | The client attempted to access an API method while signed in as a non-administrator user. |
| 404 | 404000 | Site Not Found | The site ID in the URI doesn't correspond to an existing site. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| mcp-setting-key | (Required) String. Specifies the setting to assign a value to. |
|
mcp-setting-value |
(Required) String. Provides the value for the associated key. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid parameter | The mcpSiteSettings entity is empty; the settings key is null, missing, or invalid; or site LUID format is invalid. |
| 401 | 401002 | Invalid authentication credentials | Missing or invalid authentication credentials. |
| 401 | 403001 | Missing authentication token | Authentication token not provided. |
| 403 | 403000 | Insufficient permissions | User isn't an administrator. |
| 403 | 403010 | Site mismatch | Authenticated user's site does not match the site LUID in the request. |
| 403 | 403157 | Feature disabled | Feature not enabled. |
| 403 | N/A | Insufficient OAuth scope | The user lacks the required OAuth scope. |
| 404 | 404000 | Site not found | A site with the specified LUID does not exist. |
| 500 | 500000 | Internal server error | Unknown server error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid parameter | The site LUID format is invalid. |
| 401 | 401002 | Invalid authentication credentials | Missing or invalid authentication credentials. |
| 401 | 403001 | Missing authentication token | Authentication token not provided. |
| 403 | 403010 | Site mismatch | Authenticated user's site does not match the site LUID in the request. |
| 403 | 403157 | Feature disabled | Feature not enabled. |
| 403 | N/A | Insufficient OAuth scope | The user lacks the required OAuth scope. |
| 404 | 404000 | Site not found | A site with the specified LUID does not exist. |
| 500 | 500000 | Internal server error | Unknown server error. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| key | (Required) String. Specifies which setting to add, modify, or remove. |
| value | (Optional) String. Provides the value associated with the key. If this property is omitted, then the associated key will be removed from the current Tableau MCP settings for the given site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409004 | Invalid parameter | The mcpSiteSettings entity is empty; the settings key is null, missing, or invalid; or site LUID format is invalid. |
| 401 | 401002 | Invalid authentication credentials | Missing or invalid authentication credentials. |
| 401 | 403001 | Missing authentication token | Authentication token not provided. |
| 403 | 403000 | Insufficient permissions | User isn't an administrator |
| 403 | 403010 | Site mismatch | Authenticated user's site does not match the site LUID in the request. |
| 403 | 403157 | Feature disabled | Feature not enabled. |
| 403 | N/A | Insufficient OAuth scope | The user lacks the required OAuth scope. |
| 404 | 404000 | Site not found | A site with the specified LUID does not exist. |
| 500 | 500000 | Internal server error | Unknown server error. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| enabled | boolean |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| enabled | boolean |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.analyticsextensions.v1.ConnectionBrief) | |
| connection_luid | string |
| host | string Required. The location of an external service (TabPy, Rserve, EINSTEIN_DISCOVERY, Generic API, or other) that responds to your analytics extension requests. The case sensitive value must be a URI, IPv4 or IPv6 address that is a maximum of 255 Unicode characters. Starting in Tableau Server 2022.1 / Tableau Cloud April 2022, a host
address can include path information ( |
| is_auth_enabled | boolean For Tableau Cloud: The value is always true. For on premise Tableau servers: Optional. Set to true if authentication is enabled on the external service. If true, username and password are required. Default is false. |
| is_ssl_enabled | boolean For Tableau Cloud: The value is always true. For on premise Tableau servers: Optional. Set to true if authentication is enabled on the external service. If true, username and password are required. Default is false. |
| password | string For Tableau Cloud: A password is always required. |
| port | integer <int32> Required. Integer between 1 and 65535. |
| username | string For Tableau Cloud: A username is always required. |
| connection_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| connection_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| connection_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.analyticsextensions.v1.ConnectionBrief) | |
| connection_luid | string |
| host | string Required. The location of an external service (TabPy, Rserve, EINSTEIN_DISCOVERY, Generic API, or other) that responds to your analytics extension requests. The case sensitive value must be a URI, IPv4 or IPv6 address that is a maximum of 255 Unicode characters. Starting in Tableau Server 2022.1 / Tableau Cloud April 2022, a host
address can include path information ( |
| is_auth_enabled | boolean For Tableau Cloud: The value is always true. For on premise Tableau servers: Optional. Set to true if authentication is enabled on the external service. If true, username and password are required. Default is false. |
| is_ssl_enabled | boolean For Tableau Cloud: The value is always true. For on premise Tableau servers: Optional. Set to true if authentication is enabled on the external service. If true, username and password are required. Default is false. |
| password | string For Tableau Cloud: A password is always required. |
| port | integer <int32> Required. Integer between 1 and 65535. |
| username | string For Tableau Cloud: A username is always required. |
| workbook_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| workbook_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| workbook_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| workbook_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| connection_luid | string |
| workbook_luid | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| datasource_id | string Required. Luid of the datasource to which the lens is associated to |
| description | string Optional. Description of the lens. 4000 characters maximum |
Array of objects (tableau.nlp.lens.publicrest.v1.FieldDetail) Optional. The fields of the lens. If not specified, a lens with all the qualifying fields from the data source will be created. A lens field contains synonyms used for natural language query, to map words that might be used to mean the same thing as the name of fields or the values fields might have. | |
| is_feedback_enabled | boolean Required. Indicates if feedback to lens author setting is enabled. |
| name | string Required. Name of the lens . Up to 300 characters |
| project_id | string Required. Luid of the project in which lens should be created. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.nlp.lens.publicrest.v1.Lens) Details of the lens to be imported. | |
object (tableau.nlp.lens.publicrest.v1.LensTransformation) Optional. The details of transformation to perform on the lens during import. |
| lens_id required | string The LUID of the lens to be deleted. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| lens_id required | string The LUID of the lens. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| luid | Array of strings Use |
| filter | string (Optional) The field(s) that will be used to filter results. Valid options include: For more information, see Filtering and Sorting. |
| page number | integer <int32> (Optional) The page number of returnable items to provide in response. The default value is 1. |
| page size | integer <int32> (Optional) The number of items to return per response page. The default value is 100. |
| sort order | string (Optional) The name of the field used to sort results. Valid options include: Sort direction can be For more information, see Filtering and Sorting. |
| description | string (Optional) Description for the new collection. |
| name required | string Name for the new collections. If this name already exists for the user, a number will be appended. |
Array of objects (tableau.collectionsservice.BatchUpdateCollectionModel) |
| luid required | string |
| luid | Array of strings Use |
| luid required | string The LUID of the collection to return details for. |
| luid required | string The LUID of the collection whose items are being listed. |
| filter | string (Optional) The field(s) that will be used to filter results. Valid options include: For more information, see Filtering and Sorting. |
| page number | integer <int32> (Optional) The page number of returnable items to provide in response. The default value is 1. |
| page size | integer <int32> (Optional) The number of items to return per response page. The default value is 100. |
| sort order | string (Optional) The name of the field used to sort results. Valid options include: Sort direction can be For more information, see Filtering and Sorting. |
| luid required | string The LUID of the collection that items are being added to. |
Array of objects (tableau.collectionsservice.CollectionAddItemModel) A list of the items to add to or remove from a collection. |
| luid required | string The LUID of the collection that items are being removed from. |
Array of objects (tableau.collectionsservice.CollectionAddItemModel) A list of the items to add to or remove from a collection. |
| luid required | string |
Array of objects (tableau.collectionsservice.CollectionOrderItemModel) A list of item orderings to reorder collection items |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
Array of objects (tableau.usagestats.v1.ContentItemId) |
| luid required | string |
| type required | string The content type of the kind of resource being specified, for instance: 'workbooks', 'flows', and 'datasources'. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
|
|
| filter | string (Optional) An expression to filter the response using one of the following parameters, or a combination of expressions separated by a comma.
or:
or:
For more information about filter expressions, see Filtering and Sorting in the Tableau REST API. |
| limit | integer <int32> (Optional) The number of items to return on each response page. The default is 10. |
| order_by | string Enum: "hitsTotal" "hitsSmallSpanTotal" "hitsMediumSpanTotal" "hitsLargeSpanTotal" "downstreamWorkbookCount"
Append Your search expression can have more than one comma separated |
| page | integer <int64> (Optional) The number of the page in the list response pages to return. Maximum number of items returned is 2,000 |
| terms | string (Optional) One or more terms the search uses as the basis for which items are relevant to return. The items may be of any supported content type. The relevance may be assessed based on any element of a given item. If no terms are supplied, then results will be based filtering and page size limits. |
| filter | string A filter to restrict suggestions to specified content types. The supported operators are: |
| limit | integer <int32> The number of suggestions to return. The default is 10. |
| recentsLuids | string A comma separated list of luids that will be prioritized in scoring of content items matched to suggest. |
| terms required | string The term that is matched to find suggestions. |
| site_luid required | string The LUID of the Tableau site associated with the custom domain. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| site_luid required | string The LUID of the Tableau site. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| site_luid required | string The LUID of the Tableau site associated with the custom domain. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| custom_domain | string The custom domain associated with the Tableau site. |
| site_luid | string The LUID of the Tableau site associated with the custom domain. |
| status | string Enum: "Requested" "CnameVerificationRequested" "CnameVerificationInProgress" "CnameVerificationFailed" "CnameVerificationSuccess" "Provisioning" "Deleting" "CustomDomainProvisioned" The provisioning status of the custom domain. |
| tls_certificate | string The TLS certificate for the custom domain, including the CA certs. The form of the certificate is:
|
| tls_certificate_private_key | string The private key corresponding to the TLS certificate.
|
| site_luid required | string The LUID of the Tableau site associated with the custom domain. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| custom_domain | string The custom domain associated with the Tableau site. |
| site_luid | string The LUID of the Tableau site associated with the custom domain. |
| status | string Enum: "Requested" "CnameVerificationRequested" "CnameVerificationInProgress" "CnameVerificationFailed" "CnameVerificationSuccess" "Provisioning" "Deleting" "CustomDomainProvisioned" The provisioning status of the custom domain. |
| tls_certificate | string The TLS certificate for the custom domain, including the CA certs. The form of the certificate is:
|
| tls_certificate_private_key | string The private key corresponding to the TLS certificate.
|
| site_luid required | string The LUID of the Tableau site associated with the custom domain. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
Array of objects (tableau.extensions.dashboard.v1.BlockListItem) | |
| extensions_enabled | boolean Specifies whether sandboxed extensions are allowed to run on the site. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| block_list_item_luid | string |
| url | string Location of the dashboard extension to be blocked from a site. |
| block_list_item_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| block_list_item_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| allow_sandboxed | boolean Specifies whether sandboxed extensions are allowed to run on the site. |
| extensions_enabled | boolean Specifies whether extensions are allowed to run on the site. |
Array of objects (tableau.extensions.dashboard.v1.SafeListItem) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| allow_full_data | boolean When true, the extension has access to underlying data of a workbook. This setting is only effective when the extension is on the site safe list. Default is false. |
| prompt_needed | boolean When true, the user will be prompted to grant an extension access to the underlying data of a workbook. This setting is only effective when the extension is on the site safe list. Default is false. |
| safe_list_item_luid | string |
| url | string Location (URL) of the dashboard extension to be allowed on a site. |
| safe_list_item_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| safe_list_item_luid required | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| safe_list_item_luid required | any |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| allow_full_data | boolean When true, the extension has access to underlying data of a workbook. This setting is only effective when the extension is on the site safe list. Default is false. |
| prompt_needed | boolean When true, the user will be prompted to grant an extension access to the underlying data of a workbook. This setting is only effective when the extension is on the site safe list. Default is false. |
| safe_list_item_luid | string |
| url | string Location (URL) of the dashboard extension to be allowed on a site. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| auth_type | string Value: "OIDC" Required. Authentication type. |
| iframed_idp_enabled | boolean Default: false If |
object (tableau.authn.v1.OidcConfig) |
| id required | integer <int32> Required. Authentication instance ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| id required | integer <int32> Required. Authentication instance ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| auth_type | string Value: "OIDC" Required. Authentication type. |
| id | integer <int32> Required. Authentication instance ID. |
| iframed_idp_enabled | boolean Default: false if |
object (tableau.authn.v1.OidcConfig) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| auth_type_instance | integer <int32> Required. ID of the authentication instance to configure with this identity pool. |
| description | string Identity pool description displayed to users when they sign in. |
| identity_store_instance | integer <int32> Required. ID of the identity store instance to configure with this identity pool. |
| is_enabled | boolean Identity pool is enabled by default. |
| name | string Required. Identity pool name. Must be unique. This name is visible on the Tableau Server landing page when users sign in. |
| uuid required | string Required. Identity pool ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| uuid required | string Required. Identity pool ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| uuid required | string Required. Identity pool ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| description | string Identity pool description displayed to users when they sign in. |
| is_enabled | boolean Identity pool is enabled by default. |
| name | string Identity pool name. Must be unique. This name is visible on the Tableau Server landing page when users sign in. |
| uuid | string Required. Identity pool ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| display_name | string Identity store display name. |
| name | string Required. Identity store name. Must be unique. |
| type | string Value: "0" Required. Identity store type used to provision users. Use 0 to configure a new local identity store. Note: Configuring a new identity store of type Active Directory or LDAP is not supported. |
| id required | integer <int32> Required. Identity store ID. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| after | string If |
| page_size | integer <int32> Specifies the number of results in a paged response. Example:
Combining Path Parameters: A page_size expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| page_token | string Specifies the page of items to be returned from a requested list. The value of Example:
A page_token expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| enable_sorting | boolean If |
| exclude_metrics_without_followers | boolean Exclude metrics that have no followers. |
| filter | string Filter the results to only include metrics that match the filter. The filter is a string that is used to match the metric name. The filter is case insensitive. |
| metric_id | string If a metric LUID is specified, only return the definition that is related to the metric, and the details of the metric. |
| number_of_metrics | integer <int64> (Required if |
| order_by | string The sort order of the results. The format is |
| page_size | integer <int32> Specifies the number of results in a paged response. Example:
Combining Path Parameters: A page_size expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| page_token | string Specifies the page of items to be returned from a requested list. The value of Example:
Combining Path Parameters: A page_token expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| view | string Enum: "DEFINITION_VIEW_UNSPECIFIED" "DEFINITION_VIEW_BASIC" "DEFINITION_VIEW_FULL" "DEFINITION_VIEW_DEFAULT" The range of metrics to return for a definition. The default is
|
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.metricqueryservice.types.v1.Certification) | |
object (tableau.metricqueryservice.types.v1.Comparisons) | |
Array of objects (tableau.metricqueryservice.types.v1.DatasourceGoalSpecification) | |
| description | string The description of the metric definition. |
object (tableau.metricqueryservice.types.v1.ExtensionOptions) | |
object (tableau.metricqueryservice.types.v1.InsightsOptions) | |
| name | string The name of the metric definition. |
Array of objects (tableau.metricqueryservice.types.v1.Link) | |
object (tableau.metricqueryservice.types.v1.RepresentationOptions) | |
object (tableau.metricqueryservice.types.v1.DefinitionSpecification) | |
Array of objects (tableau.metricqueryservice.v1.DefinitionTag) The tags to apply to the metric definition. |
| page_size | integer <int32> Specifies the number of results in a paged response. Example:
Combining Path Parameters: A page_size expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| page_token | string Specifies the page of items to be returned from a requested list. The value of Example:
A page_token expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| definition_filter | string |
| datasource_luid | string |
| filter | string |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_id required | string (Required) The LUID of the metric definition. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_id required | string (Required) The LUID of the metric definition. |
| number_of_metrics | integer <int64> (Required if |
| view | string Enum: "DEFINITION_VIEW_UNSPECIFIED" "DEFINITION_VIEW_BASIC" "DEFINITION_VIEW_FULL" "DEFINITION_VIEW_DEFAULT" The range of metrics to return for a definition. The default is
|
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_id required | string (Required) The LUID of the metric definition. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.metricqueryservice.types.v1.Certification) | |
object (tableau.metricqueryservice.types.v1.Comparisons) | |
Array of objects (tableau.metricqueryservice.types.v1.DatasourceGoalSpecification) A list of the datasource goals. | |
| definition_id | string Required) The LUID of the metric definition. |
| description | string The description of the definition. |
object (tableau.metricqueryservice.types.v1.ExtensionOptions) | |
object (tableau.metricqueryservice.types.v1.InsightsOptions) | |
| name | string The name of the metric definition. |
Array of objects (tableau.metricqueryservice.types.v1.Link) A list of the related links. | |
object (tableau.metricqueryservice.types.v1.RepresentationOptions) | |
object (tableau.metricqueryservice.types.v1.DefinitionSpecification) | |
Array of objects (tableau.metricqueryservice.v1.DefinitionTag) The tags to apply to the metric definition. |
| definition_id required | string (Required) The LUID of the metric definition. |
| enable_sorting | boolean |
| exclude_metrics_without_followers | boolean If |
| filter | string Filter the results to only include metrics that match the filter. The filter is a string that is used to match the metric name. The filter is case insensitive. |
| order_by | string |
| page_size | integer <int32> Specifies the number of results in a paged response. Example:
Combining Path Parameters: A page_size expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| page_token | string Specifies the page of items to be returned from a requested list. The value of Example:
Combining Path Parameters: A page_token expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_ids | string (Required) The metric definitions to get, formatted as a comma separated list of LUIDs. |
| number_of_metrics | integer <int64> (Required if |
| view | string Enum: "DEFINITION_VIEW_UNSPECIFIED" "DEFINITION_VIEW_BASIC" "DEFINITION_VIEW_FULL" "DEFINITION_VIEW_DEFAULT" The range of metrics to return for a definition. The default is
|
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_ids | Array of strings |
| number_of_metrics | integer <int64> |
| view | string Enum: "DEFINITION_VIEW_UNSPECIFIED" "DEFINITION_VIEW_BASIC" "DEFINITION_VIEW_FULL" "DEFINITION_VIEW_DEFAULT" |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
required | object (tableau.imageservice.v1.GenerateMetricCardImageRequest.Input) |
object (tableau.imageservice.v1.GenerateMetricCardImageRequest.Settings) Customization options for metric card image generation. | |
object (tableau.imageservice.v1.GenerateMetricCardImageRequest.Settings) Customization options for metric card image generation. | |
object (tableau.imageservice.v1.GenerateMetricCardImageRequest.Input) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| language | string Enum: "LANGUAGE_UNSPECIFIED" "LANGUAGE_DE_DE" "LANGUAGE_EN_US" "LANGUAGE_EN_GB" "LANGUAGE_ES_ES" "LANGUAGE_FR_FR" "LANGUAGE_FR_CA" "LANGUAGE_GA_IE" "LANGUAGE_IT_IT" "LANGUAGE_JA_JP" "LANGUAGE_KO_KR" "LANGUAGE_NL_NL" "LANGUAGE_PT_BR" "LANGUAGE_SV_SE" "LANGUAGE_TH_TH" "LANGUAGE_ZH_CN" "LANGUAGE_ZH_TW" The language of the insight brief. |
| locale | string Enum: "LOCALE_UNSPECIFIED" "LOCALE_AR_AE" "LOCALE_AR_BH" "LOCALE_AR_DZ" "LOCALE_AR_EG" "LOCALE_AR_IQ" "LOCALE_AR_JO" "LOCALE_AR_KW" "LOCALE_AR_LB" "LOCALE_AR_LY" "LOCALE_AR_MA" "LOCALE_AR_OM" "LOCALE_AR_QA" "LOCALE_AR_SA" "LOCALE_AR_SD" "LOCALE_AR_SY" "LOCALE_AR_TN" "LOCALE_AR_YE" "LOCALE_BE_BY" "LOCALE_BG_BG" "LOCALE_CA_ES" "LOCALE_CS_CZ" "LOCALE_DA_DK" "LOCALE_DE_AT" "LOCALE_DE_CH" "LOCALE_DE_DE" "LOCALE_DE_LU" "LOCALE_EL_CY" "LOCALE_EL_GR" "LOCALE_EN_AU" "LOCALE_EN_CA" "LOCALE_EN_GB" "LOCALE_EN_IE" "LOCALE_EN_IN" "LOCALE_EN_MT" "LOCALE_EN_NZ" "LOCALE_EN_PH" "LOCALE_EN_SG" "LOCALE_EN_US" "LOCALE_EN_ZA" "LOCALE_ES_AR" "LOCALE_ES_BO" "LOCALE_ES_CL" "LOCALE_ES_CO" "LOCALE_ES_CR" "LOCALE_ES_DO" "LOCALE_ES_EC" "LOCALE_ES_ES" "LOCALE_ES_GT" "LOCALE_ES_HN" "LOCALE_ES_MX" "LOCALE_ES_NI" "LOCALE_ES_PA" "LOCALE_ES_PE" "LOCALE_ES_PR" "LOCALE_ES_PY" "LOCALE_ES_SV" "LOCALE_ES_US" "LOCALE_ES_UY" "LOCALE_ES_VE" "LOCALE_ET_EE" "LOCALE_FI_FI" "LOCALE_FR_BE" "LOCALE_FR_CA" "LOCALE_FR_CH" "LOCALE_FR_FR" "LOCALE_FR_LU" "LOCALE_GA_IE" "LOCALE_HE_IL" "LOCALE_HI_IN" "LOCALE_HR_HR" "LOCALE_HU_HU" "LOCALE_ID_ID" "LOCALE_IN_ID" "LOCALE_IS_IS" "LOCALE_IT_CH" "LOCALE_IT_IT" "LOCALE_IW_IL" "LOCALE_JA_JP" "LOCALE_KO_KR" "LOCALE_LT_LT" "LOCALE_LV_LV" "LOCALE_MK_MK" "LOCALE_MS_MY" "LOCALE_MT_MT" "LOCALE_NL_BE" "LOCALE_NL_NL" "LOCALE_NB_NO" "LOCALE_NO_NO" "LOCALE_PL_PL" "LOCALE_PT_BR" "LOCALE_PT_PT" "LOCALE_RO_RO" "LOCALE_RU_RU" "LOCALE_SK_SK" "LOCALE_SL_SI" "LOCALE_SQ_AL" "LOCALE_SR_BA" "LOCALE_SR_ME" "LOCALE_SR_RS" "LOCALE_SV_SE" "LOCALE_TH_TH" "LOCALE_TR_TR" "LOCALE_UK_UA" "LOCALE_VI_VN" "LOCALE_ZH_CN" "LOCALE_ZH_HK" "LOCALE_ZH_SG" "LOCALE_ZH_TW" The locale of the insight brief. Defaults to LOCALE_EN_US. |
Array of objects (tableau.pulse.embeddingsservice.v1.Message) The definition of the content of the insight brief. | |
| now | string If specified, the date/time to use as current for insight analysis. If empty the current date/time is used. The format should be |
| time_zone | string The time zone to use for insight analysis. If empty, UTC is used. For more information on valid values see the List of tz database time zones |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GenerateInsightBundleRequest) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.insightsservice.v1.GetMeasurementPeriodsRequest.MeasurementPeriodsInput) | |
object (tableau.pulse.insightsservice.v1.GetMeasurementPeriodsRequest.MeasurementPeriodsInput) | |
object (tableau.pulse.insightsservice.v1.GetMeasurementPeriodsRequest.MeasurementPeriodsOptions) | |
object (tableau.pulse.insightsservice.v1.GetMeasurementPeriodsRequest.MeasurementPeriodsOptions) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_id | string (Required) The LUID of the definition. |
object (tableau.metricqueryservice.types.v1.MetricSpecification) |
| metric_id required | string (Required) The LUID of the metric to be deleted. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| metric_id required | string (Required) The LUID of the metric to get. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| metric_id required | string (Required) The LUID of the metric to be updated. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.metricqueryservice.types.v1.MetricGoals) | |
| metric_id | string |
object (tableau.metricqueryservice.types.v1.MetricSpecification) |
| metric_id required | string The LUID of the metric the tag is is being created for. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| category | string Enum: "CATEGORY_UNSPECIFIED" "CATEGORY_USER_DEFINED" "CATEGORY_SYSTEM_DEFINED" |
| metric_id | string |
| referrer | string |
| value | string |
| metric_id required | string The LUID of the metric the tag is being deleted from. |
| tag_id required | string The LUID of the tag being deleted from a metric. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| enable_sorting | boolean (Required) If true, the metrics will be sorted by the metric name. If false, the metrics will be returned in the order they were requested. |
| metric_ids | string (Required) The metrics to get, formatted as a comma separated list of LUIDs. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| enable_sorting | boolean |
| metric_ids | Array of strings |
| group_by | string Enum: "GROUP_BY_UNSPECIFIED" "GROUP_BY_RECENTLY_FOLLOWED" "GROUP_BY_DEFINITION_NAME" "GROUP_BY_DATASOURCE_LABEL" "GROUP_BY_TIME_RANGE" |
| sort_order | string Enum: "SORT_ORDER_UNSPECIFIED" "SORT_ORDER_ASCENDING" "SORT_ORDER_DESCENDING" The order to use in sorting returns. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| definition_id | string (Required) The LUID of the definition for the metric. |
object (tableau.metricqueryservice.types.v1.MetricSpecification) |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| metric_id | string The LUID of a metric whose subscriptions will be returned. |
| order_by | string The sort order of the results. The format is |
| page_size | integer <int32> Specifies the page of items to be returned from a requested list. The value of Example:
Combining Path Parameters: A page_size expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| page_token | string Specifies the page of items to be returned from a requested list. The value of Example:
A page_token expression can be combined with other path parameters using an ampersand (&) as a separator, and is typically used along with a page number expression. |
| user_id | string The LUID of a user whose subscriptions will be returned. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
object (tableau.pulse.subscriptionservice.types.v1.Follower) | |
| metric_id | string (Required) The LUID of the metric a subscription is being created to. |
| id required | string The LUID of the subscription being deleted. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| id required | string (Required) The LUID of the subscription being requested. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
Array of objects (tableau.pulse.subscriptionservice.types.v1.Follower) (Required) Users and/or groups being subscribed to the metric. | |
| metric_id | string (Required) The LUID of the metric that a batch of users and or groups are being subscribed to. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| metric_ids | string (Required) The metrics to get follower counts for, formatted as a comma separated list of LUIDs. If no LUIDs are specified, the follower count for all metrics in a definition will be returned. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| user_id | string (Optional) The user ID to get preferences for. If not specified, the preferences for the signed in user will be returned. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| user_id | string (Optional) The user ID to update preferences for. If not specified, the preferences for the signed in user will be updated. |
| X-Tableau-Auth | string The Tableau authentication header. The value is a credentials token from a Tableau server's response to an authentication request. The Content-Type and Accept headers should be the mediatype of the request and response except in cases where you want to explicitly allow other versions of the resource. |
| cadence | string Enum: "CADENCE_UNSPECIFIED" "CADENCE_DAILY" "CADENCE_WEEKLY" "CADENCE_MONTHLY" |
Array of objects (tableau.pulse.subscriptionservice.types.v1.ChannelPreferencesRequest) | |
| digest_metric_filter | string Enum: "DIGEST_METRIC_FILTER_UNSPECIFIED" "DIGEST_METRIC_FILTER_ALL_FOLLOWED" "DIGEST_METRIC_FILTER_FAVORITES" |
object (tableau.pulse.subscriptionservice.types.v1.MetricGroupingPreferences) | |
| user_id | string The LUID of the user. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| query required | string Natural-language search text. Embedded and ranked by vector similarity, so it matches on meaning rather than exact name (for example, "revenue" can match a field named "Net Sales"). |
| node_type | string or null Restrict results to a single node type (for example, FIELD, PDS). Conceptually a NodeType value, but typed as a plain string rather than the enum, since the server doesn't strictly enforce it. Case-insensitive (the server converts to uppercase before matching). Omit to search across all node types. |
| scope_id | string or null Limit the search to one data source's subtree: the given container/PDS node plus every table and field it owns. Omit to search the whole graph. |
| limit | integer or null Default: 10 Maximum number of ranked matches. Defaults to 10 when omitted; values outside 1-100 are silently adjusted to the nearest bound rather than rejected. Bounds the ranked page before threshold trims it. |
| threshold | number or null [ 0 .. 1 ] Drop matches whose score is below this. Must be between 0 and 1. |
| node_id required | string Graph node id. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| include_children | boolean Default: true Whether to populate |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| node_type | string or null Restrict the source list to one node type (typically PDS or WORKBOOK). Conceptually a NodeType value, but typed as a plain string rather than the enum, since the server doesn't strictly enforce it. An unrecognized value yields an empty array (not a 400). Omit to return all source nodes. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| node_id | string or null Anchor node id to list edges around. Takes precedence over |
| query | string or null Natural-language text used to resolve the anchor node by semantic search when |
| edge_type | string or null Restrict results to a single edge type (for example, LINEAGE, DEPENDS_ON). Conceptually an EdgeType value, but typed as a plain string rather than the enum, since the server doesn't strictly enforce it. Case-insensitive (the server converts to uppercase before matching). Omit for all edge types. |
| direction | string or null Enum: "outgoing" "incoming" Restrict results to edges pointing away from (outgoing) or toward (incoming) the anchor. Omit to return edges in both directions. |
| node_id required | string Graph node id. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| node_id required | string Graph node id. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
required | Array of objects (tableau.knowledgeservice.StatementInput) The statements to store on the new context node. Must be non-empty; enforced at runtime as a 400 (not a schema-level 422), so no minItems here, which keeps generated models aligned with the server's. |
| target_node_id | string or null Id of the single node this context describes (a DESCRIBES edge is created). Either this must be set, or |
| is_global | boolean Default: false When true, the context applies to the whole graph instead of one node. Either this must be set to |
| name | string or null Optional display name for the context node. A name is derived automatically when omitted. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| is_global | boolean or null Filter by scope: true = global contexts only, false = attached contexts only. Omit to return both. |
| query | string or null Accepted for forward compatibility; currently ignored. |
| kind | string or null Accepted for forward compatibility; currently ignored. |
| limit | integer or null Accepted for forward compatibility; currently ignored. |
| node_id required | string Graph node id. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| is_global | boolean or null Filter by scope: true = global contexts only, false = attached contexts only. Omit to return both. |
| query | string or null Accepted for forward compatibility; currently ignored. |
| kind | string or null Accepted for forward compatibility; currently ignored. |
| limit | integer or null Accepted for forward compatibility; currently ignored. |
| ctx_id required | string Semantic-context node id (for example, "semctx: |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
Array of objects or null (tableau.knowledgeservice.StatementInput) When present, replaces the stored statement set (an explicit empty array is rejected because at least one is required). Omit to leave the existing statements unchanged. | |
| target_node_id | string or null Presence-sensitive: omit to keep the current attachment, pass an id to re-attach, or pass null to detach (make global). After the update, the context must still be either global or attached to exactly one node, never both, never neither. Must resolve to an enrichable node type (not CONNECTION, SITE, SCHEMA, SEMANTIC_CONTEXT, or SEMANTIC_CONTEXT_EXTERNAL). |
| is_global | boolean or null Set true/false to change global scope; omit to leave it unchanged. After the update, the context must still be either global or attached to exactly one node, never both, never neither. |
| name | string or null New display name for the context node; omit to leave unchanged. |
| ctx_id required | string Semantic-context node id. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| graph_id | string^[A-Za-z0-9._-]{1,128}$ The id of a graph belonging to the caller's Tableau site. Omit to operate on the site's active (primary) graph. |
| pds_id | string or null Scope the report to a single PDS subtree. Omit to report on the whole graph. |
| severity | string or null Enum: "high" "medium" "low" Filter the suggestion lists to one severity (high, medium, or low). The |
| type | string or null Filter the suggestion lists to one suggestion type. Omit for all types. |
| limit | integer or null Truncate the top suggestions to at most this many. |
LEARN Get Started Tutorial make REST requests to your Server or Online site using Postman or cURL |
FIND All Methods List ctrl-f search for methods and parameters by name |
INTEGRATE Tableau Server Client (Python) - call Server and Online site APIs from your existing processes |
JOIN Tableau Developer Program - forums, events, and a free Tableau Cloud sandbox for learning and prototyping |
| Add analytics extension connection to site | Adds a new analytics extension connection for an external service to a site. |
| Delete analytics extension connection from site | Deletes a specific analytics extension connection for an external service from a site. |
| Enable or disable analytics extensions on server - Not available for Tableau Cloud | Enables or disables analytics extensions on a server. |
| Get analytics extension details | Get the details of a specified analytics extension connection to an external service. |
| Get current analytics extension for workbook | Gets basic details, including connection type and name, of the analytics extension connection to an external service that the specified workbook is currently using. |
| Get enabled state of analytics extensions on server - Not available for Tableau Cloud | Gets the enabled/disabled state of analytics extensions on a server. |
| Get enabled state of analytics extensions on site | Gets the enabled/disabled state of analytics extensions on a site. |
| List analytics extension connections of workbook | Lists basic details of each analytics extension connection available for a specified workbook, including connection type and name. |
| List analytics extension connections on site | Lists a site's analytics extension connections for external services. |
| Remove current analytics extension connection for workbook | Remove the currently used analytics extension connection to an external service from the specified workbook. The connection remains configured, and is available for further usage by the workbook. |
| Update analytics extension connection of site | Updates the details of specified analytics extension connection for an external service to a site. |
| Update analytics extension for workbook | Updates the analytics extension connection to external service currently used by a workbook. |
| Update enabled state of analytics extensions on site | Enables or disables analytics extensions on a site. |
| Create ask data lens - Retired in API 3.22 | Create an ask data lens. |
| Delete ask data lens - Retired in API 3.22 | Delete an ask data lens. |
| Get ask data lens - Retired in API 3.22 | Get the details of the specified ask data lens. |
| Import ask data lens - Retired in API 3.22 | Import an existing ask data lens on a server to a site, and optionally transform the metadata of the lens in the process. |
| List ask data lenses in site - Retired in API 3.22 | Returns a list of ask data lenses in a site. |
| List Personal Access Tokens - Not available for Tableau Server. | List all personal access tokens (PATs). If you're a site admin, list PATs of a user when you are the site admin on all sites that the PAT owner is a member of. |
| Revoke Administrator Personal Access Tokens - Not available for Tableau Cloud. | Revokes all personal access tokens (PATs) created by server administrators. This method is not available for Tableau Cloud. |
| Revoke Personal Access Token - Not available for Tableau Server. | Revoke a personal access token (PAT). If you're a site admin, you can revoke a users PAT owhen you are the site admin on all sites that the PAT owner is a member of. |
| Sign In | Signs you in as a user on the specified site on Tableau Server or Tableau Cloud. |
| Sign Out | Signs you out of the current session. This call invalidates the authentication token that is created by a call to Sign In. |
| Switch Site - Not available for Tableau Cloud. | Switches you onto another site without having to provide a user name and password again. |
| Add Domain to Pool - Not available for Tableau Server. | Associates a domain with a specific Bridge pool, allowing Bridge clients from that domain to use the pool. |
| Add Projects to Routing Rule - Not available for Tableau Server. | Adds one or more project filtering conditions to an existing allow rule, narrowing the rule so it applies only to the listed projects. |
| Block Domain - Not available for Tableau Server. | Blocks a domain from being used with any Bridge pool, preventing Bridge clients from that domain from connecting. |
| Create Bridge Pool - Not available for Tableau Server. | Creates a new Bridge pool with the specified name. |
| Create Routing Rule - Not available for Tableau Server. | Creates a Bridge routing rule for a site. |
| Delete Bridge Client - Not available for Tableau Server. | Permanently removes a Bridge client from the site. |
| Delete Bridge Pool - Not available for Tableau Server. | Permanently deletes a Bridge pool and all its associated domain mappings. |
| Delete Domain - Not available for Tableau Server. | Removes a domain mapping from the system. |
| Delete Routing Rule - Not available for Tableau Server. | Permanently deletes a Bridge routing rule identified by its ID. |
| Get Bridge Client - Not available for Tableau Server. | Retrieves detailed information about a single Bridge client. |
| Get Domain Mapping - Not available for Tableau Server. | Retrieves information about all domain mappings for the site, including pool assignment and status (ALLOWED or BLOCKED). |
| Get Routing Rule - Not available for Tableau Server. | Returns a single Bridge routing rule identified by its ID. |
| Get Routing Rules - Not available for Tableau Server. | Returns all Bridge routing rules for the site. |
| List Bridge Clients - Not available for Tableau Server. | Retrieves a list of all Bridge clients for a specific site, with optional filtering by pool. |
| List Bridge Pools - Not available for Tableau Server. | Retrieves a list of all Bridge pools for the specified site, including pool details and associated domain mappings. |
| Move Bridge Client - Not available for Tableau Server. | Moves a Bridge client between pools or to unassigned status. |
| Remove Projects from Routing Rule - Not available for Tableau Server. | Removes one or more project filtering conditions from an existing allow rule, broadening the rule so it no longer applies only to those projects. |
| Update Bridge Pool - Not available for Tableau Server. | Updates the display name of an existing Bridge pool. |
| Update Domain Among Pools - Not available for Tableau Server. | Moves a domain from its current pool to a different pool. |
| Update Domain Name - Not available for Tableau Server. | Updates an existing domain mapping by renaming the domain. |
| Update Routing Rule - Not available for Tableau Server. | Partially updates an existing Bridge routing rule. |
| Add Collection Permissions | Adds permissions to the specified collection for a user or group. You can specify multiple sets of permissions using one call. |
| Add items to a collection | Adds items to a collection. |
| Batch update collections | Batch updates collections. |
| Create a collection | Creates a new collection. |
| Delete Collection Permission | Removes the specified collection permission for the specified group or user. |
| Delete collections | Deletes collections. |
| Delete collections | Deletes collections. |
| Get details of a collection | Gets the details of a collection. |
| List Collection Permissions | Returns a list of permissions for a specific collection. |
| List collections | Lists collections. |
| List items in a collection | Lists items in a collection. |
| Remove items from a collection | Removes items from a collection. |
| Reorder items in a collection | Reorders items in a collection. |
| Create Connected App | Create a connected app. |
| Create Connected App Secret | Generate a secret for a connected app. |
| Delete Connected App | Permanently remove a connected app. |
| Delete Connected App Secret | Permanently remove a secret associated with a connected app. |
| Delete EAS | Delete a registered external authorization server (EAS). |
| Get Connected App | Query a connected app by its ID. |
| Get Connected App Secret | Query a connected app secret and the token value using the connected app's ID. |
| List All Registered EAS | Get all external authorization servers (EASs) registered to a site. |
| List Connected Apps | Query all connected apps configured on a site. |
| List Registered EAS | Get an external authorization server (EAS) registered to a site. |
| Register EAS | Create a connected app with OAuth 2.0 trust by registering an external authorization server (EAS) to a site. |
| Update Connected App | Update a connected app. |
| Update EAS - Not available for Tableau Server. | Update a connected app with OAuth 2.0 trust. |
| Get batch content usage statistics - Not available for Tableau Server | Gets usage statistics for multiple content items. The batch of can include multiple content types. |
| Get content search results | Searches across all supported content types for objects relevant to the search expression specified in the querystring of the request URI. |
| Get Content Suggestions | Returns a specified number of suggestions for auto-completion of user input as they type. You can specify content types of suggestions and prioritize recently viewed content. |
| Get usage statistics for content item - Not available for Tableau Server | Gets the usage statistics for a Tableau content item, specified by LUID and content type, such as workbook, datasource, or flow. |
| Create custom domain settings - Not available for Tableau Server | Starts the process of custom domain setup for a Tableau site. |
| Delete custom domain settings - Not available for Tableau Server | Deletes the custom domain setup for a Tableau site. |
| Get Custom Domain Name - Not available for Tableau Server | Gets the custom domain for a Tableau site, if one is provisioned. For more information about how, see. |
| Get custom domain settings - Not available for Tableau Server | Gets the custom domain settings for a Tableau site. |
| Update custom domain settings - Not available for Tableau Server | Updates the custom domain setup for a Tableau site. |
| Allow dashboard extension on site - Retired in API 3.21 | Adds a dashboard extension to the safe list of the site you are signed into. |
| Block dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Adds a dashboard extension to the block list of a server. |
| Disallow dashboard extension on site - Retired in API 3.21 | Deletes a specific dashboard extension from the safe list of the site you are signed into. |
| Get allowed dashboard extension on site - Retired in API 3.21 | Gets the details of a specific dashboard extension on the safe list of the site you are signed into. |
| Get blocked dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Gets the details of a specific dashboard extension on the blocked list of a server. |
| List allowed dashboard extensions on site - Retired in API 3.21 | Lists the dashboard extensions on the safe list of the site you are signed into. |
| List blocked dashboard extensions on server - Retired in API 3.21 - Not available for Tableau Cloud | Lists the dashboard extensions on the blocked list of a server. |
| List dashboard extension settings of site - Retired in API 3.21 | Lists the dashboard extension settings of the site you are signed into. |
| List settings for dashboard extensions on server - Retired in API 3.21 - Not available for Tableau Cloud | Lists the dashboard extension settings of a server. |
| Unblock dashboard extension on server - Retired in API 3.21 - Not available for Tableau Cloud | Deletes a specific extension from the block list of a server. |
| Update dashboard extension settings of site - Retired in API 3.21 | Updates the settings for dashboard extensions for the site you are signed into. |
| Update dashboard extensions settings of server - Retired in API 3.21 - Not available for Tableau Cloud | Updates the settings for dashboard extensions of a server. |
| Update settings for allowed dashboard extension on site - Retired in API 3.21 | Updates the settings of a specific dashboard extension in the safe list of the site you are signed into. |
| Add Tags to Data Source | Adds one or more tags to the specified data source. |
| Add Work Copy Elements | Adds field descriptions or table descriptions to a work copy. Returns HTTP 201 when every element is added. The success body omits the elements that succeeded. |
| Create Work Copy | Creates a work copy of a published data source and returns the work copy LUID. Composable data sources and Semantic Data Model (SDM) data sources are not supported. The call is rejected when the caller already has the maximum number of open work copies. |
| Delete Data Source | Deletes the specified data source from a site. When a data source is deleted, its associated data connection is also deleted. Workbooks that use the data source are not deleted, but they will no longer work properly. |
| Delete Tag from Data Source | Deletes a tag from the specified data source. |
| Delete Work Copy Elements | Deletes elements from a work copy. Send elementType and name for each element. Other content is ignored. Returns HTTP 200 when every element is deleted. The success body omits the elements that succeeded. |
| Download Data Source | Downloads a data source in .tdsx format. |
| Download Data Source Encrypted Keychain | Gets an encrypted version of the embedded credentials from the data source. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Download Data Source Revision | Downloads a specific version of a data source prior to the current one in .tdsx format. To down load the current version of a data source use the Download Data Source method. |
| Get Data Source Revisions | Returns a list of revision information (history) for the specified data source. |
| Publish Data Source | Publishes a data source on the specified site, or appends data to an existing data source. |
| Publish Work Copy | Publishes a work copy as a data source. Send the published data source name and an optional description. The response returns the new data source LUID. A blank name is rejected. |
| Query Data Source | Returns information about the specified data source. |
| Query Data Source Connections | Returns a list of data connections for the specified data source. |
| Query Data Sources | Returns a list of published data sources on the specified site, with optional parameters for specifying the paging of large results. To get a list of data sources embedded in a workbook, use the Query Workbook Connections method. |
| Read Data Source Elements | Reads columns, field descriptions, or table descriptions from a published data source. Set elementType to the kind of element, and optionally set name to read one element. |
| Read Work Copy Elements | Reads columns, field descriptions, or table descriptions from a work copy. Set elementType to the kind of element, and optionally set name to read one element. |
| Remove Data Source Revision | Removes a specific version of a data source from the specified site. |
| Update Data in Hyper Connection | Incrementally updates data (insert, update, upsert, replace and delete) in a published data source from a live-to-Hyper connection, where the data source has multiple connections. |
| Update Data in Hyper Data Source | Incrementally updates data (insert, update, upsert, replace and delete) in a published data source from a live-to-Hyper connection, where the data source has a single connection. |
| Update Data Source | Updates the owner, project or certification status of the specified data source. |
| Update Data Source Connection | Updates the server address, port, authentication type, username, or password for the specified data source connection. |
| Update Data Source Connections | Updates the server address, port, authentication type, username, or password for one or more connections in a data source. To update all connections in a given data source with the same connection information, see Update Data Source Connection. |
| Update Data Source Now | Runs an extract refresh on the specified data source. |
| Update Work Copy Elements | Updates columns, field descriptions, or table descriptions on a work copy. Returns HTTP 200 when every element is updated. The success body omits the elements that succeeded. |
| Upload Data Source Encrypted Keychain | Uploads the encrypted version of the embedded credentials. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Create an Extract for a Data Source | Create an extract for a data source in a site. Optionally, encrypt the extract if the site and workbooks using it are configured to allow it. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Create Extracts for Embedded Data Sources in a Workbook | Create extracts for all embedded data sources of a workbook. Optionally, encrypt the extracts if the site and workbook using them are configured to allow it. |
| Decrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Delete Extract from Data Source | Delete the extract from a data source. |
| Delete Extract Refresh Task | Deletes the specified extract refresh task on Tableau Server or Tableau Cloud. |
| Delete Extracts from Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Deletes the extracts from a virtual connection, which changes it from extract to live mode. |
| Delete Extracts of Embedded Data Sources from a Workbook | Delete all extracts of embedded data sources in a workbook. |
| Encrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Get Extract Refresh Task | Returns information about a site's scheduled extract refresh task for a data source, workbook, or virtual connection. |
| List Extract Refresh Tasks in Server Schedule - Not available for Tableau Cloud. | Returns a list of the extract refresh tasks for a specified server schedule on the specified site on Tableau Server. |
| List Extract Refresh Tasks in Site | Returns a list of extract refresh tasks for the site. Tasks include extract refreshes for data sources, workbooks, and virtual connections. |
| Reencrypt Extracts in a Site | Extract encryption at rest is a data security feature that allows you to encrypt .hyper extracts while they are stored on Tableau Server. For more information, see Extract Encryption at Rest. |
| Run Extract Refresh Task | Runs the specified extract refresh task. |
| Update Cloud Extract Refresh Task - Not available for Tableau Server. | Updates an extract refresh task on Tableau Cloud. |
| Add Data Source to Favorites | Adds the specified data source to the user's favorites. |
| Add Flow to Favorites | Adds the specified flow to the user's favorites. |
| Add Metric to Favorites - Retired in API 3.22 | Adds the specified metric to the user's favorites. |
| Add Project to Favorites | Adds the specified project to a user's favorites. |
| Add View to Favorites | Adds the specified view to a user's favorites. |
| Add Workbook to Favorites | Adds the specified workbook to a user's favorites. |
| Delete Data Source from Favorites | Deletes the specified data source from the user's favorites. If the specified data source is not a favorite, the operation has no effect. |
| Delete Flow from Favorites | Deletes the specified flow from the user's favorites. If the specified flow is not a favorite, the operation has no effect. |
| Delete Project from Favorites | Deletes the specified project from the user's favorites. If the specified project is not a favorite, the operation has no effect. |
| Delete View from Favorites | Deletes the specified view from user's favorites. If the specified view is not a favorite, the operation has no effect. |
| Delete Workbook from Favorites | Deletes a workbook from a user's favorites. If the specified workbook is not a favorite of the specified user, this call has no effect. |
| Get Favorites for User | Returns a list of favorite projects, data sources, views, workbooks, and flows for a user. |
| Organize Favorites | Move an item to organize a user's favorites. |
| Add Flow Permissions | Adds permissions to the specified flow for a Tableau Server user or group. You can specify multiple sets of permissions using one call. |
| Add Flow Task to Server Schedule | The Add Flow Task to Schedule method is renamed and retired for Tableau Cloud in API 3.22 (Tableau Cloud March 2024). It will remain available for Tableau Server only. For Tableau Cloud in March 2024, this method will be replaced with Create Cloud Flow Task method. |
| Cancel Flow Run | Cancels a flow run that is in progress. |
| Create Cloud Flow Task - Not available for Tableau Server. Available only with a Data Management license. | Creates a flow task on Tableau Cloud, and set its schedule. |
| Delete Flow | Deletes a flow. When a flow is deleted, its associated connections, the output and input steps, any associated scheduled tasks, and run history are also deleted. |
| Delete Flow Permission | Deletes the specified permission from the specified flow for a group or user. |
| Download Flow | Downloads a flow in .tfl or .tflx format. |
| Download Flow Encrypted Keychain | Gets an encrypted version of the embedded credentials in a flow. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Get Flow Run | Gets a flow run. |
| Get Flow Run Task | Returns information about the specified flow run task. This method shows you information about the scheduled task for the flow. |
| Get Flow Run Tasks | Returns a list of scheduled flow tasks for the site. |
| Get Flow Runs | Get flow runs. |
| Get Linked Task - Available only with a Data Management license. | Returns information about a specific linked task. This method shows you information about the scheduled linked task. |
| Get Linked Tasks - Available only with a Data Management license. | Returns a list of scheduled linked tasks for a site. |
| List Flow Permissions | Returns a list of permissions for the specific flow. |
| Publish Flow | Publishes a flow on the specified site. |
| Query Flow | Returns information about the specified flow, including information about the project, owner, and output steps. |
| Query Flow Connections | Returns a list of data connections for the specific flow. |
| Query Flows for a Site | Returns the flows on a site. If the user is not an administrator, the method returns just the flows that the user has permissions to view. |
| Query Flows for User | Returns the flows that the specified user owns in addition to those that the user has Read (view) permissions for. |
| Run Flow Now - Available only with a Data Management license. | Runs the specified flow. |
| Run Flow Task | Runs the specified flow run task. |
| Run Linked Task Now - Available only with a Data Management license. | Runs the specified linked task. |
| Update Flow | Updates the project and/or owner of the specified flow. |
| Update Flow Connection | Updates the server address, port, username, or password for the specified flow connection. The connection can be an input or an output connection. |
| Update Flow Connections | Updates the server address, port, username, or password for one or more flow connections. The connection can be an input or an output connection. |
| Update Flow Owner | Updates a flow's owner. |
| Upload Flow Encrypted Keychain | Uploads the encrypted version of the embedded credentials of a flow. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Add User to Identity Pool - Not available for Tableau Cloud. | Add a user to a specified identity pool. |
| Configure Identity Store - Not available for Tableau Cloud | Configure a new local identity store to provision users. |
| Create Authentication Configuration - Not available for Tableau Cloud | Create an instance of OpenID Connect (OIDC) authentication. |
| Create Identity Pool - Not available for Tableau Cloud | Create an identity pool. |
| Delete Authentication Configuration - Not available for Tableau Cloud | Delete an authentication instance. |
| Delete Identity Pool - Not available for Tableau Cloud | Delete an identity pool. |
| Delete Identity Store - Not available for Tableau Cloud | Delete an identity store. |
| Get Identity Pool - Not available for Tableau Cloud | Get information about an identity pool. |
| List Authentication Configurations on Server - Not available for Tableau Cloud | List information about all authentication instances associated with identity pools. |
| List Identity Pools - Not available for Tableau Cloud | List all identity pools. |
| List Identity Stores - Not available for Tableau Cloud | List information about all identity store instances used to provision users. |
| Remove User from Identity Pool - Not available for Tableau Cloud. | Remove a user from a specified identity pool. |
| Update Authentication Configuration - Not available for Tableau Cloud | Update an authentication instance. |
| Update Identity Pool - Not available for Tableau Cloud | Update information about an identity pool. |
| Add Data Source to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a data source to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Add Virtual Connection to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a virtual connection to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Add Workbook to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh or accelerate a workbook to an existing schedule on Tableau Server. |
| Batch Update Schedule State - Not available for Tableau Cloud | Updates the state of one or more schedules. |
| Cancel Job | Cancels a job specified by job ID. To get a list of job IDs for jobs that are currently queued or in-progress, use the Query Jobs method. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Create Server Schedule - Not available for Tableau Cloud. | Creates a new server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task and Create subscription. |
| Delete Data Acceleration Task | Deletes a data acceleration task. |
| Delete Server Schedule - Not available for Tableau Cloud. | Deletes the specified schedule on Tableau Server. For Tableau Cloud, see Delete Extract Refresh Task and Delete Subscription. |
| Get Data Acceleration Tasks in a Site | Returns a list of data acceleration tasks for the site. |
| Get Extract Refresh Task | Returns information about a site's scheduled extract refresh task for a data source, workbook, or virtual connection. |
| Get Server Schedule - Not available for Tableau Cloud. | Returns detailed information about the specified server schedule on Tableau Server. |
| List Extract Refresh Tasks in Server Schedule - Not available for Tableau Cloud. | Returns a list of the extract refresh tasks for a specified server schedule on the specified site on Tableau Server. |
| List Extract Refresh Tasks in Site | Returns a list of extract refresh tasks for the site. Tasks include extract refreshes for data sources, workbooks, and virtual connections. |
| List Server Schedules - Not available for Tableau Cloud. | Returns a list of flows, extract and subscription server schedules on Tableau Server. For each schedule, the API returns the name, frequency, priority, and other information. |
| Query Job | Returns status information about an asynchronous process that is tracked using a job. This method can be used to query jobs that are used to do the following:. |
| Query Jobs | Returns a list of active jobs on the specified site. To get details on a specific job, pass a job ID returned by this method to the Query Job method. To cancel an active job, pass a job ID returned by this method to the Cancel Job method. |
| Run Extract Refresh Task | Runs the specified extract refresh task. |
| Update Server Schedule - Not available for Tableau Cloud. | Modifies settings for the specified server schedule, including the name, priority, and frequency details on Tableau Server. For Tableau Cloud, see Update cloud extract refresh task and Update subscription . |
| Update Virtual Connection Now - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Runs an extract refresh on the specified virtual connection. |
| Add Data Quality Warning - Available only with a Data Management license. | Add a data quality warning to a database, table, column, published data source, flow, virtual connection, or virtual connection table. |
| Add Database Permissions - Available only with a Data Management license. | Add permissions to a database asset. |
| Add Default Database Permissions - Available only with a Data Management license. | Adds default permission capabilities to a user or group for table resources in that database. |
| Add or Update Monitoring Quality Warning on Content - Available only with a Data Management license. | Create or update one or more monitoring quality warnings. |
| Add Table Permissions - Available only with a Data Management license. | Add permissions to a table asset. |
| Add Tags to Column | Add one or more tags to a column. |
| Add Tags to Database | Add one or more tags to a database. |
| Add Tags to Table | Add one or more tags to a table. |
| Add Tags to Virtual Connection - Available only with a Data Management license. | Adds tags to a virtual connection. |
| Batch Add or Update Data Quality Certifications - Available only with a Data Management license. | Create or update one or more data quality certifications for different content and asset items. |
| Batch Add or Update Data Quality Warnings - Available only with a Data Management license. | Add or update multiple data quality warnings on assets. |
| Batch Add Tags - Available only with a Data Management license. | Add multiple tags to items that are different content and asset types. |
| Batch Delete Data Quality Warnings - Available only with a Data Management license. | Delete multiple data quality warnings from assets. |
| Batch Delete Tags - Available only with a Data Management license. | Delete multiple tags from items that are different content and asset types. |
| Create Label Category - Available only with a Data Management license. | Creates a data label category. |
| Create or Update labelValue - Available only with a Data Management license. | Creates a label value with the specified name if it doesn't exist, or updates the existing label value if the label value name already exists. |
| Delete Data Quality Certification by ID - Available only with a Data Management license. | Delete a data quality certification from an asset using the data quality certification ID. |
| Delete Data Quality Certifications by Content - Available only with a Data Management license. | Delete multiple data quality certifications from assets. |
| Delete Data Quality Warning by Content - Available only with a Data Management license. | Delete the data quality warnings from an asset. |
| Delete Data Quality Warning by ID - Available only with a Data Management license. | Delete a data quality warning from an asset using the data quality warning ID. |
| Delete Database Permissions - Available only with a Data Management license. | Permanently remove the permissions applied to a database asset. |
| Delete Default Database Permissions - Available only with a Data Management license. | Permanently remove the default permissions on a database asset. |
| Delete Label - Available only with a Data Management license. | Deletes a data label by its LUID. |
| Delete Label Category - Available only with a Data Management license. | Deletes a label category. |
| Delete Labels - Available only with a Data Management license. | Deletes the data labels on one or more assets. |
| Delete labelValue - Available only with a Data Management license. | Deletes a label value. |
| Delete Quality Warning Trigger by ID - Available only with a Data Management license. | Permanently remove a quality warning trigger using the quality warning trigger ID. |
| Delete Quality Warning Triggers by Content - Available only with a Data Management license. | Permanently remove all quality warning triggers for one or more data sources or flows, or both. |
| Delete Table Permissions - Available only with a Data Management license. | Permanently remove the permissions applied to a table asset. |
| Delete Tag from Column | Delete a tag from a column. |
| Delete Tag from Database | Delete a tag from a database. |
| Delete Tag from Table | Delete a tag from a table. |
| Delete Tag from Virtual Connection - Available only with a Data Management license. | Deletes a tag from a virtual connection. |
| Get Databases and Tables from Connection | Query databases and tables from the connection information in the data source (.tds or .tdsx) or workbook (.tws or .twbx) file's XML. |
| Get Label - Available only with a Data Management license. | Gets a data label by its LUID. |
| Get Labels - Available only with a Data Management license. | Displays information about the data labels on one or more assets. |
| Get labelValue - Available only with a Data Management license. | Displays label value properties for a single label value. |
| Get Metadata Suggestion - Available only with Tableau+ | Gets a suggestion from generative AI about asset metadata. |
| List Database Permissions | Get information about the permissions on a database asset. |
| List Default Database Permissions | Get the default permissions applied to the database asset and its children tables. |
| List Label Categories on Site - Available only with a Data Management license. | Lists all data label categories on the site. |
| List labelValues on Site - Available only with a Data Management license. | Lists all label values on the site. |
| List Table Permissions | Get information about the permissions on a table asset. |
| Move Database - Available only with a Data Management license. | Move one or more databases to a project. |
| Move Table - Available only with a Data Management license. | Moves one or more tables to a project. |
| Query All Quality Warning Triggers by Content | Get information about all quality warning triggers for a content item. |
| Query Column in a Table | Get information about a column in a table asset. |
| Query Columns in a Table | Get information about the columns in a table asset. |
| Query Data Quality Certification by ID | Get information about a data quality certification. |
| Query Data Quality Certifications by Content | Get all data quality certifications for content or asset items. |
| Query Data Quality Warning by Content - Available only with a Data Management license. | Get information about the data quality warning for the database, table, column, published data source, flow, virtual connection, or virtual connection table. |
| Query Data Quality Warning by ID | Get information about a specific data quality warning. |
| Query Database | Get information about a database asset. |
| Query Databases | Get information about all database assets for a site. |
| Query Quality Warning Trigger | Get information about a quality warning trigger. |
| Query Table | Get information about a table asset. |
| Query Tables | Get information about all table assets for a site. |
| Remove Column - Available only with a Data Management license. | Permanently remove the column from a table asset. |
| Remove Database - Available only with a Data Management license. | Permanently remove the database asset. |
| Remove Table - Available only with a Data Management license. | Permanently remove the table asset. |
| Update Column - Available only with a Data Management license. | Update the description of the column. |
| Update Data Quality Warning - Available only with a Data Management license. | Update the warning type, status, and message of a data quality warning. |
| Update Database - Available only with a Data Management license. | Update the database description, certify a database, set database permissions, or assign a Tableau Cloud or Server user as the database contact. |
| Update Label - Available only with a Data Management license. | Updates a label by its LUID. |
| Update Label Category - Available only with a Data Management license. | Updates a data label category. |
| Update Labels - Available only with a Data Management license. | Creates or updates labels on one or more assets. |
| Update labelValue - Available only with a Data Management license. | Updates a label value. |
| Update Monitoring Quality Warning - Available only with a Data Management license. | Update a monitoring quality warning. |
| Update Table - Available only with a Data Management license. | Update the table description, certify a table, or a assign a user contact to the table asset. |
| Delete Metric - Retired in API 3.22 | Deletes a specified metric from a site. |
| Get Metric - Retired in API 3.22 | Returns the details of the specified metric. |
| Get Metric Data - Retired in API 3.22 | Returns the data for the specified metric as comma separated (CSV) format. The maximum number of rows returned is 10,000. |
| List Metrics for Site - Retired in API 3.22 | Returns the metrics configured for a site. |
| Update Metric - Retired in API 3.22 | Updates the owner, project, suspended status, or name of the specified metric. |
| Get Mobile Security Settings for Server | Gets the mobile security settings for the server. |
| Get Mobile Security Settings for Site | Gets the mobile security settings for the specified site. |
| Update Mobile Security Settings for Site | Updates the mobile security sections for a specified site. |
| Add User to Data-Driven Alert | Adds a specified user to the recipients list for a data-driven alert. |
| Create a Webhook | Creates a new webhook for a site. |
| Create Data Driven Alert - Not available for Tableau Server. | Create a data driven alert (DDA) for a view with a single data axis. |
| Delete a Webhook | Deletes the specified webhook. |
| Delete Data-Driven Alert | Deletes the specified data-driven alert from the specified site. |
| Delete User from Data-Driven Alert | Removes a specified user from the recipients list for a data-driven alert. |
| Get a Webhook | Returns information about the specified webhook. |
| Get Data-Driven Alert | Returns details on a specified data-driven alert, including the recipients of the alert. |
| Get User Notification Preferences | Returns the notification preferences for the specified site. You can filter by channel and notification type. For more information about notifications, see Manage Your Account Settings. |
| List Data-Driven Alerts on Site | Returns a list of data-driven alerts in use on the specified site. |
| List Webhooks | Returns a list of all the webhooks on the specified site. |
| Test a Webhook | Tests the specified webhook. Sends an empty payload to the configured destination URL of the webhook and returns the response from the server. This is useful for testing, to ensure that things are being sent from Tableau and received back as expected. |
| Update a Webhook | Modify the properties of an existing webhook. |
| Update Data-Driven Alert | Update one or more settings for the specified data-driven alert; including the alert subject, frequency, and owner. |
| Update User Notification Preferences | Updates user notifications preferences to enabled or disabled on the specified site. For more information about notifications, see Manage Your Account Settings. |
| Create OpenID Connect Configuration - Not available for Tableau Server. | Create the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Get OpenID Connect Configuration - Not available for Tableau Server. | Get details about the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Remove OpenID Connect Configuration - Not available for Tableau Server. | Disable and clear the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Update OpenID Connect Configuration - Not available for Tableau Server. | Update the Tableau Cloud site's OpenID Connect (OIDC) configuration. |
| Add Ask Data Lens Permissions - Retired in API 3.22 | Adds permissions to the specified ask data lens for a user or group. You can specify multiple sets of permissions using one request. |
| Add Collection Permissions | Adds permissions to the specified collection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Data Source Permissions | Adds permissions to the specified data source for a user or group. You can specify multiple sets of permissions using one call. |
| Add Default Permissions | Adds default permission rules for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, also adds default permission rules for database or table resources in a project for a user or group. After adding default permission rules, new resources of the type you specify that are added to the project will have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. For more information, see Permissions. |
| Add Project Permissions | Adds permissions to the specified project for a user or group. You can specify multiple sets of permissions using one call. |
| Add View Permissions | Adds permissions to the specified view (also known as a sheet) for a user or group. You can specify multiple sets of permissions using one call. |
| Add Virtual Connection Permissions - Available only with a Data Management license. | Adds permissions to the specified virtual connection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Workbook Permissions | Adds permissions to the specified workbook for a user or group. You can specify multiple sets of permissions using one call. |
| Add Workbook to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh or accelerate a workbook to an existing schedule on Tableau Server. |
| Delete Ask Data Lens Permission - Retired in API 3.22 | Deletes the specified permissions to the specified ask data lens for a user or group. |
| Delete Collection Permission | Removes the specified collection permission for the specified group or user. |
| Delete Data Source Permission | Removes the specified data source permission for the specified group or user. |
| Delete Default Permission | Removes default permission rules for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, also removes default permission rules for database or table resources in a project for a user or group. After removing default permission rules, new resources of the type you specify that are added to the project will no longer have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. |
| Delete Project Permission | Removes the specified project permission for the specified group or user. |
| Delete View Permission | Deletes permission to the specified view (also known as a sheet) for a Tableau Server user or group. |
| Delete Virtual Connection Permission - Available only with a Data Management license. | Removes the specified virtual connection permission for the specified group or user. |
| Delete Workbook Permission | Deletes the specified permission from the specified workbook for a group or user. |
| List Ask Data Lens Permissions | List all permissions configured for the specified ask data lens that the user has read capability for. |
| List Collection Permissions | Returns a list of permissions for a specific collection. |
| List Data Source Permissions | Returns a list of permissions for a specific data source. |
| List Default Permissions | Returns details of default permission rules granted to users and groups for workbook, data source, data role, lens, flow, metric, or virtual connection resources in a project for a user or group. If Tableau Catalog is enabled, this method can also return details of default permission rules granted to users and groups for database or table resources in a project. |
| List Project Permissions | Returns information about the set of permissions allowed or denied for groups and users in a project. |
| List View Permissions | Returns a list of permissions for the specific view. |
| List Virtual Connection Permissions - Available only with a Data Management license. | Returns a list of permissions for a specific virtual connection. |
| List Workbook Permissions | Returns a list of permissions for the specific workbook. |
| Replace Content Permissions | Replaces existing permissions in the specified content. You can specify multiple sets of permissions using one call. |
| Replace Project's Default Permissions | Replaces default permissions in the specified content. If Tableau Catalog is enabled, it also adds default permission rules for database or table resources in a project. After adding default permission rules, new resources of the type you specify that are added to the project will have those permission rules. If permissions are locked to the project, then the same is true for all existing child content of the project. For more information, see Permissions. |
| Create Project | Creates a project on the specified site. You can also create project hierarchies by creating a project under the specified parent project on the site. To make changes to an existing project, call Update Project. |
| Delete Project | Deletes the specified project on a specific site. When a project is deleted, all Tableau assets inside of it are also deleted, including assets like associated workbooks, data sources, project view options, and rights. |
| Query Projects | Returns a list of projects on the specified site, with optional parameters for specifying the paging of large results. |
| Update Project | Updates the name, description, or project hierarchy of the specified project. You can create or update project hierarchies by specifying a parent project for the project that you are updating using this method. |
| Append to File Upload | Uploads a block of data and appends it to the data that is already uploaded. |
| Initiate File Upload | Initiates the upload process for a file. After the upload has been initiated, you call Append to File Upload to send individual blocks of the file to the server. When the complete file has been sent to the server, you call Publish Data Source, Publish Flow, or Publish Workbook to commit the upload. |
| Publish Data Source | Publishes a data source on the specified site, or appends data to an existing data source. |
| Publish Flow | Publishes a flow on the specified site. |
| Publish Virtual Connection - Available only with a Data Management license. | Publishes a virtual connection on the specified site, either from a packaged virtual connection file (.tvcx) or from a downloaded JSON representation. |
| Publish Workbook | Publishes a workbook on the specified site. |
| Batch create Pulse subscriptions - Not available for Tableau Server | Creates multiple subscriptions to a metric for specified users and/or groups. |
| Batch get Pulse subscriber counts - Not available for Tableau Server | Gets the number of unique users subscribed to a set of metrics specified in a comma separated list of metric LUIDs. |
| Batch get Pulse subscriptions - Not available for Tableau Server | Gets a batch of subscriptions, specified in a comma delimited list of subscriptions LUIDs. |
| Batch list metric definitions (few) - Not available for Tableau Server | Gets the details of a batch of metric definitions and metrics on a site, specified in a brief comma delimited list of LUIDs. |
| Batch list metric definitions (many) - Not available for Tableau Server | Gets the details of a batch of definitions specified in a comma delimited list of LUIDs. This method is optimized for batches with large numbers of definitions. |
| Batch list metrics (few) - Not available for Tableau Server | Gets a batch of metrics from a definition, specified in a comma delimited list. |
| Batch list metrics (many) - Not available for Tableau Server | Gets batches of metrics available on a server. Only metrics a user has privileges to view will be visible. This endpoint uses POST as an alternative to GET, where long lists of URL parameters could be problematic. |
| Create metric - Not available for Tableau Server | Creates a metric. |
| Create metric definition - Not available for Tableau Server | Creates a metric definition. |
| Create metric tag for user - Not available for Tableau Server | Creates a tag for the specified metric, for the signed in user. |
| Create subscription - Not available for Tableau Server | Creates a subscription to a specified metric for a specified user or group. |
| Delete metric - Not available for Tableau Server | Deletes a metric. |
| Delete metric definition - Not available for Tableau Server | Deletes a metric definition. |
| Delete metric tag - Not available for Tableau Server | Deletes the specified metric tag. |
| Delete Pulse subscription - Not available for Tableau Server | Deletes a specified subscription to a metric. |
| Generate basic insight bundle - Not available for Tableau Server | Generates a basic insight bundle. |
| Generate breakdown insight bundle - Not available for Tableau Server | Generates a breakdown insight bundle. This provides the BAN and breakdown groups of insights. |
| Generate current metric value insight bundle - Not available for Tableau Server | Generates a bundle the current aggregated value for each metric. |
| Generate detail insight bundle - Not available for Tableau Server | Generates a detail insight bundle. |
| Generate exploration insight bundle - Not available for Tableau Server | Generates an exploration insight bundle. This provides the BAN, anchor, and followup groups of insights. |
| Generate insight brief - Not available for Tableau Server | Generates an insight brief based on a user utterance by gathering insights for the specified metrics. For supplemental information, see. |
| Generate metric card image - Not available for Tableau Server | Generates a PNG image of a Pulse metric card with full visual parity to the web UI homepage. |
| Generate springboard insight bundle - Not available for Tableau Server | Generates a springboard insight bundle. |
| Get metric - Not available for Tableau Server | Gets the details of the specified metric. |
| Get metric definition - Not available for Tableau Server | Gets a metric definition and optionally metrics it contains. |
| Get or create metric - Not available for Tableau Server | Returns the details of a metric in a definition if it exists, or creates a new metric if it does not. Also returns 'true' if a new metric was created, or 'false' if it already existed. |
| Get Pulse subscription - Not available for Tableau Server | Gets a specified subscription to a metric. |
| Get site entitlements - Not available for Tableau Server | Returns entitlements available for a site. If entitlements are True, then Pulse premium features are enabled for the site. |
| Gets recommended metrics - Not available for Tableau Server | Gets personalized groups of metrics to recommend to a user. Only metric that the user has privileges to view will be returned. |
| List followed metrics groups - Not available for Tableau Server | Gets the user's followed metrics. Optionally metrics can be grouped by characteristics like datasource, and sorted. |
| List metric definition measurement periods - Not available for Tableau Server | Gets the measurement periods for the specified metric definition. |
| List metric definitions - Not available for Tableau Server | Lists the metric definitions configured for a site or, optionally, the details and definition for a specific metric. |
| List metrics in definition - Not available for Tableau Server | Lists the metrics contained in a metric definition. |
| List Pulse user preferences - Not available for Tableau Server | Gets the signed in user's preferences for notifications channels and cadence, and for grouping and sorting followed metrics in REST responses and UI. |
| List site alerts - Not available for Tableau Server | List the alerts for the authorized user user on a specified site. |
| List subscriptions - Not available for Tableau Server | Lists the subscriptions to a specified metric and/or for a specified user. |
| Lists all definition tags for the site. - Not available for Tableau Server | Lists all definition tags for the site. Results can be filtered by tag value, definition name, or datasource ID. Each result includes the tag value and a count of how many definitions use it. |
| Update metric - Not available for Tableau Server | Updates the specification of a metric. |
| Update metric definition - Not available for Tableau Server | Updates a metric definition. |
| Update Pulse user preferences - Not available for Tableau Server | Updates the signed in user's preferences for notifications channels and cadence, and for grouping and sorting followed metrics in REST responses and UI. |
| Delete All Recycle Bin Contents | Permanently deletes all content in a site's Recycle Bin. |
| Delete Recycle Bin Content Item | Permanently deletes the specified Recycle Bin content item. |
| Get Recycle Bin Content Item | Returns information about the specified Recycle Bin content item. |
| List Recycle Bin Content by Type | Gets a list of Recycle Bin content of the specified type. |
| Restore Recycle Bin Content Item | Restores the specified content item from the Recycle Bin to a project. |
| Download Data Source Revision | Downloads a specific version of a data source prior to the current one in .tdsx format. To down load the current version of a data source use the Download Data Source method. |
| Download Workbook Revision - Available only if version history is enabled for the specified site. | Downloads a specific version of a workbook in .twb or .twbx format. |
| Get Data Source Revisions | Returns a list of revision information (history) for the specified data source. |
| Get Workbook Revisions | Returns a list of revision information (history) for the specified workbook. |
| Remove Data Source Revision | Removes a specific version of a data source from the specified site. |
| Remove Workbook Revision | Removes a specific version of a workbook from the specified site. |
| Delete Server Session | Deletes a specified session. This method is not available for Tableau Cloud and is typically used in programmatic management of the life cycles of embedded Tableau sessions. |
| Get Current Server Session | Returns details of the current session of Tableau Server. |
| List Server Active Directory Domains - Not available for Tableau Cloud. | Returns the details of the Active Directory domains that are in use on the server, including their full domain names, nicknames and IDs. If the server is configured to use local authentication, the command returns only the domain name local. |
| Server Info | Returns the version of Tableau Server and the supported version of the REST API. |
| Update Server Active Directory Domain - Not available for Tableau Cloud. | Changes the nickname or full domain name of an Active Directory domain on the server. This method is not available on Tableau Cloud. |
| Create Site - Not available for Tableau Cloud. | Creates a site on Tableau Server. To make changes to an existing site, call Update Site. This method isn’t available for Tableau Cloud. |
| Delete Site - Not available for Tableau Cloud. | Deletes the specified site. |
| Get Data Acceleration Report for a Site | Returns a report about data acceleration for the site. It lets you compare page load times for before and after data acceleration is enabled. |
| Get Embedding Settings for a Site | Returns the current embedding settings for a specific site. |
| Get Recently Viewed for Site | Gets the details of the views and workbooks on a site that have been most recently created, updated, or accessed by the signed in user. The 24 most recently viewed items are returned, though it may take some minutes after being viewed for an item to appear in the results. |
| Get User Personal Space | Gets the details of the Personal Space for the currently authenticated user. |
| List Authentication Configurations for Site - Not available for Tableau Server. | List all authentications configurations on the site. |
| Query Site | Returns information about the specified site, with the option to return information about the storage space and user count for the site. |
| Query Sites - Not available for Tableau Cloud. | Returns a list of the sites on the server that the caller of this method has access to. This method is not available for Tableau Cloud. |
| Query Views for Site | Returns all the views for the specified site, optionally including usage statistics. |
| Update Embedding Settings for Site | Updates the embedding settings for a site. Embedding settings can be used to restrict embedding Tableau views to only certain domains. |
| Update Site - Not available for Tableau Cloud. | Modifies settings for the specified site, including the content URL, administration mode, user quota, state (active or suspended), storage quota, whether flows are enabled, whether subscriptions are enabled, and whether revisions are enabled. |
| Create Subscription | Creates a new subscription to a view or workbook for a specific user on Tableau Server and Tableau Cloud. When a user is subscribed to the content, Tableau sends the content to the user in email on the schedule that you define. |
| Delete Subscription | Deletes the specified subscription on Tableau Server or Tableau Cloud. |
| Get Subscription | Returns information about the specified subscription. |
| List Subscriptions | Returns a list of all the subscriptions on the specified site. |
| Update Subscription | Modifies an existing subscription on Tableau Server. You can change the subject, server schedule, and suspension state for the subscription. |
| List Tableau extensions server settings - Not available for Tableau Cloud. | Lists the settings for extensions of a server. |
| List Tableau extensions site settings | Lists the settings for extensions of a site. |
| Update Tableau extensions server settings - Not available for Tableau Cloud. | Updates the settings for extensions of a server. |
| Update Tableau extensions site settings | Updates the settings for extensions of a site. |
| Create a semantic context - Not available for Tableau Server | Create a semantic context node carrying one or more statements. |
| Delete a semantic context - Not available for Tableau Server | Delete a semantic context created and managed in Tableau Knowledge, along with its statements. |
| Get a node by ID - Not available for Tableau Server | Get a single node by its ID, including its semantic statements and directly connected nodes. |
| Get graph-health suggestions - Not available for Tableau Server | Get a report on the health of the graph, including a score and suggested improvements. |
| Get the downstream impact of a node - Not available for Tableau Server | Get the assets that depend on a node, to see the impact if it changes. |
| Get the lineage of a node - Not available for Tableau Server | Get the lineage neighborhood of a node. |
| List edges around a node - Not available for Tableau Server | List the edges connected to a node. |
| List knowledge graphs - Not available for Tableau Server | List the knowledge graphs on the caller's Tableau site, each with its ID, name, description, status, and. |
| List knowledge sources - Not available for Tableau Server | List the data sources and workbooks connected to the graph. |
| Search graph nodes - Not available for Tableau Server | Search graph nodes using natural-language semantic search. |
| Search semantic contexts - Not available for Tableau Server | Search semantic contexts across the graph. |
| Search semantic contexts attached to a node - Not available for Tableau Server | Search the semantic contexts attached to a specific node. |
| Update a semantic context - Not available for Tableau Server | Partially update a semantic context. |
| Create Tableau MCP Settings for Site | Replaces the current list of Tableau MCP settings for a given site. |
| Get Tableau MCP Settings for Site | Gets the list of Tableau MCP settings for a specified site. |
| Update Tableau MCP Settings for Site | Updates the current list of Tableau MCP settings for a specified site. |
| Add Group to Group Set | Adds group to a group set. |
| Add User to Group | Adds a user to the specified group. |
| Add User to Site | Adds a user to Tableau Server or Tableau and assigns the user to the specified site. |
| Create Group | Creates a group on a Tableau Cloud site or Tableau Server. |
| Create Group Set | Creates a group set with a specified name. |
| Create SCIM Configuration - Not available for Tableau Server. | Creates the System for Cross-domain Identity Management Configuration (SCIM) configuration on the Tableau Cloud site. |
| Create SCIM Token | Generates the System for Cross-domain Identity Management (SCIM) token and secret. |
| Delete Group | Deletes the group on a specific site. Deleting a group does not delete the users in group, but users are no longer members of the group. Any permissions that were previously assigned to the group no longer apply. |
| Delete Group Set | Deletes the group set on a specific site. Deleting a group set doesn’t delete the users in the group set, but users are no longer members of the group set. Any permissions that were previously assigned to the group set no longer apply. |
| Delete SCIM Configuration - Not available for Tableau Server. | Permanently removes the System for Cross-domain Identity Management (SCIM) configuration from the Tableau Cloud site. |
| Delete SCIM Token - Not available for Tableau Server. | Permanently removes the System for Cross-domain Identity Management (SCIM) token. |
| Delete Users from Site with CSV | Creates a job to remove a list of users, specified in a .csv file, from a site. |
| Download User Credentials | Gets credentials for a user who is being migrated to another Tableau Cloud or Tableau Server site. |
| Get Group Set | Returns information about the specified group set including ID, name, and member groups. |
| Get Groups for a User | Gets a list of groups of which the specified user is a member. |
| Get SCIM Configuration - Not available for Tableau Server. | Gets the System for Cross-domain Identity Management (SCIM) configuration on the Tableau Cloud site. |
| Get Users in Group | Gets a list of users in the specified group. |
| Get Users on Site | Returns the users associated with the specified site. |
| Import Users to Site from CSV | Creates a job to import the users listed in a specified .csv file to a site, and assign their roles and authorization settings. |
| List Group Sets | Lists all group sets matching optional filter and ordered by optional sort expression. |
| List SCIM Configurations - Not available for Tableau Server. | Returns the System for Cross-domain Identity Management Configuration (SCIM) configurations on the Tableau Cloud site. |
| Query Groups | Returns a list of groups on the specified site, with optional parameters for specifying the paging of large results. |
| Query User On Site | Returns information about the specified user. |
| Remove Group from Group Set | Removes a group from the specified group set. |
| Remove User from Group | Removes a user from the specified group. |
| Remove User from Site | Removes a user from the specified site. The user will be deleted if they do not own any other assets other than subscriptions. If a user still owns content (assets) on Tableau Server, the user cannot be deleted unless the ownership is reassigned first. |
| Update Group | Updates a group on a Tableau Cloud site or Tableau Server. |
| Update Group Set | Updates a group set name on a Tableau Server or Tableau Cloud site. |
| Update SCIM Configuration - Not available for Tableau Server. | Updates the System for Cross-domain Identity Management (SCIM) configuration on the Tableau Cloud site. |
| Update User | Modifies information about the specified user. |
| Upload User Credentials | Uploads user credentials to a site on a destination Tableau Cloud or Tableau Server. |
| Add Tags to Virtual Connection - Available only with a Data Management license. | Adds tags to a virtual connection. |
| Add Virtual Connection Permissions - Available only with a Data Management license. | Adds permissions to the specified virtual connection for a user or group. You can specify multiple sets of permissions using one call. |
| Add Virtual Connection to Server Schedule - Not available for Tableau Cloud. | Adds a task to refresh a virtual connection to an existing server schedule on Tableau Server. For Tableau Cloud, see Create Cloud Extract Refresh Task. |
| Create Cloud Extract Refresh Task - Not available for Tableau Server. | Creates a custom schedule for an extract refresh on Tableau Cloud. The target of the schedule can be a data source, a workbook, or a virtual connection. For Tableau Server, see Add data source to server schedule, Add workbook to server schedule, and Add virtual connection to server schedule. |
| Delete Extracts from Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Deletes the extracts from a virtual connection, which changes it from extract to live mode. |
| Delete Tag from Virtual Connection - Available only with a Data Management license. | Deletes a tag from a virtual connection. |
| Delete Virtual Connection - Available only with a Data Management license. | Deletes a virtual connection. |
| Delete Virtual Connection Permission - Available only with a Data Management license. | Removes the specified virtual connection permission for the specified group or user. |
| Download Virtual Connection - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Downloads a virtual connection in .tvcx format.To download a JSON representation of a virtual connection instead, see Download Virtual Connection as JSON. |
| Download Virtual Connection as JSON - Available only with a Data Management license. | Downloads a JSON-representation of a virtual connection. To download a virtual connection as a .tvcx file, see Download Virtual Connection. |
| Download Virtual Connection Revision as JSON - Available only with a Data Management license. | Downloads a JSON-representation of an earlier revision of a virtual connection. |
| List Virtual Connection Database Connections - Available only with a Data Management license. | Returns information about database connections in the specified virtual connection. |
| List Virtual Connection Permissions - Available only with a Data Management license. | Returns a list of permissions for a specific virtual connection. |
| List Virtual Connection Revisions - Available only with a Data Management license. | Lists revisions for a virtual connection. |
| List Virtual Connections - Available only with a Data Management license. | Returns a list of available virtual connection names and IDs. |
| Publish Virtual Connection - Available only with a Data Management license. | Publishes a virtual connection on the specified site, either from a packaged virtual connection file (.tvcx) or from a downloaded JSON representation. |
| Update Virtual Connection - Available only with a Data Management license. | Updates a virtual connection's name, owner, project, or certification status. |
| Update Virtual Connection Database Connections - Available only with a Data Management license. | Updates the server address, port, username, or password for the specified database connection in a virtual connection. |
| Update Virtual Connection Now - Available with a Data Management, Enterprise, Server+, Cloud+, or Tableau+ Bundle license. | Runs an extract refresh on the specified virtual connection. |
| Add Tags to View | Adds one or more tags to the specified view. |
| Add Tags to Workbook | Adds one or more tags to the specified workbook. |
| Delete Custom View | Deletes the specified custom view. |
| Delete Tag from View | Deletes a tag from the specified view. |
| Delete Tag from Workbook | Deletes a tag from the specified workbook. |
| Delete View | Deletes a view from a workbook. |
| Delete Workbook | Deletes a workbook. When a workbook is deleted, all of its assets are also deleted, including associated views, data connections, and so on. |
| Download View Crosstab Excel | Downloads an Excel (.xlsx) file containing crosstab data from a view that the user has permission to access in a workbook. If a crosstab is exported from a dashboard, data from only the first view in the dashboard will appear in the .xlsx file. Downloads of data from story dashboards are not supported at this time. |
| Download Workbook | Downloads a workbook in .twb or .twbx format. |
| Download Workbook Encrypted Keychain | Gets an encrypted version of the embedded credentials from the workbook. These credentials can only be migrated to the linked destination Tableau Cloud or Tableau Server. |
| Download Workbook PDF | Downloads a .pdf containing images of the sheets that the user has permission to view in a workbook. |
| Download Workbook PowerPoint | Downloads a PowerPoint (.pptx) file containing slides with images of the sheets that the user has permission to view in a workbook. Download Images/PDF permissions must be enabled for the workbook (true by default). If Show sheets in tabs is not selected for the workbook, only the default tab will appear in the .pptx file. |
| Download Workbook Revision - Available only if version history is enabled for the specified site. | Downloads a specific version of a workbook in .twb or .twbx format. |
| Get Custom View | Gets the details of a specified custom view. |
| Get Custom View Data | Returns a specified custom view rendered as data in comma separated value (CSV) format. |
| Get Custom View Image | Downloads an image file of the specified custom view. |
| Get Custom View PDF | Returns a specified custom view rendered as a .pdf file. |
| Get Recommendations for Views - Deprecated in API 3.19 | Gets a list of views that are recommended for a user. |
| Get View | Gets the details of a specific view. |
| Get View by Path | Gets the details of all views in a site with a specified name. |
| Get Workbook | Returns information about the specified workbook, including information about views and tags. |
| Get Workbook Downgrade Info | Returns a list of the features that would be impacted, and the severity of the impact, when a workbook is exported as a downgraded version (for instance, exporting a v2019.3 workbook to a v10.5 version). |
| Get Workbook Revisions | Returns a list of revision information (history) for the specified workbook. |
| Hide a Recommendation for a View - Deprecated in API 3.19 | Hides a view from being recommended by the server by adding it to a list of views that are dismissed for a user. |
| List Custom Views | Gets a list of custom views on a site. The list includes details of each custom view. |
| List Users with Custom View as Default | Gets the list of users whose default view is the specified custom view. |
| Publish Workbook | Publishes a workbook on the specified site. |
| Query View Data | Returns a specified view rendered as data in comma separated value (CSV) format. |
| Query View Image | Downloads an image file of the specified view. |
| Query View PDF | Returns a specified view rendered as a .pdf file. |
| Query View Preview Image | Returns the thumbnail image for the specified view. |
| Query Views for Site | Returns all the views for the specified site, optionally including usage statistics. |
| Query Views for Workbook | Returns all the views for the specified workbook, optionally including usage statistics. |
| Query Workbook Connections | Returns a list of data connections for the specific workbook. |
| Query Workbook Preview Image | Returns the thumbnail image as a PNG file for the specified workbook. Usually the image that is returned is for the first sheet in the workbook. |
| Query Workbooks for Site | Returns the workbooks on a site. |
| Query Workbooks for User | Returns the workbooks that the specified user owns in addition to those that the user has Read (view) permissions for. |
| Set Custom View as Default for Users | Sets the specified custom for as the default view for up to 100 specified users. Success or failure for each user is reported in the response body. |
| Unhide a Recommendation for a View - Deprecated in API 3.19 | Unhides a view from being recommended by the server by removing it from the list of views that are dimissed for a user. |
| Update Custom View | Changes the owner or name of an existing custom view. |
| Update Workbook | Modifies an existing workbook, allowing you to change the owner or project that the workbook belongs to and whether the workbook shows views in tabs. Updated workbooks can optionally be marked to appear in the recently viewed list. |
| Update Workbook Connection | Updates the server address, port, authentication type, username, or password for the specified workbook connection. |
| Update Workbook Connections | Updates the server address, port, authentication type, username, or password for one or more connections in a data source. To update all connections in a given data source with the same connection information, see Update Workbook Connection. |
| Update Workbook Now | Refreshes the specified workbook. |
| Update Workbook Thumbnail Images | Updates a workbook's thumbnail images. |
| Upload Workbook Encrypted Keychain | Uploads the encrypted version of the embedded credentials. This method will only work if the credentials are encrypted with the latest public key used to link the source Tableau Server with the destination Tableau Cloud or Tableau Server site. |
| Validate Uploaded Workbook | Validates a Tableau workbook (TWB) file that already exists in temporary storage on Tableau Cloud or Tableau Server. The TWB is validated against the TWB XSD schema and verifies that it can be loaded in Tableau. |
| Validate Workbook | Validates a Tableau workbook (TWB) file against the TWB XSD schema and verifies that it can be loaded in Tableau. |
| Validate Workbook and Upload | Validates a Tableau workbook (TWB) file against the TWB XSD schema and verifies that it can be loaded in Tableau. If validation succeeds, this method stores the TWB in a temporary location on Tableau Cloud or Tableau Server for further use. |
| Legacy Site role name (v10.5) | REST API site role string (v10.5) | Site role name | REST API site role string |
|---|---|---|---|
| Interactor | Interactor | Explorer | Explorer |
| Publisher | Publisher | Explorer (Can Publish) | ExplorerCanPublish |
| Site Administrator | SiteAdministrator | Site Administrator Explorer | SiteAdministratorExplorer |
| Site role name | REST API site role string |
|---|---|
| Viewer | Viewer |
| Creator | Creator |
| Site Administrator Creator | SiteAdministratorCreator |
| Site role name | REST API site role string |
|---|---|
| Server Administrator | ServerAdministrator |
| Unlicensed | Unlicensed |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| group-set-id | The unique ID of the group set you want to add the group to. |
| group-id | The unique ID of the group you want to add to the group set. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403004 | Unauthorized operation | Insufficient permissions to perform the operation. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the request body doesn't correspond to an existing group. |
| 409 | 409120 | Group set not found | The group set ID in the request body doesn't correspond to an existing group. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to add the user to. |
| user-id |
The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site. Beginning in API 3.21, you can bulk add users to a group by specifying multiple user IDs. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group name in the request body doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409011 | User conflict | The specified user is already a member of the group. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to add users to. |
| user-name | The name of the user. If the server uses local authentication, this can be any name. If you are using
Active Directory authentication, or if you are using Tableau Cloud, there are specific requirements for the name.
Tableau Server Note: Active Directory specifies a user name using two attributes: Tableau Cloud |
| site-role | The site role to assign to the user. You can assign the following roles:
Creator,
Explorer,
ExplorerCanPublish,
SiteAdministratorExplorer,
SiteAdministratorCreator,
Unlicensed,
or
Viewer.
Note: You cannot use the REST API to set a user to be a server administrator (ServerAdministrator site role). |
| auth-setting | (Optional) The authentication method to assign the user.
Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
|
| identity-pool-name |
(Optional, Tableau Server only) When identity pools are configured, the name of the identity pool.
Starting in API 3.19, include the identity pool name when identity pools are configured and you need to add a user to an identity pool that uses the local identity store and OIDC authentication. For more information, see Identity Pools Methods. |
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| email-address | (Optional, Tableau Cloud only) The email address where the user can receive notifications. If no value is provided, Tableau Cloud uses the username value to send notifications to.
Starting in API 3.26 (July 2025), you can specify an email address that is different from the username. |
| language |
(Optional, Tableau Cloud only) Language (ISO 639-1) of the user. Starting in API 3.28 (March 2026), you can set the user's default language in Tableau Cloud to a supported language (ISO 639-1). You can assign one of the following values: de, en_GB, en, es, fr_CA, fr, it, nl, pt, sv, th, ja, zh, zh_TW, or ko. Important: The language set using this attribute overrides the default site-wide invitation email language that the site admin can set. |
| locale |
(Optional, Tableau Cloud only) Locale of the user. Starting in API 3.28 (March 2026), you can set the user's default locale to a supported locale. You can assign one of the following values: ar_SA, ar_AE, ar_BH, ar_DZ, ar_EG, ar_IQ, ar_JO, ar_KW, ar_LB, ar_LY, ar_MA, ar_OM, ar_QA, ar_SD, ar_SY, ar_TN, ar_YE, be_BY, bg_BG, ca_ES, cs_CZ, da_DK, de_DE, de_AT, de_CH, de_LU, el_GR, el_CY, en_US, en_AU, en_CA, en_GB, en_IE, en_IN, en_MT, en_NZ, en_PH, en_SG, en_ZA, es_ES, es_AR, es_BO, es_CL, es_CO, es_CR, es_DO, es_EC, es_GT, es_HN, es_MX, es_NI, es_PA, es_PE, es_PR, es_PY, es_SV, es_US, es_UY, es_VE, et_EE, fi_FI, fr_FR, fr_BE, fr_CH, fr_LU, fr_CA, ga_IE, he_IL, hi_IN, hr_HR, hu_HU, id_ID, is_IS, it_IT, it_CH, ja_JP, ko_KR, lt_LT, lv_LV, mk_MK, ms_MY, mt_MT, nl_NL, nl_BE, no_NO, pl_PL, pt_BR, pt_PT, ro_RO, ru_RU, sk_SK, sl_SI, sq_AL, sr_RS, sr_BA, sr_ME, sv_SE, th_TH, tr_TR, uk_UA, vi_VN, zh_CN, zh_HK, zh_SG, or zh_TW. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400003 | Bad request | The user authentication setting ServerDefault is not supported for you site. Try again using TableauIDWithMFA instead. |
| 400 | 400013 | Invalid site role |
The value of the siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 400 | 400217 | Unsupported language | The specified language is not valid or not supported. |
| 400 | 400218 | Unsupported locale | The specified locale is not valid or not supported. |
| 403 | 403193 | Forbidden | A non-administrator user called this method or doesn't have permissions to update language for the user. |
| 403 | 403194 | Forbidden | A non-administrator user called this method or doesn't have permissions to update locale for the user. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The server is configured to use Active Directory for authentication, and the username specified in the request body doesn't match an existing user in Active Directory. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409017 | User conflict | The specified user already exists on the site. |
| 409 | 409005 | Guest user conflict | The Tableau Server API doesn't allow adding a user with the guest role to a site. |
| 500 | 500109 | Internal language error | The language request could not be completed. |
| 500 | 500110 | Internal locale error | The locale request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the group in. |
| asJob-value |
A Boolean value that is used if you are importing from Active Directory. If you set this to false (the default), the import process runs as a synchronous process.
If the Active Directory group contains many
users, the process might time out before it finishes.
If you set this to true, the process runs asynchronously. In that case, Tableau Server starts a job to perform the import and returns the job ID in the Location header. You can check the status of the import job by calling Query Job. Note: This parameter has no effect if the server is configured to use local authentication. This attribute is available for Tableau Server only. |
| new-tableau-server-group-name | The name for the new group. |
| active-directory-group-name |
The name of the Active Directory group to import. This attribute is available for Tableau Server only. |
| active-directory-domain-name |
The domain of the Active Directory group to import. This attribute is available for Tableau Server only. |
| minimum-site-role |
Required if an import element or grantLicenseMode attribute are present in the request. For Tableau Server, the site role assigned to users who are imported from Active Directory or granted a license automatically using the grant license on-sync or on-login mode. If the requested user name matches an existing user in the group, the user either retains their existing role or are granted the one specified in the request, based on the role that enables the most capabilities. This is true whether the group the user belongs to is imported from Active Directory (Tableau Server only) or local. Site roles that can be assigned, listed from the one enabling the least capabilities to the most, are as follows.
Note: You cannot use the REST API to set a user to be a Tableau Server administrator (ServerAdministrator site role). |
| license-mode |
The mode for automatically applying licenses for group members. When the mode is onLogin, a license is granted for each group member when they log in to a site. For local groups, the mode can be either onLogin or unset. If the attribute is omitted, the default mode is unset, which results in no licenses being granted automatically to group members. For groups that import an Active Directory domain, the mode can be either onSync or onLogin. The minimum role granted to users through grantLicenseMode is specified in the siteRole attribute. If that role has less permissions than an existing role assigned to the user, then the user's permissions remain unchanged. |
| on-demand-access |
Optional. A boolean value that is used to enable on-demand access for embedded Tableau content when the Tableau Cloud site is licensed with Embedded Analytics usage-based model or capacity-based model with Cloud+ or Tableau+ edition. Set to true to enable the capability for the group or set to false to disable the capability for the group. For more information about on-demand access, see On-demand access for users in the Tableau Embedding API v3 Help. This attribute is available for Tableau Cloud only starting from API version 3.21 (October 2023). |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Creator, Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 400 | 400019 | Malformed import element | When the <import> element is present in the request body, the following attributes must be specified: source with the value ActiveDirectory; domainName; and siteRole If any of these is missing, the element is malformed. |
| 400 | 400984 | Not licensed | On-demand access can't be enabled if your site is not licensed with the usage-based model or capacity-based usage model with Tableau+ or Cloud+. |
| 403 | 403011 | Active Directory is not configured | The <import> element is present, but Tableau Server is configured for local authentication. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404016 | Domain not found | The request body includes an <import> element, but the specified domain name doesn't exist in Active Directory. |
| 404 | 404017 | Active Directory group not found | The request body includes an <import> element, but no group exists in Active Directory that matches the specified group name. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409009 | Group name conflict | The group name in the request already belongs to the specified site. For the purpose of uniqueness checks, group names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to create the group in. |
name
(Required) Name of the new group set.
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be SiteAdministratorCreator or SiteAdministratorExplorer. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t POST. |
| 409 | 409121 | Group set name conflict | The group set name in the request already belongs to another group set. For the purpose of uniqueness checks, group set names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| name | (Required) Name of the SCIM configuration. |
| idpConfigurationId |
(Required) Authentication configuration to associate with the SCIM configuration. Starting in API 3.26, you can have multiple SCIM configurations. Include the idpConfigurationId to identify which SAML authentication configuration to associate with this SCIM configuration. To get the idpConfigurationId, see List Authentication Configurations for Site. Starting in API 3.28, you can associate OIDC or Google authentication with SCIM. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, contains malformed XML, or the idpConfigurationId is not valid. |
| 400 | 400008 | Bad Request | The content of the request body is missing the SCIM configuration name, contains unsupported attributes, or the idpConfigurationId is missing. |
| 400 | 400802 | Bad Request | The maximum number of 20 SCIM configurations for the site has been reached. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400802 | Bad Request | The SCIM configuration is already associated with a SCIM token. To generate a new token for the SCIM configuration, first delete the associated SCIM token and try again. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | A SCIM token can only be generated by the user who created the SCIM configuration. |
| 404 | 404057 | Resource Not Found | The SCIM configuration ID is not valid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| group-id | The ID of the group to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group or the group is not part of the specified site. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the project. |
| group-set-id | The ID of the group set to delete. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type wasn’t DELETE. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond to an existing group set or the group set isn’t part of the specified site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | The SCIM configuration can only be deleted by the user who created the SCIM configuration. |
| 404 | 404057 | Resource Not Found | The SCIM configuration cannot be deleted because it does not exist on this site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 404 | 404050 | Resource Not Found | The SCIM configuration does not have an associated SCIM token. |
| 404 | 404057 | Resource Not Found | The SCIM configuration ID is not valid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that users are being deleted from. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request payload is missing or incomplete, or contains malformed XML. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user whole credentials you want to download. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| user-id | The ID of the user whose group memberships are listed. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | User not found | The group ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-set-id | The ID of the group set you want information for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t GET. |
| 409 | 409120 | Group set not found | The group set ID in the request body doesn't correspond to an existing group set. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 404 | 404057 | Resource Not Found | The SCIM configuration UUID is not valid. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to get the users for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the users. |
| filter-expression | (Optional) An expression that lets you specify a subset of users to return. You can filter on predefined fields such as name and lastLogin. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the views or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The unique ID of the site asset. |
| path-to-csv | The file path to the .csv list users to be imported. |
| user-name |
(Optional) The name of the user. If the server uses local authentication, this can be any name. If you are using Active Directory authentication, or if you are using Tableau Cloud, there are specific requirements for the name. Tableau Server
Note: Active Directory specifies a user name using two attributes: Tableau Cloud
|
| auth-setting |
Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
Assigning user auth settings with this method
|
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| isVerbose | Tableau Cloud only When set to false, this method only returns the top three errors in a batch of users. When set to true, the method displays a full list of errors during CSV upload.
Available in REST API 3.22 (Tableau Cloud February 2024) |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request payload is missing or incomplete, or contains malformed XML. |
| 500 | 500000 | Internal Server Error | The request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group sets. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of group sets to return. You can filter on predefined fields such as name. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which group set information is returned. If you don’t specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter isn’t an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter isn’t an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t GET. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond with an existing group set. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the groups. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) An expression that lets you specify a subset of groups to return. You can filter on predefined fields such as name. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which user information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get information for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 403 | 403133 | Query user permissions forbidden | The user does not have permissions to query user information for other users. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group set. |
| group-set-id | The ID of the group set to remove the group from. |
| group-id | The ID of the group to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400032 | Deletion failed | A problem arose that prevented the group from being removed from the group set. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type wasn’t DELETE. |
| 409 | 409120 | Group set not found | The group set ID in the URI doesn't correspond to an existing user. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to remove. |
| mapAssetsTo |
Optional. When included in the URI path, the contents owned by the user being removed are transferred to another user. If the user owns subscriptions and no mapAssetsTo is provided, the value of the owner is changed to unknown user. If a user owns only subscriptions, you can delete them from either server or site without having to set mapAssetsTo a different user.
If a user owns only subscriptions, you can delete the user from the server or site without setting this value. Note: Even though both server administrators and site administrators can call this method, only server administrators can use the mapAssetsTo parameter to reassign content ownership. Site administrators can't use this parameter value. You must be a server administrator to remove a user who still owns content on Tableau Server. |
| new-user-id | The ID of a user that receives ownership of contents of the user being remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Deletion failed | Some other problem arose that prevented the user from being removed from the site. |
| 403 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 409 | 409003 | User asset conflict | The specified user still owns content on Tableau Server and cannot be deleted. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to remove the user from. |
| user-id | The ID of the user to remove. |
| user-id |
The ID (not name) of the user to add. You can get the user ID by calling Get Users on Site . Beginning in API 3.21, you can bulk remove users from a group by specifying multiple user IDs. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400032 | Deletion failed | A problem arose that prevented the user from being removed from the site. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user name in the URI doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group name in the URI doesn't correspond to an existing group. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-id | The ID of the group to update. |
| AsJob-value | A Boolean value that is used if you are importing from Active Directory. Set this value to true to synchronize with Active Directory as a background task, or set this value to
false to synchronize immediately (synchronously). The default is false.
Note: This parameter has no effect if the server is configured to use local authentication. This attribute is available for Tableau Server only. |
| new-group-name | The new name for the group. |
| AD-group-name |
The name of the Active Directory group to synchronize with. This attribute is available for Tableau Server only. |
| AD-domain |
The domain for the Active Directory group. This attribute is available for Tableau Server only. |
| minimum-site-role |
Required if an import element or grantLicenseMode attribute are present in the request. The site role assigned to users who are imported from Active Directory (Tableau Server only) or granted a license automatically using the grant license on-sync or on-login mode. If the requested user name matches an existing user in the group, the user either retains their existing role or are granted the one specified in the request, based on the role that enables the most capabilities. This is true whether the group the user belongs to is imported from Active Directory (Tableau Server only) or local. Site roles that can be assigned, listed from the one enabling the least capabilities to the most, are as follows.
Note: You cannot use the REST API to set a user to be a Tableau Server administrator (ServerAdministrator site role). |
| license-mode |
Optional. The mode for automatically applying licenses for group members. When the mode is onLogin, a license is granted for each group member when they log in to a site. For local groups, the mode can be either onLogin or unset. If the attribute is omitted during an update, the group will use the license grant mode configured prior to the update. A local group configured to use onLogin can switch the mode to unset by updating the group using:
For groups that import an Active Directory domain (Tableau Server only), the grantLicenseMode can be updated to either onSync or onLogin. If the attribute is omitted during an update, the group will use the license grant mode configured prior to the update. The minimum role granted to users through grantLicenseMode is specified in the siteRole attribute of the import element. If that role has less permissions than an existing role assigned to the user, then the user's permissions remain unchanged. |
| on-demand-access |
Optional. A boolean value that is used to enable on-demand access for embedded Tableau content when the Tableau Cloud site is licensed with Embedded Analytics usage-based model or capacity-based model with Cloud+ or Tableau+ edition. Set to true to enable the capability for the group or set to false to disable the capability for the group. For more information about on-demand access, see On-demand access for users in the Tableau Embedding API v3 Help. This attribute is available for Tableau Cloud only starting from API version 3.21 (October 2023). |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400984 | Not licensed | On-demand access can't be enabled if your site is not licensed with the usage-based model or capacity-based usage model with Tableau+ or Cloud+ edition. |
| 403 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 403 | 400019 | Malformed import element | If the body includes an <import> element, it must contain a source, domainName,
and siteRole attribute. If any of these attributes are missing, the element is malformed. In addition, the source attribute
must have a value of ActiveDirectory; otherwise the element is malformed. |
| 403 | 403011 | Active Directory not configured | The request body contains an <import> element is included, but Tableau Server is configured for local authentication. |
| 403 | 403020 | Imported group name update forbidden | The request body contains an <import> element and the value of the name attribute of the <group> element in the request body is different from the name of the group imported into Tableau Server as referenced by the group-id value in the URI. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing site. |
| 404 | 404016 | Domain not found | The request body includes an <import> element, but the specified domain name doesn't exist in Active Directory. |
| 404 | 404017 | Active Directory group not found | The request body includes an <import> element, but no group with the name specified in the <group> element exists in Active Directory. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409009 | Group name conflict | The group name in the request is already in use in the specified site. For the purpose of uniqueness checks, group names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| group-set-id | The ID of the group set to update. |
| name | The new name for the group set. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 400013 | Invalid site role |
The value of the minimumSiteRole or siteRole attribute must be Explorer, ExplorerCanPublish, SiteAdministratorCreator, SiteAdministratorExplorer, Unlicensed, or Viewer. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | The request type wasn’t PUT. |
| 409 | 409120 | Group set not found. | The group set ID in the request body doesn't correspond to an existing group set. |
| 409 | 409121 | Group set name conflict | The group set name in the request already belongs to another group set. For the purpose of uniqueness checks, group set names are case-insensitive. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| scim-configuration-id | The UUID of the SCIM configuration. To get the SCIM configuration UUID, see List SCIM Configurations. |
| name | (Required) Name of the SCIM configuration. |
| idpConfigurationId |
(Required) Authentication configuration to associate with the SCIM configuration. Starting in API 3.26, you can have multiple SCIM configurations. Include the idpConfigurationId to identify which configuration to update. If a SCIM token is associated with SCIM configuration, updating the IdPConfigurationId deletes the SCIM token. Ensure the SCIM token's secret is removed from the identity provider's (IdP's) SCIM configuration. To get the idpConfigurationId, see List Authentication Configurations for Site. Starting in API 3.28, you can associate OIDC or Google authentication with SCIM. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Bad Request | The content of the request body contains unsupported attributes, the SCIM configuration name already exists, or the idpConfigurationId is missing or not valid. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header is invalid or has expired. |
| 403 | 403182 | Forbidden | The SCIM configuration can only be updated by the user who created the SCIM configuration. |
| 404 | 404050 | Resource Not Found | The SCIM configuration does not have an associated SCIM token. |
| 404 | 404057 | Resource Not Found | The SCIM configuration UUID is not valid or does not exist on this site. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to update. |
| new-full-name | (Optional) The new name for the user. Users can change names without affecting the groups they belong to. Tableau Server only. Not available in Tableau Cloud. |
| new-email | (Optional) The new email address for the for the Tableau Server user.
Starting in API 3.26 (July 2025), the email address where the Tableau Cloud user can receive notifications. If no value is provided, Tableau Cloud uses the |
| new-password | (Optional) The new password for the user. Tableau Server only. Not available in Tableau Cloud. |
| new-site-role |
The new site role to assign to the user. You can assign the following roles: Creator, Explorer, ExplorerCanPublish, ServerAdministrator, SiteAdministratorExplorer, SiteAdministratorCreator, Unlicensed, or Viewer. Note: Only a user in the ServerAdministrator site role can use the REST API to add or remove another user from the ServerAdministrator site role. Users in the ServerAdministrator site role can only be moved to the Creator site role if one or more Creator licenses have been activated on the server; otherwise these users can only be moved to the Publisher site role. This method only supports the ServerAdministrator site role in API 2.8 and later. |
| new-auth-setting | (Optional) The authentication type for the user. Tableau Server The authSetting attribute only applies when updating users on sites with site-specific SAML-enabled settings. Tableau Cloud The ability to create and enable multiple authentication methods simultaneously was introduced in API 3.25 (January 2025). As a result of this capability, consider the following:
Notes: You can assign the following values for the authSetting attribute:
|
| identity-pool-name | (Optional, Tableau Server only) When identity pools are configured, the name of the identity pool.
Starting in API 3.19, include the identity pool name when identity pools are configured and you need to add a user to an identity pool that uses the local identity store and OIDC authentication. For more information, see Identity Pools Methods. |
| idp-configuration-id |
(Optional, Tableau Cloud only) The configuration to assign for user authentication. Added in API 3.25 (January 2025). To find the idpConfigurationId attribute value, use the List Authentication Configurations for Site method. Notes:
|
| language |
(Optional, Tableau Cloud only) Language of the user. Starting in API 3.28 (March 2026), you can set the user's default language in Tableau Cloud to one of the supported languages (ISO 639-1). You can assign one of the following values: de, en_GB, en, es, fr_CA, fr, it, nl, pt, sv, th, ja, zh, zh_TW, or ko. |
| locale |
(Optional, Tableau Cloud only) Locale of the user. Starting in API 3.28 (March 2026), you can set the user's default locale to one of the supported locales. You can assign one of the following values: ar_SA, ar_AE, ar_BH, ar_DZ, ar_EG, ar_IQ, ar_JO, ar_KW, ar_LB, ar_LY, ar_MA, ar_OM, ar_QA, ar_SD, ar_SY, ar_TN, ar_YE, be_BY, bg_BG, ca_ES, cs_CZ, da_DK, de_DE, de_AT, de_CH, de_LU, el_GR, el_CY, en_US, en_AU, en_CA, en_GB, en_IE, en_IN, en_MT, en_NZ, en_PH, en_SG, en_ZA, es_ES, es_AR, es_BO, es_CL, es_CO, es_CR, es_DO, es_EC, es_GT, es_HN, es_MX, es_NI, es_PA, es_PE, es_PR, es_PY, es_SV, es_US, es_UY, es_VE, et_EE, fi_FI, fr_FR, fr_BE, fr_CH, fr_LU, fr_CA, ga_IE, he_IL, hi_IN, hr_HR, hu_HU, id_ID, is_IS, it_IT, it_CH, ja_JP, ko_KR, lt_LT, lv_LV, mk_MK, ms_MY, mt_MT, nl_NL, nl_BE, no_NO, pl_PL, pt_BR, pt_PT, ro_RO, ru_RU, sk_SK, sl_SI, sq_AL, sr_RS, sr_BA, sr_ME, sv_SE, th_TH, tr_TR, uk_UA, vi_VN, zh_CN, zh_HK, zh_SG, or zh_TW. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400000 | Invalid email address | The email attribute does not contain a valid email address. |
| 400 | 400003 | Bad request | The user authentication setting ServerDefault is not supported for you site. Try again using TableauIDWithMFA instead. |
| 400 | 400012 | Bad request | The user cannot be assigned the Unlicensed role because they are still a member of a group that has a minimum site role set. |
| 400 | 400217 | Unsupported language | The specified language is not valid or not supported. |
| 400 | 400218 | Unsupported locale | The specified locale is not valid or not supported. |
| 403 | 403009 | Licensing update on self forbidden | A user cannot update their own licensing role. |
| 403 | 403009 | Guest update forbidden | The Guest user is a special user and cannot be updated. |
| 400 | 400013 | Invalid site role |
The value of the siteRole attribute must be Creator, Explorer, ExplorerCanPublish, ServerAdministrator, SiteAdministratorExplorer, SiteAdministratorCreator, Unlicensed, or Viewer. |
| 403 | 403193 | Forbidden | A non-administrator user called this method or doesn't have permissions to update language for the user. |
| 403 | 403194 | Forbidden | A non-administrator user called this method or doesn't have permissions to update locale for the user. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 409 | 409000 | User conflict | The user with the specified name is already registered on the site in the same domain. |
| 409 | 409014 | Licensing conflict | The request is attempting to update the user to a licensing role that has insufficient capacity. |
| 500 | 500109 | Internal language error | The language request could not be completed. |
| 500 | 500110 | Internal locale error | The locale request could not be completed. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| user-luid | The LUID of the user whose credentials you want to upload. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| Keyword | Description |
|---|---|
_all_ | Returns all the available fields for the requested resource and any additional nested-resources. You can use this value to determine what the available fields are for a given resource. |
_default_ | Returns the default fields for the requested resource and the default fields for any additional nested resources. The default fields are the same fields that are returned by the query method before any field expression is added. You can combine the _default_ keyword in field expressions with additional fields or resources to return all the default fields and ones that are not part of the default set (for example, Fields=_default_,owner.name). |
| Query Datasources Fields (Fields in bold face are included in the response by default.) | |||||
|
Datasource Use either:
|
Owner Use:
|
Project Use:
|
|||
| Get Users on Site Fields (Fields in bold face are included in the response by default.) | |||||
|
User Use either:
For servers configured with |
|||||
| Query Views for Site Fields (Fields in bold face are included in the response by default.) | |||||
|
View Use either:
|
Workbook Use:
|
Owner Use:
|
Project Use:
|
||
| Query Workbooks for Site Fields (Fields in bold face are included in the response by default.) | |||||
|
Workbook Use either:
|
Owner Use:
|
Project Use:
|
|||
| Query Projects Fields (Fields in bold face are included in the response by default.) | |||||
|
Project Use either:
|
Owner Use:
|
Contents Counts Use:
|
|||
| Query Jobs Fields (Fields in bold face are included in the response by default.) | |||||
|
Background Job Use either:
|
|||||
| Query Groups Fields (Fields in bold face are included in the response by default.) | |||||
|
Group Use either:
|
|||||
| Get Favorites for User Fields (Fields in bold face are included in the response by default.) | |||||
|
Favorites Use either:
|
Datasource Use:
|
Project Use:
|
User Use:
user.id
|
Workbook Use:
workbook.id
|
View Use:
|
|
List Metrics for Site Fields (Fields in bold face are included in the response by default.) |
|||||
|
Metrics Use either:
|
Owner Use:
|
Project Use:
|
|||
|
List Custom Views Fields (Fields in bold face are included in the response by default.) |
|||||
|
Custom Views
|
|||||
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400049 | Error adding tags | There was a problem adding tags to the specified virtual connection. |
| 403 | 403004 | Adding tags forbidden | The user doesn't have permissions to add tags to the virtual connection. |
| 404 | 404000 | Site not found | The site ID in the URI is not for an existing site. |
| 404 | 404006 | Virtual connection not found | The virtual connection ID in URI doesn't correspond to an existing virtual connection. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to set permissions for. |
| user-id | The LUID of the user to add permissions for. A request does not need to include both a user and a group grantee. |
| group-id | The LUID of the group to add permissions for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to assign. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to allow the capability, or Deny to deny it. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group specified in the request body doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| schedule-id | The LUID for the schedule that you are associating with the virtual connection. |
| transaction-level |
Optional. DATABASE or TABLE. Default is DATABASE.
|
| incremental-flag |
Optional, boolean. Default is false.
|
| virtualconnection-id | The LUID of the virtual connection to add to the schedule. |
| starting-item-id | The LUID of an extract table in the virtual connection. You may have more than one <startingItemId> element inside of a <startingItemIds> element. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400223 | Virtual connection table not found. | A LUID in startingItemIds is not an extract-eligible table on the virtual connection. |
| 400 | 400225 | Duplicate virtual connection table. | startingItemIds contains the same table LUID more than once. |
| 400 | 404049 | No virtual connection specified. | The request body must include a virtual connection in the extractRefresh element. |
| 400 | 409004 | Invalid parameter. | startingItemIds contains a value that is not a valid LUID. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision, or none of its tables are configured for extract refresh. |
| 403 | 403078 | Unable to create the task. |
One of the following applies:
|
| 404 | 404023 | Schedule not found. | Check the schedule LUID. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Request type must be PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
extractRefresh type
|
The type of extract refresh being scheduled. Valid values include:
|
extractRefresh transactionLevel
|
(Optional) : Only used with a virtual connection. Optional. DATABASE or TABLE. Default is DATABASE.
|
workbook id or datasource id or virtualConnection id |
The LUID of the workbook, data source, or virtual connection that is the target of the custom schedule. |
startingItemId
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
tableLuid
|
Only used with a virtual connection, when The LUID of an extract table in the virtual connection. You may have more than one |
schedule frequency
|
(Required to create subscription) enumeration: The scheduled frequency for triggering the task. Valid values include:
|
||||||||||
frequencyDetails start
|
(Required to create subscription) time: If the schedule frequency is Daily, Weekly, or Monthly, then start
is the time of day on which scheduled jobs should run. If the frequency is Hourly, then start is the beginning of the
time range during which jobs should be started. The valid format is HH:MM:SS.
|
||||||||||
frequencyDetails end
|
(Required to create subscription) time: If the schedule frequency is
|
||||||||||
interval {interval type}
|
(Required to create subscription) string: Defines when and how often a scheduled job executes within the time parameters set in the start and end
values of the frequencyDetails of the schedule. The type and valid values for
an interval expression depend on the declared frequency of the schedule as follows:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400225 | Duplicate starting item | startingItemIds contains a duplicate table LUID. |
| 409 | 409090 | Extract operation not allowed | The virtual connection has no extract-configured tables; all tables are live. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 404 | 404026 | Task not found | The task for the extract refresh could not be found. |
| 409 | 409004 | invalid parameter value | The request is malformed or contains an invalid or missing schedule or interval parameter value. When the difference between start and end times are not increments of one hour, this error will result. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection whose extract is to be deleted. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 409128 | No extract to delete. | The virtual connection has no extract. Neither the active revision nor any of its tables has extracts enabled. |
| 400 | 409099 | Unable to delete the extract. | A generic error occurred while converting the virtual connection to live and deleting its extract. |
| 403 | 409098 | User not authorized to delete the extract. | The user must be able to see the virtual connection and must have permission to convert its extract to live. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. This error also occurs if the virtual connection has no active revision. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| tag-name | The text of the tag. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400077 | Error deleting tag | There was a problem deleting the tag from the specified virtual connection. |
| 403 | 403004 | Deleting tags forbidden | The user doesn't have permissions to add delete tags from the virtual connection. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| 409 | 409122 | Generic error | An unknown error occurred. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to remove the permission for. |
| group-id | The LUID of the group to remove the permission for. A request does not need to include both a user and a group grantee. |
| user-id | The LUID of the user to remove the permission for. A request does not need to include both a user and a group grantee. |
| capability-name |
The capability to remove the permission for. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. For more information, see Permissions. |
| capability-mode | Allow to remove the allow permission, or Deny to remove the deny permission. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400009 | Invalid capability | The specified capability is invalid for a virtual connection. Valid capabilities for a virtual connection are Read, Connect, Overwrite, ChangeHierarchy, Delete, and ChangePermissions. |
| 403 | 403004 | Permissions setting forbidden | The user tried to change permissions for a virtual connection but doesn't have the permission to change them. |
| 404 | 404000 | Site not found | The specified site doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user specified in the request body doesn't correspond to an existing user. |
| 404 | 404012 | Group not found | The group ID in the URI doesn't correspond to an existing group. |
| 404 | 404013 | Capability not assigned | The capability in the URI is not assigned to the specified user or group with the specified mode (Allow or Deny). |
| 404 | 404014 | Capability not found | A capability specified in the request body doesn't correspond to a defined capability. This can apply to either an invalid capability name or to a capability other than Allow or Deny for any mode value. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| 400 | 409004 | Invalid LUID | The virtual connection LUID in the URI was not found. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the virtual connection. |
| virtualconnection-id | The LUID of the virtual connection to download. To get the LUID, use List Virtual Connections. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Download virtual connection error | The virtual connection ID is not a valid ID, or the .tvcx file could not be built. |
| 403 | 403174 | Download virtual connection forbidden | The user does not have permission to download the virtual connection. |
| 404 | 404000 | Site not found | The site LUID in the URI doesn't correspond to an existing site. |
| 404 | 404049 | Virtual connection not found | The virtual connection does not exist. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Generic error | An unknown error occurred. |
| 403 | 403174 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| revision-number | The revision number (revisionNumber) of the virtual connection, as returned by the Get Virtual Connection Revisions method. This is an integer, not a LUID. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400200 | Generic error | An unknown error occurred. Check to make sure the revision number is a revision and not the active virtual connection. |
| 403 | 403174 | User not authorized. | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. Check that the revision number exists. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtual-connection-id | The LUID for the virtual connection. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400058 | Generic error | An unknown error occurred. |
| 403 | 403054 | User not authorized. | User doesn't have permissions to revisions on this virtual connection. Check the user's permissions. |
| 403 | 403173 | User not authorized. | User forbidden from listing virtual connection revisions. Check the user's permissions and site role. |
| 403 | 403053 | Revision history is disabled on the site. | Check the revision history setting. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| sort-expression | (Optional) An expression that lets you specify the order in which virtual connection information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for virtual connections at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400008 | Invalid parameter value | A parameter in the request body is missing or invalid. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| virtual-connection-id | The LUID for the virtual connection that includes the database connections. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for virtual connections at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site to publish to. |
| publish-as-draft-flag | (Optional) true to publish the virtual connection as a draft, or false to publish it as an active virtual connection. The default is true. This parameter applies only when you publish a JSON representation. The parameter is case sensitive.
If the virtual connection contains an extract, the publishAsDraft parameter value is ignored and the virtual connection is published as a draft. Note: If you are using the REST API to publish a virtual connection as a draft, note the virtual connection's LUID ( |
| overwrite-flag | true to overwrite a virtual connection that has the same name in the target project, or false to fail if the specified virtual connection already exists. The default is false. If overwrite-flag is set to true but the virtual connection doesn't already exist, the operation succeeds. |
| upload-session-id | (Optional, .tvcx files only) If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to
Initiate File Upload. If this value is not included, the server assumes
that the body of the request contains the file to be published.
|
| boundary-string | (Required) A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| virtualconnection-name | (Required) The name to assign to the virtual connection when it is saved on the server. This is typically derived from the file name. |
| project-id | (Optional) The LUID of the project to publish to. If you omit it, the virtual connection is published to the default project. |
| owner-id | (Optional) The LUID of the owner of the virtual connection. If you omit it, the authenticated user becomes the owner. |
tableau_virtual_connection file part
|
The .tvcx file. Include it when you publish in a single request. Omit it when you commit a file that was uploaded in parts. If you include both a file part and the uploadSessionId parameter, or if you include neither, the request fails. |
| virtualconnection-name | The name of the virtual connection you are publishing. If publishing an existing virtual connection as a revision, the virtual connection name is ignored. |
| project-id | The LUID of the project you are publishing to. |
| owner-id | This attribute is required, but is ignored. |
| virtualconnection-as-json |
The virtual connection schema rendered as JSON, as obtained using the Download Virtual Connection as JSON or Download Virtual Connection Revision as JSON method. The schema appears in the content element (for XML output) or content property (for JSON output). Note: Changing the downloaded schema and then using it with this method isn't supported. When using the Publish Virtual Connection method, we recommend using the virtual connection schema format that matches the format you used for downloading it. This is important because the virtual connection schema returned by the download methods has escape characters in it if the output was JSON. If you download and publish using different formats, you will have to make changes to the JSON representation of the virtual connection. In other words:
For more information on the difference between using XML and using JSON with the REST API, see Fundamentals of the Tableau Server REST API. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request |
When you publish a .tvcx file, the request is not valid for one of these reasons:
|
| 400 | 400201 | Publish virtual connection error | The virtual connection could not be published. This includes content that is not valid virtual connection JSON, or a .tvcx file or its contents that could not be read. |
| 403 | 403008 | Insufficient site storage | The content would exceed the site's storage quota. Applies when publishing a .tvcx file. |
| 403 | 403175 | Publish virtual connection forbidden | The user does not have permission to publish the virtual connection. |
| 404 | 404015 | File upload not found | The uploadSessionId does not match an upload owned by the user. Applies when publishing a .tvcx file. |
| 404 | 404049 | Virtual connection not found | The virtual connection could not be found while publishing it with the extract in the .tvcx file. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409123 | Virtual connection exists | A virtual connection with the same name already exists in the project and overwrite is false. Applies when publishing a .tvcx file. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the virtual connection. |
| virtualconnection-id | The ID of the virtual connection to get permissions for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Virtual Connection not found | The virtual connection ID in the URI doesn't correspond to an existing virtual connection. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection. |
| virtualconnection-name | The name of the virtual connection. |
| certification-flag | Boolean. If true, the virtual connection is certified. If false, it won't. |
| certification-message | The certification label's message. |
| project-id | The LUID of the project the virtual connection is located in. |
| owner-id |
The LUID of the user that owns the virtual connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400203 | Generic error | An unknown error occurred. |
| 403 | 403004 | User not authorized to change virtual connection | Check to make sure the user has the required permissions. |
| 403 | 403176 | User not authorized to change virtual connection's owner | Check to make sure the user has the required permissions. |
| 403 | 403177 | User not authorized to move assets into the target project. | Check to make sure the user has the required permissions. |
| 403 | 403178 | User not authorized to move the virtual connection | Check to make sure the user has the required permissions. |
| 404 | 404049 | Virtual connection not found | Check the virtual connection LUID. |
| 409 | 409124 | A virtual connection with the chosen name already exists in the project. | Try a different virtual connection name. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site that contains the virtual connection. |
| virtual-connection-id | The LUID for the virtual connection that includes the database connections. |
| connection-id | The ID of the database connection. To determine what connections are in a virtual connection, call List Virtual Connection Database Connections. |
connection serverAddress | The new server for the database connection. |
connection serverPort | The new port for the database connection |
connection userName | The new username for the database connection. |
connection password | The new password for the database connection. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403004 | Operation unauthorized | The user isn’t authorized to perform the task. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| virtualconnection-id | The LUID for the virtual connection to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 403180 | Full refresh not allowed. | A full refresh extract operation is not allowed for the virtual connection. |
| 400 | 403181 | Incremental refresh not allowed. | The request specified an incremental refresh, but an incremental refresh extract operation is not allowed for the virtual connection. |
| 400 | 409090 | No extract-eligible tables. | The virtual connection has no active revision or no extract-eligible tables. Live tables are not refreshed. |
| 403 | 403199 | User not authorized to refresh the virtual connection. | The user must have either the Manage Extract or the Allow Extract Refresh permission on the virtual connection. |
| 403 | 409082 | Run Now is disabled for the site. | Enable Run Now for the site, then try the request again. |
| 404 | 404049 | Virtual connection not found. | Check the virtual connection LUID. |
| 405 | 405000 | Method not allowed. | Direct virtual connection extract refresh is not enabled for this site. |
| 409 | 409093 | Operation already in queue. | An extract refresh job for the virtual connection is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the views to add tags to. |
| view-id | The view to add the tag to. If the view is already tagged with a tag that's included in the request body, those tags are ignored and the view retains them. If the <tags> element is empty, no new tags are added to the view. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400076 | Error adding tags | There was a problem adding tags to the specified view. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404011 | View not found | The view ID in URI doesn't correspond to an existing view. |
| 404 | 404009 | Workbook ID mismatch | The request body contains a view ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to add tags to. |
| workbook-id | The workbook to add the tag to. If the workbook is already tagged with a tag that's included in the request body, those tags are ignored and the workbook retains them. If the <tags> element is empty, no new tags are added to the workbook. |
| tag | The text of the tag. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400049 | Error adding tags | There was a problem adding tags to the specified workbook. |
| 403 | 403004 | Adding tags forbidden |
A non-administrator user called this method but doesn't have permission to add tags. This error is raised even if the <tags> element is empty. |
| 404 | 404000 | Site not found |
The site ID in the URI is not for an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in URI doesn't correspond to an existing workbook. |
| 404 | 404009 | Workbook ID mismatch | The request body contains a workbook ID (which is optional) and it doesn't match the ID in the URI. |
| 404 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the view to remove the tag from. |
| tag-name | The name of the tag to remove from the view. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400078 | Error deleting tag | There was a problem deleting the tag from the specified view. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified workbook. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove the tag from. |
| tag-name | The name of the tag to remove from the workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400051 | Error deleting tag | There was a problem deleting the tag from the specified workbook. |
| 403 | 403004 | Deleting tags forbidden | A non-administrator user called this method but doesn't have permission to delete a tag from the specified workbook. |
| 404 | 404000 | Site not found | The site ID or URL namespace in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404007 | Tag not found | The tag in the URI doesn't exist for the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400212 | Generic error | An unknown error occurred. Try again. |
| 403 | 403004 | Operation on resource unauthorized | Insufficient permissions to perform the operation. Confirm you have Read and Delete permissions for the view. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. Confirm the site ID. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view. Confirm the view ID. |
| 405 | 405000 | Invalid request method | The HTTP request method was wrong. Confirm you're using the HTTP DELETE method. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to remove. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| view-id | The ID of the view to use as the source of the crosstab to be downloaded as an .xlsx file. |
| max-age-minutes | (Optional) The maximum number of minutes an .xlsx file will be cached on the server before being refreshed. To prevent multiple .xlsx requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /excel?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this file. |
| 400 | 400130 | Unknown error |
The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 4001XX | Unauthorized |
The authentication token for the request is missing, invalid, or expired. |
| 403 | 4031XX | Unauthorized |
A user attempted to download a .xlsx file without Read and/or ExportData permissions for the workbook or view, and is not an administrator. |
| 404 | 404xxx | Site or view not found | The site or view specified in the request could not be found. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to download. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the workbook specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the workbook. You can use this option to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403019 | Read forbidden | A non-administrator user attempted to download a workbook, but the caller doesn't have ExportXml permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| workbook-luid | The LUID of the workbook to download the encrypted keychain from. |
destinationSiteUrlNamespace
|
(Required) The site name on Tableau Cloud. |
destinationSiteLuid
|
(Required) The site ID on Tableau Cloud. |
destinationServerUrl
|
(Required) The destination Tableau Cloud URL. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to use as the source of the .pdf file to be downloaded. |
| max-age-minutes | (Optional) The maximum number of minutes a workbook PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| fieldname=filter-value |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its resolution and aspect ratio. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this workbook. |
| 403 | 403004 | Unauthorized |
A non-administrator user attempted to download a pdf, but they don't have Read and/or ExportImage permissions for the workbook or user does not have Read permissions for the views of the workbook. |
| 403 | 403105 | Unauthorized |
The PDF export feature is disabled on the server or the server is not configured to allow PDF exports using the REST API. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to use as the source of the .pptx file to be downloaded. |
| max-age-minutes | (Optional) The maximum number of minutes a workbook .pptx will be cached before being refreshed. To prevent multiple .pptx requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400101 | Unknown error |
There was a problem downloading or querying this workbook. |
| 401 | 4001XX | Unknown error |
There was a problem downloading or querying this workbook. |
| 403 | 4031XX | Unauthorized |
A non-administrator user attempted to download a .pptx file, but they don't have Read and/or ExportImage permissions for the workbook or user does not have Read permissions for the views of the workbook. |
| 403 | 403105 | Unauthorized |
The PowerPoint export feature is disabled on the server or the server is not configured to allow PowerPoint exports using the REST API. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to download. |
| revision-number | The revision number of the workbook to download. To determine what versions are available, call Get Workbook Revisions. Note that the current revision of a workbook cannot be accessed by this call; use Download Workbook instead. |
| extract-value | (Optional) The extract-value is a Boolean value (False or True). When the workbook specified for download has an extract, if you add the parameter ?includeExtract=False, the extract is not included when you download the workbook. You can use this option to improve performance if you are downloading workbooks or data sources that have large extracts. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403019 | Read forbidden | A non-administrator user attempted to download a workbook, but the caller doesn't have required permissions. |
| 404 | 404024 | Workbook revision not found | The revision number in the URI doesn't correspond to an existing data source revision. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| custom-view-luid | The ID of the view to render as data. |
| max-age-minutes | (Optional) The maximum number of minutes view data will be cached before being refreshed. To prevent multiple view data requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| fieldname=filter-value | (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to get custok views, but the caller doesn't have Read or Expot imagepermission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 429000 | Concurrent request limit exceeded |
For Tableau Cloud, the cumulative number of concurrent requests has exceeded the limit of 20. This limit applies to long-running jobs such as exports and downloads for view data, images, .pdf or .pptx files, datasources, and crosstabs, Retry this request at a later time. Introduced September 2021. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID for the site. |
| view-id | The LUID for the custom view being updated. |
| image-resolution | (Optional) The resolution of the image. Image width and actual pixel density are determined by the display context of the image. Aspect ratio is always preserved. Set the value to high to ensure maximum pixel density. |
| max-age-minutes | (Optional) The maximum number of minutes a view image will be cached before being refreshed. To prevent multiple image requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| image-format | (Optional) The format of the returned image. Valid values are png (default) or svg. Available in API 3.29 and later. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The ID of the site that contains the view. |
| custom-view-luid | The ID of the view to render as a .pdf file. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its
resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its
resolution and aspect ratio. |
| max-age-minutes | (Optional) The maximum number of minutes a view PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| fieldname=filter-value | (Optional) An expression that applies a granular filter to the request. Returns will be based on the value (filtervalue) of the dimension or measure (fieldname) of your view data you specify. For more information, see View filter queries. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-id | The ID of the view whose details are requested. |
| (Optional) get-usage-information | true to return usage statistics. The default is false. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Resource not found | The view ID in the URI doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-name | The name of the view as it appears in the URL to the view. For https://MY_SERVER/#/MY_SITE/views/workbook-name/Sheet1?:iid=1, the name would be Sheet1. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Resource not found | The view ID in the URI doesn't correspond to an existing view. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The LUID of the site that contains the group. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook that downgrade info is being shown for. |
| workbook-id | The ID of the workbook being downgraded. |
| downgrade-target-version | The Tableau release version number the workbook is being downgraded to. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400114 | Unknown downgrade error | The workbook cannot be exported to a downgraded version due to an unknown error. |
| 400 | 400115 | Invalid downgrade version | The downgrade version specified is not a valid Tableau version number. |
| 400 | 400116 | Downgrade version not supported | The downgrade version specified refers to a Tableau version that is not supported. |
| 403 | 40310 | Access to downgrade info denied | The caller does not have permissions required to access download info for this workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook to get revisions for. |
| workbook-id | The ID of the workbook to get revisions for. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 403 | 403053 | Version history not enabled | version history is not enabled for the specified site. |
| 403 | 403056 | A non-administrator user attempted to get workbook revision information, but the caller doesn't have sufficient permissions. | |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-luid | The LUID of the view to be added to the list of views hidden from recommendation for a user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The content ID in the URI doesn't correspond to an existing content of the requested type. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions.
|
| site-luid | The LUID for the site. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression |
(Optional) An expression that lets you specify the set of available fields to return. When a request has a valid field expression, describing the attributes of a Tableau resource like a workbook or data source, only the attributes specified in the expression will be present in the response. For example, a field expression that results in a response containing only the resources LUIDs of the resources being requested would look like:
You can qualify the expression to return values based upon predefined keywords such as The supported fields for custom views are its attributes:
For more information, see Using Fields in the REST API. |
| filter-expression |
(Optional) An expression that lets you filter which Tableau resources are present in the response. A filter expression has a resource, an operator, and a value. For example, a filter that returns only resources created after a specified date would look like:
You can include multiple filter expressions in a request, and mix field, sort, and filter expressions in the same request. The supported filters for custom views use the For more information, see Filtering and Sorting in the Tableau REST API. |
| sort-expression |
(Optional) An expression that lets you sort the Tableau resources present in the response. A sort expression contains
an attribute name and a direction (
You can include multiple sort expressions in a request, and mix field, sort, and filter expressions in the same request. The supported filters for custom views use the For more information, see Filtering and Sorting in the Tableau REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site to publish to. |
| overwrite-flag | (Optional) true to overwrite a workbook that has the same name, or false to fail if the specified workbook already exists. The default is false. If overwrite-flag is set to true but the workbook doesn't already exist, the operation succeeds. |
| asJob-value | (Optional, boolean) If false, the workbook publishing process runs as a synchronous process. If a workbook is very large, the process might time out before it finishes. If you set this value to true, the process runs asynchronously, and a job will start to perform the publishing process and return the job ID. You can check the status of the import job by calling Query Job. Default value is false. |
| skip-connection-check-flag | (Optional, boolean) If true, then the Tableau server will not check if a non-published connection of a workbook is reachable. Publishing will succeed but unchecked connection issues may result in a non-functioning workbook. If you encounter this issue, follow Keep Data Fresh guidelines. Default value is false. |
| upload-session-id | If you are calling this method to commit a file that was uploaded in parts, this value contains the upload session ID that was generated by a call to Initiate File Upload. If this value is not included, the server assumes that the body of the request contains the file to be published. |
| workbook-file-type | twb or twbx to indicate whether you have uploaded a workbook file (twb) or a packaged workbook file (twbx). This value is required if you are calling Publish Workbook in order to commit a file that was previously uploaded using Append to File Upload. The value is not used if you upload a file in the body of the request. |
| boundary-string | A string of characters that is guaranteed to be unique within the body of the request, and that is used to delimit sections of the request body. This value
must be declared as a header that has this format:
|
| workbook-name | The name to assign to the workbook when it is saved on the server. |
| workbook-description | (Optional) Starting in API 3.20, the description for the workbook. |
| show-tabs-flag | (Optional) Specify true to have the published workbook show views in tabs; otherwise, false. The default is false. |
| user-luid | (Optional) The LUID of the user to generate thumbnails as. You can get the user LUID by calling Get Users on Site. |
| server-address | (Optional) Specify the server address for a data source connection if that data source does not use OAuth. |
| port-number | (Optional) Specify the port number for a data source connection if that data source does not use OAuth. |
| connection-username | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection username. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client id. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| connection-password | (Optional) If the workbook's data source connections require credentials, the
<connectionCredentials> elements are included and this attribute specifies
the connection password. If the element is included but is not required (for example, if the data source uses OAuth),
the server ignores the element and its attributes. If your auth type allows secrets to be passed as generic username and password variables, use this attribute for the appropriate secret, such as client secret. (Example auth types include 2-legged OAuth, like Service Principal OAuth with Databricks and Client Credentials OAuth with Snowflake.) Note: Even if credentials are embedded in a workbook, you must still provide credentials when connecting to a data source that requires credentials, unless that data source uses OAuth. |
| embed-flag | (Optional) If the workbook's data source connection requires credentials, the <connectionCredentials> element is included. Setting this attribute to true instructs the server to save the credentials for when the data source is used. |
| oauth-flag | (Optional) If the workbook's data source connection is configured to use OAuth, set this to true to specify that the value of the name attribute
in the <connectionCredentials> element is an
OAuth username. In that case, no password is required and the value of the embed attribute specifies
whether to embed the OAuth credential with the workbook, and the server address and port number are not required.If your auth type allows secrets to be passed as generic username and password variables, set the oAuth attribute to For more information on OAuth, see the OAuth Connections section of the Tableau Cloud or Tableau Server Product Help. |
| hide-view-flag | Setting this flag to true will cause the named view to be hidden in the published workbook. The default value is false.
You can specify any number of views to hide. If all views in a workbook are hidden the server will not perform a publish. |
| project-id | The ID of the project to assign the workbook to. If the project is not specified, the workbook will be published to the default project. |
| workbook-file-name | The file name (including extension) of the workbook file to upload. This attribute is used in the request body only if the request also includes the content of the workbook file; it is not used if you are committing a file uploaded using previous requests. |
| content-of-workbook-file | The content of the workbook file, if the request includes the file. The maximum size of a file that can be uploaded in one call is 64 MB. |
| encryptExtracts | (Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Malformed request body | The XML content in the MIME multipart request is not empty. |
| 400 | 400000 | Missing workbook | There is no attachment in the request and no uploadSessionID parameter. |
| 400 | 400000 | Unexpected attachments | The message had both an uploadSessionId parameter and an attachment, or the request body contained more than one attachment. |
| 400 | 400008 | Invalid embed value | The request body contains a <connectionCredentials> element and it has an embed attribute whose value is not true or false. |
| 400 | 400008 | Invalid overwrite value | The overwrite parameter must be true or false. |
| 400 | 400011 | Publishing error | The workbook could not be published for some other reason than those specified earlier. |
| 400 | 400020 | Invalid workbook file name | The name of the workbook doesn't end in .twb or .twbx. |
| 400 | 400035 | Missing or invalid file type | The request included an uploadSessionId parameter but no file type, or the file type was something other than .twb or .twbx. |
| 403 | 403007 | Insufficient publishing permission | A non-administrator user attempted to publish a workbook, but the caller doesn't have sufficient project permissions. |
| 403 | 403007 | Unlicensed publishing forbidden | A non-administrator user attempted to publish a workbook. This is disallowed for all projects (including the default project). |
| 403 | 403007 | Overwrite forbidden | A workbook with the specified name already exists and the overwrite parameter was not set to true. |
| 403 | 403007 | Problem connecting to data source | There was a problem connecting to a data source used by the workbook. This can be due to missing or invalid connection credentials or because the referenced data source is not available on the server. |
| 403 | 403008 | Insufficient storage quota | The workbook could not be published because there is not enough storage remaining on the server to accommodate its size. |
| 403 | 403130 | Publishing overwrite | A workbook with the same name already exists. |
| 403 | 403131 | Concurrent update | The workbook is already being published in another process. |
| 403 | 403132 | Failed connection check | One or more data sources used by the workbook could not be reached. |
| 404 | 404005 | Project not found | The project ID in the request body doesn't correspond to an existing project on the site. |
| 404 | 404006 | Workbook not found | The user specified overwrite as true but no workbook with the specified name exists on the site. |
| 404 | 404015 | File upload not found | The file upload session ID in the uploadSessionId parameter doesn't correspond to an existing file upload on the site. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| api-version | The version of the API to use, such as 2.2. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the views. |
| get-usage-information | (Optional) true to return usage statistics. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| filter-expression | (Optional) Fields and operators that you can use to filter results. For more information, see Filter expressions. |
| sort-expression | (Optional) Field and direction to sort results. For more information, see Sorting. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the workbooks or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 400 | 400008 | Invalid parameter value | The includeUsageStatistics was provided with a value other than true or false. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 403 | 403014 | Page size limit exceeded | The specified page size is larger than the maximum page size. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to get the views for. |
| (Optional) get-usage-information | true to return usage statistics. The default is false. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400008 | Invalid parameter value | The includeUsageStatistics was provided with a value other than true or false. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to render as data. |
| max-age-minutes | (Optional) The maximum number of minutes view data will be cached before being refreshed. To prevent multiple view data requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view. For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017. To learn more, see View filter queries. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| 429 | 429000 | Concurrent request limit exceeded |
For Tableau Cloud, the cumulative number of concurrent requests has exceeded the limit of 20. This limit applies to long-running jobs such as exports and downloads for view data, images, .pdf or .pptx files, datasources, and crosstabs, Retry this request at a later time. Introduced September 2021. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to return an image for. |
| viz-height |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) The height of the rendered pdf image in pixels that, along with the value of |
| viz-width |
Available in API 3.23 (Tableau Cloud December 2024 / Server 2024.3) and later: (Optional) The width of the rendered pdf image in pixels that, along with the value of |
| image-resolution | (Optional) The resolution of the image. Image width and actual pixel density are determined by the display context of the image. Aspect ratio is always preserved. Set the value to high to ensure maximum pixel density. |
| max-age-minutes | (Optional) The maximum number of minutes a view image will be cached before being refreshed. To prevent multiple image requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| filter-value | The value of the field that you want to use to filter the workbook view.
For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017.
To learn more, see View filter queries. |
| image-format | (Optional) The format of the returned image. Valid values are png (default) or svg. Available in API 3.29 and later. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400010 | Bad request | Invalid query parameter. For example, attempting to query 'jpg' image-format. |
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a view preview image, but the caller doesn't have Read permission. |
| 403 | 403068 | Forbidden | The endpoint has been disabled on the server. To enable the endpoint, a server administrator must use tsm to configure the sheet_image.enabled setting. For more information, see tsm configuration set Options in the Tableau Server help. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view in the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| view-id | The ID of the view to render as a .pdf file. |
| filter-value | The value of the field that you want to use to filter the workbook view.
For example, a workbook with the filter /data?vf_year=2017 would only display data from the year 2017.
To learn more, see View filter queries. |
| viz-height | (Optional) The height of the rendered pdf image in pixels that, along with the value of vizWidth, determines its
resolution and aspect ratio. |
| viz-width | (Optional) The width of the rendered pdf image in pixels that, along with the value of vizHeight, determines its
resolution and aspect ratio. |
| max-age-minutes | (Optional) The maximum number of minutes a view PDF will be cached before being refreshed. To prevent multiple PDF requests from overloading the server, the shortest interval you can set is one minute. There is no maximum value, but the server job enacting the caching action may expire before a long cache period is reached. |
| orientation | (Optional) The orientation of the pages in the .pdf file produced. The value can be
Portrait
or Landscape. If this parameter is not present the page orientation will default to Portrait.
|
| page-type |
(Optional) The type of page, which determines the page dimensions of the .pdf file returned. The value can be:
If this parameter is not present the page type will default to |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400080 | Bad Request | The view ID in the URI doesn't correspond to a view available on the specified site. |
| 401 | 401002 | Unauthorized | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Read forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the view. |
| workbook-id | The ID of the workbook that contains the view to return a thumbnail image for. |
| view-id | The ID of the view to return a thumbnail image for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query a view preview image, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404011 | View not found | The view ID in the URI doesn't correspond to an existing view in the specified workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| content-url |
The permanent name of the site to sign in to. The content URL appears in the URL path of Tableau content in your browser address bar after the Tableau Server URL.
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query the workbook, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook LUID or contentUrl in the URI doesn't correspond to an existing workbook, or the querystring ?key=contentUrl is not capitalized correctly. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbooks. |
| filter-expression | (Optional) An expression that lets you specify a subset of workbooks to return. You can filter on predefined fields such as name, tags, and createdAt. You can include multiple filter expressions. For more information, see Filtering and Sorting. |
| sort-expression | (Optional) An expression that lets you specify the order in which workbook information is returned. If you do not specify a sort expression, the sort order of the information that's returned is undefined. For more information, see Filtering and Sorting. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| field-expression | (Optional) An expression that lets you specify the set of available fields to return. You can qualify the return values based upon predefined keywords such as _all_ or _default_, and you can specify individual fields for the workbooks or other supported resources. You can include multiple field expressions in a request. For more information, see Using Fields in the REST API. |
| accelerationEnabled | true if data acceleration is enabled, otherwise false. For more information, see Data Acceleration (Retired). Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
| accelerationStatus | The status can be:
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number is not an integer, is less than one, or is greater than the final page number for users at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query workbooks for the site, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the user. |
| user-id | The ID of the user to get workbooks for. |
| isOwner | (Optional) true to return only workbooks that the specified user owns, or false to return all workbooks that the specified user has at least read access to. The default is false. |
| page-size | (Optional) The number of items to return in one response. The minimum is 1. The maximum is 1000. The default is 100. For more information, see Paginating Results. |
| page-number | (Optional) The offset for paging. The default is 1. For more information, see Paginating Results. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400006 | Invalid page number | The page number parameter is not an integer, is less than one, or is greater than the final page number for data sources at the requested page size. |
| 400 | 400007 | Invalid page size | The page size parameter is not an integer, or is less than one. |
| 403 | 403014 | Page size exceeds upper limit | The page size parameter exceeds the system-wide upper limit of 1000. |
| 403 | 403018 | Read forbidden | A non-administrator user attempted to query workbooks for the user, but the caller doesn't have Read permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | User not found | The user ID in the URI doesn't correspond to an existing user. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to return connection information about. |
error Code| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to return the thumbnail image for. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 403 | 403004 | Read forbidden | A non-administrator user attempted to query the workbook preview image, but the caller doesn't have Read permission for the workbook. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the group. |
| view-luid | The LUID of the view to be removed from the list of views hidden from recommendation for a user. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404029 | Content not found | The content ID in the URI doesn't correspond to an existing content of the requested type. |
| 404 | 404035 | Recommendation not found | A hidden recommendation for the given content ID was not found. |
| 405 | 405000 | Invalid request method | Request type was not DELETE. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| custom-view-luid | The LUID for the custom view being updated. |
customView name | (Optional) string The new name of the custom view that replaces the existing one. |
owner id | (Optional) LUID The LUID of the new owner of custom view that replaces the existing one. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403162 | Unauthorized Access | The user does not have adminstrator permissions or Read permissions for the custom view.. |
| 404 | 404008 | Resource Not Found | A custom view with the requested LUID could not be found. |
| 405 | 405000 | Invalid Request Method | Request type was not GET. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to update. |
| include-view-acceleration-status-flag | Query parameter is optional. Boolean: If includeViewAccelerationStatus=true then the list of views and the acceleration status of each view will be returned. |
workbook name
|
(Optional) New name for the workbook being updated. | ||||
workbook showTabs
|
(Optional) Specify true to have the updated workbook show views in tabs; otherwise, false. The default is false. | ||||
workbook recentlyViewed
|
(Optional) Set this value to true to have the updated workbook show in the site's recently viewed list. The default is false. Once the flag is set to true, setting it to false will have no effect. When enough views or workbooks have populated the recently viewed list, the oldest item will fall off the list and its recently-viewed-flag will revert to false. | ||||
workbook encryptExtracts
|
(Optional) true to encrypt the extracts or false to not encrypt extracts. For more information, see Extract and Encryption Methods. | ||||
workbook description
|
(Optional) Starting in API 3.20, the new description for the updated workbook. | ||||
project id
|
(Optional) The LUID of a project to assign the workbook to. | ||||
owner id
|
(Optional) The LUID of a user to assign the workbook to as owner. | ||||
dataAccelerationConfig accelerationEnable
|
(Optional) Boolean: If true, accelerate the specified view(s). Default is false. Tableau's View Acceleration feature and Data Acceleration-related APIs were retired in Tableau Cloud in June 2026 and in Tableau Server version 2026.2. |
||||
dataAccelerationConfig accelerateNow
|
(Optional) Boolean: If
Note, the
|
||||
view id
|
(Optional) LUID: The LUID of a view being accelerated. If no views are listed in the request then all views in the workbook will be accelerated. | ||||
dataFreshnessPolicy option
|
(Optional) Enum: The data freshness policy mode for
scheduling refreshment of the workbook data specified in the request. A valid value is one of:
|
||||
freshAtSchedule frequency
|
(Optional) Enum: The interval of workbook data refresh. A valid value is one of:
|
||||
freshAtSchedule time
|
(Optional) Time in HH:MM:SS: The time of day that workbook data will be refreshed, in
increment of 15 minutes. Minutes must end in 00, 15, 30, or 45. for instance time="10:30:00". |
||||
freshAtSchedule timeZone
|
(Optional) Timezone string in IANA format: The timezone of the fresh at schedule time.
For instance, timezone="America/Los_Angeles". If no timezone is provided, then
the local timezone of the Tableau server is used."
|
||||
freshAtSchedule intervals interval
|
A value that specifies the interval between refreshes of view acceleration data.
The value you specify here depends on the
value specified in freshAtSchedule frequency.
If the schedule frequency is
The interval expression is
The interval expression is
|
||||
| freshEverySchedule frequency | (Optional) Enum: The time unit used for the cadence of view acceleration data refreshes. The count of the specified
unit that occurs between refreshes is determined by freshEverySchedule value.
A valid value is one of:
|
||||
| freshEverySchedule value |
(Optional) Integer: The quantity of frequency units between view acceleration data refreshes. For instance,
to specify a refresh every 4 hours, the dataFreshnessPolicy would look like:
|
||||
|
|||||
| XML | JSON |
|
Copy
|
Copy
n
|
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 400 | 400036 | Bad request | View acceleration is enabled, but the workbook loads too quickly to make use of it, or the view has never been accessed by a user. |
| 403 | 403025 | Project update forbidden | A non-administrator user tried to change the workbook project, but the caller doesn't have Write permission for the target project. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change the workbook owner. |
| 403 | 403027 | Update forbidden | A non-administrator user tried to change the workbook, but the caller doesn't have Write permission for the workbook. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the workbook, but does not have permissions to publish the updated workbook to the project. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404002 | Owner not found | The owner ID in the request body doesn't correspond to an existing user. |
| 404 | 404005 | Project not found | The project ID in the URI doesn't match the project ID provided in the request body. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to update. |
| connection-id | The ID of the connection to update. |
| serverAddress | The new server for the connection. |
| port | The new port for the connection. |
| authenticationType |
Added in version 3.27.
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) or earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403029 | Update forbidden | A non-administrator user tried to update the workbook connection, but the caller doesn't have Write permission. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in the URI doesn't correspond to an existing workbook. |
| 404 | 404020 | Connection not found | The connection ID in the URI doesn't correspond to an existing connection. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID of the site that contains the data source. |
| workbook-id | The ID of the workbook to update. |
| connectionLuids | An array of connection LUIDs in the workbook that you are updating. |
| serverAddress | The new server for the connection. |
| serverPort | The new port for the connection |
| authenticationType |
*The new authentication type for the connection. Standard values:
Connector-specific values:
If you are unsure of the value for authenticationType for the target connection, there are two ways to determine the value. First, if you have a data source or workbook that is currently using the target authentication type, you can query for it using the REST API methods Query Datasource Connections or Query Workbook Connections, which returns the authentication type string in the response. Alternatively, you can inspect the |
| userName | The new username for the connection. |
| password | The new password for the connection. |
| embedPassword | True to embed the password; otherwise, False. |
| queryTaggingEnabled |
For API 3.22 (Tableau Cloud February 2024 / Server 2024.1) and earlier: If For more information on query tagging, see Understand Workbook Impact on Your Database Using Query Tagging. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 403 | 403023 | Update forbidden | A non-administrator user tried to update a data source, but the caller doesn't have Write permission. |
| 403 | 403027 | Owner update forbidden | A non-administrator user tried to change connection information, but the caller doesn't have Write permission. |
| 403 | 403062 | Unsupported operation | The data source contains multiple connections, but the URI did not include /connections/connection-id to indicate which connection should be updated. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404004 | Data source not found | The data source ID in the URI doesn't correspond to an existing data source. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook to refresh. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401000 | Unauthorized Access | The authentication token provided in the request header was invalid or has expired. |
| 403 | 403032 | Update Forbidden | A non-administrator user attempted to query workbook views, but the caller doesn't have sufficient permissions. |
| 403 | 403004 | Update forbidden | A non-administrative user tried to update the workbook, but does not have permissions to publish the updated workbook to the project. |
| 404 | 404000 | Site not found | The site ID in the URI is unknown. |
| 404 | 404006 | Resource not found | The workbook ID in the URI is unknown. |
| 405 | 405000 | Invalid request method | Request type was not POST. |
| 409 | 409093 | Operation already in Queue | The extract refresh job is already in the queue. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site that contains the workbook. |
| workbook-id | The ID of the workbook. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | 400000 | Generic error | An unknown error occurred. The content of the request body may be missing or incomplete, or may contain malformed XML. |
| 403 | 403179 | Permissions error | The user calling the method isn't a site administrator, server administrator, or owner of the workbook. |
| 404 | 404006 | Workbook not found | The workbook LUID is invalid, or the user doesn't have permission to read the workbook. |
| 500 | 500000 | Internal server error | The server was unable to create the job. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-luid | The LUID for the site. |
| workbook-luid | The LUID of the workbook to download the encrypted keychain from. |
associatedUserLuidMapping
|
(Required) The user IDs from the source site mapped to destination site user IDs. |
encryptedKeychainList
|
(Required) List of encrypted keychains from the source Tableau Server. |
encryptedKeychain
|
(Required) Encrypted keychain from the source Tableau Server. |
| HTTP status | error Code |
Condition | Details |
|---|---|---|---|
| 400 | 400000 | Bad Request | The content of the request body is missing or incomplete, or contains malformed XML. |
| 401 | 401002 | Unauthorized Access |
The authentication token provided in the request header was invalid or has expired. |
| 403 | 403054 | Unauthorized Access | A non-administrator user attempted to get data source revision information, but the caller doesn't have sufficient permissions. |
| 404 | 404000 | Site not found | The site ID in the URI doesn't correspond to an existing site. |
| 404 | 404006 | Workbook not found | The workbook ID in URI doesn't correspond to an existing workbook. |
| 405 | 405000 | Invalid request method | Request type was not PUT. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| upload-session-id | The upload session ID returned from the Initiate File Upload endpoint. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing uploadSessionId parameter | The required uploadSessionId parameter isn't present in the querystring. | |
| 404 | Resource not found | The uploadSessionId parameter couldn't be found. | |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing required parameter | The required tableau_workbook parameter isn't present in the request. | |
| 400 | Invalid file type or content | The file is not a valid TWB file or does not contain TWB XML content, or the "filename" parameter doesn't end with ".twb". | |
| 406 | 406000 | No acceptable response | This method can only return a JSON response. Use the Accept: application/json header. |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |
| api-version | The version of the API to use, such as 3.29. For more information, see REST API and Resource Versions. |
| site-id | The ID of the site. |
| HTTP status | error Code | Condition | Details |
|---|---|---|---|
| 400 | Missing required parameter | The required tableau_workbook parameter isn't present in the request. | |
| 400 | Invalid file type or content | The file is not a valid TWB file or does not contain TWB XML content, or the "filename" parameter doesn't end with ".twb". | |
| 406 | 406000 | No acceptable response | This method can only return a JSON response. Use the Accept: application/json header. |
| 422 | Unprocessable entity | The TWB validation task completed, but detected errors. See the response body for detailed validation information. |