Airflow Summit 2025 is coming October 07-09. Register now for early bird ticket!

airflow.providers.microsoft.azure.operators.powerbi

Classes

PowerBILink

Construct a link to monitor a dataset in Power BI.

PowerBIDatasetRefreshOperator

Refreshes a Power BI dataset.

PowerBIWorkspaceListOperator

Gets a list of workspaces where the service principal from the connection is assigned as admin.

PowerBIDatasetListOperator

Gets a list of datasets where the service principal from the connection is assigned as admin.

Module Contents

Bases: airflow.sdk.BaseOperatorLink

Construct a link to monitor a dataset in Power BI.

name = 'Monitor PowerBI Dataset'[source]

Name of the link. This will be the button name on the task UI.

Link to external system.

Parameters:
Returns:

link to external system

class airflow.providers.microsoft.azure.operators.powerbi.PowerBIDatasetRefreshOperator(*, dataset_id, group_id, conn_id=PowerBIHook.default_conn_name, timeout=60 * 60 * 24 * 7, proxies=None, api_version=None, check_interval=60, **kwargs)[source]

Bases: airflow.models.BaseOperator

Refreshes a Power BI dataset.

See also

For more information on how to use this operator, take a look at the guide: PowerBIDatasetRefreshOperator

Parameters:
  • dataset_id (str) – The dataset id.

  • group_id (str) – The workspace id.

  • conn_id (str) – Airflow Connection ID that contains the connection information for the Power BI account used for authentication.

  • timeout (float) – Time in seconds to wait for a dataset to reach a terminal status for asynchronous waits. Used only if wait_for_termination is True.

  • check_interval (int) – Number of seconds to wait before rechecking the refresh status.

template_fields: collections.abc.Sequence[str] = ('dataset_id', 'group_id')[source]
template_fields_renderers[source]
hook[source]
dataset_id[source]
group_id[source]
wait_for_termination = True[source]
conn_id = 'powerbi_default'[source]
timeout = 604800[source]
check_interval = 60[source]
property proxies: dict | None[source]
property api_version: str | None[source]
execute(context)[source]

Refresh the Power BI Dataset.

get_refresh_status(context, event=None)[source]

Push the refresh Id to XCom then runs the Trigger to wait for refresh completion.

execute_complete(context, event)[source]

Return immediately - callback for when the trigger fires.

Relies on trigger to throw an exception, otherwise it assumes execution was successful.

class airflow.providers.microsoft.azure.operators.powerbi.PowerBIWorkspaceListOperator(*, conn_id=PowerBIHook.default_conn_name, timeout=60 * 60 * 24 * 7, proxies=None, api_version=None, **kwargs)[source]

Bases: airflow.models.BaseOperator

Gets a list of workspaces where the service principal from the connection is assigned as admin.

See also

For more information on how to use this operator, take a look at the guide: PowerBIWorkspaceListOperator

Parameters:
  • conn_id (str) – The connection Id to connect to PowerBI.

  • timeout (float) – The HTTP timeout being used by the KiotaRequestAdapter. Default is 1 week (60s * 60m * 24h * 7d). When no timeout is specified or set to None then there is no HTTP timeout on each request.

  • proxies (dict | None) – A dict defining the HTTP proxies to be used (default is None).

  • api_version (msgraph_core.APIVersion | str | None) – The API version of the Microsoft Graph API to be used (default is v1). You can pass an enum named APIVersion which has 2 possible members v1 and beta, or you can pass a string as v1.0 or beta.

hook[source]
conn_id = 'powerbi_default'[source]
timeout = 604800[source]
property proxies: dict | None[source]
property api_version: str | None[source]
execute(context)[source]

List visible PowerBI Workspaces.

execute_complete(context, event)[source]

Return immediately - callback for when the trigger fires.

Relies on trigger to throw an exception, otherwise it assumes execution was successful.

class airflow.providers.microsoft.azure.operators.powerbi.PowerBIDatasetListOperator(*, group_id, conn_id=PowerBIHook.default_conn_name, timeout=60 * 60 * 24 * 7, proxies=None, api_version=None, **kwargs)[source]

Bases: airflow.models.BaseOperator

Gets a list of datasets where the service principal from the connection is assigned as admin.

See also

For more information on how to use this operator, take a look at the guide: PowerBIDatasetListOperator

Parameters:
  • conn_id (str) – The connection Id to connect to PowerBI.

  • group_id (str) – The group Id to list discoverable datasets.

  • timeout (float) – The HTTP timeout being used by the KiotaRequestAdapter. Default is 1 week (60s * 60m * 24h * 7d). When no timeout is specified or set to None then there is no HTTP timeout on each request.

  • proxies (dict | None) – A dict defining the HTTP proxies to be used (default is None).

  • api_version (msgraph_core.APIVersion | str | None) – The API version of the Microsoft Graph API to be used (default is v1). You can pass an enum named APIVersion which has 2 possible members v1 and beta, or you can pass a string as v1.0 or beta.

hook[source]
conn_id = 'powerbi_default'[source]
group_id[source]
timeout = 604800[source]
property proxies: dict | None[source]
property api_version: str | None[source]
execute(context)[source]

List visible PowerBI datasets within group (Workspace).

execute_complete(context, event)[source]

Return immediately - callback for when the trigger fires.

Relies on trigger to throw an exception, otherwise it assumes execution was successful.

Was this entry helpful?