Skip to main content

Tableau (dagster-tableau)

Dagster allows you to represent your Tableau workspace as assets, alongside other your other technologies like dbt and Sling. This allows you to see how your Tableau assets are connected to your other data assets, and how changes to other data assets might impact your Tableau workspace.

Tableau API

Here, we provide interfaces to manage Tableau projects using the Tableau API.

Assets (Tableau API)

class dagster_tableau.TableauCloudWorkspace
experimental

This API may break in future versions, even between dot releases.

Represents a workspace in Tableau Cloud and provides utilities to interact with Tableau APIs.

class dagster_tableau.TableauServerWorkspace
experimental

This API may break in future versions, even between dot releases.

Represents a workspace in Tableau Server and provides utilities to interact with Tableau APIs.

class dagster_tableau.DagsterTableauTranslator

Translator class which converts raw response data from the Tableau API into AssetSpecs. Subclass this class to implement custom logic for each type of Tableau content.

dagster_tableau.load_tableau_asset_specs
experimental

This API may break in future versions, even between dot releases.

Returns a list of AssetSpecs representing the Tableau content in the workspace.

Parameters:

Returns: The set of assets representing the Tableau content in the workspace.Return type: List[AssetSpec]

dagster_tableau.build_tableau_materializable_assets_definition
experimental

This API may break in future versions, even between dot releases.

Returns the AssetsDefinition of the materializable assets in the Tableau workspace.

Parameters:

  • resource_key (str) – The resource key to use for the Tableau resource.

  • specs (Sequence[AssetSpecAssetSpec]) – The asset specs of the executable assets in the Tableau workspace.

  • refreshable_workbook_ids (Optional[Sequence[str]]) –

    A list of workbook IDs. The workbooks provided must have extracts as data sources and be refreshable in Tableau.

    When materializing your Tableau assets, the workbooks provided are refreshed, refreshing their sheets and dashboards before pulling their data in Dagster.

Returns: The AssetsDefinition of the executable assets in the Tableau workspace.Return type: AssetsDefinition

dagster_tableau.parse_tableau_external_and_materializable_asset_specs

Parses a list of Tableau AssetSpecs provided as input and return two lists of AssetSpecs, one for the Tableau external assets and another one for the Tableau materializable assets.

In Tableau, data sources are considered external assets, while sheets and dashboards are considered materializable assets.