Ask AI

Sigma (dagster-sigma)

Dagster allows you to represent the workbooks and datasets in your Sigma project as assets alongside other technologies including dbt and Sling. This allows you to visualize relationships between your Sigma assets and their dependencies.

Related documentation pages: Using Dagster with Sigma.

Sigma API

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

Assets (Sigma API)

class dagster_sigma.SigmaOrganization(*, base_url, client_id, client_secret, warn_on_lineage_fetch_error=False)[source]

Represents a workspace in Sigma and provides utilities to interact with the Sigma API.

build_defs(dagster_sigma_translator=<class 'dagster_sigma.translator.DagsterSigmaTranslator'>, sigma_filter=None, fetch_column_data=True)[source]

deprecated This API will be removed in version 1.9.0.

Use dagster_sigma.load_sigma_asset_specs instead.

Returns a Definitions object representing the Sigma content in the organization.

Parameters:

dagster_sigma_translator (Type[DagsterSigmaTranslator]) – The translator to use to convert Sigma content into AssetSpecs. Defaults to DagsterSigmaTranslator.

Returns:

The set of assets representing the Sigma content in the organization.

Return type:

Definitions

class dagster_sigma.SigmaBaseUrl(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Enumeration of Sigma API base URLs for different cloud providers.

https://help.sigmacomputing.com/reference/get-started-sigma-api#identify-your-api-request-url

class dagster_sigma.DagsterSigmaTranslator(context)[source]

Translator class which converts raw response data from the Sigma API into AssetSpecs. Subclass this class to provide custom translation logic.

class dagster_sigma.SigmaDataset(*args, **kwargs)[source]

Represents a Sigma dataset, a centralized data definition which can contain aggregations or other manipulations.

https://help.sigmacomputing.com/docs/datasets

class dagster_sigma.SigmaWorkbook(*args, **kwargs)[source]

Represents a Sigma workbook, a collection of visualizations and queries for data exploration and analysis.

https://help.sigmacomputing.com/docs/workbooks

class dagster_sigma.SigmaFilter(workbook_folders=None, include_unused_datasets=True)[source]

Filters the set of Sigma objects to fetch.

Parameters:
  • workbook_folders (Optional[Sequence[Sequence[str]]]) – A list of folder paths to fetch workbooks from. Each folder path is a list of folder names, starting from the root folder. All workbooks contained in the specified folders will be fetched. If not provided, all workbooks will be fetched.

  • include_unused_datasets (bool) – Whether to include datasets that are not used in any workbooks. Defaults to True.

dagster_sigma.load_sigma_asset_specs(organization, dagster_sigma_translator=<class 'dagster_sigma.translator.DagsterSigmaTranslator'>, sigma_filter=None, fetch_column_data=True, snapshot_path=None)[source]

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

Returns a list of AssetSpecs representing the Sigma content in the organization.

Parameters:
  • organization (SigmaOrganization) – The Sigma organization to fetch assets from.

  • dagster_sigma_translator (Callable[[SigmaOrganizationData], DagsterSigmaTranslator]) – The translator to use to convert Sigma content into AssetSpecs. Defaults to DagsterSigmaTranslator.

  • sigma_filter (Optional[SigmaFilter]) – Filters the set of Sigma objects to fetch.

  • fetch_column_data (bool) – Whether to fetch column data for datasets, which can be slow.

  • snapshot_path (Optional[Union[str, Path]]) – Path to a snapshot file to load Sigma data from, rather than fetching it from the Sigma API.

Returns:

The set of assets representing the Sigma content in the organization.

Return type:

List[AssetSpec]