Power BI

Usage Instructions

Connect a home-tenant organizational account through the Power BI Microsoft connection to list named workspaces, inspect reports and semantic models, execute DAX queries, request standard refreshes, and read refresh history. Microsoft Graph connections cannot substitute for this delegated OAuth connection. Self-hosted installations use the shared Microsoft app registration and register /api/auth/oauth2/callback/microsoft-powerbi as a Web redirect URI. Workspace listing supports a result limit, offset, and OData filter; reports and semantic models return flat lists. Read-only models may contain only their ID and name, and paginated reports may omit their semantic-model ID. Missing optional fields are null and do not establish permission or feature availability. Keep results small with summaries or TOPN: provider JSON reads are limited to 20 MiB, and workflow tool responses have a stricter 10 MiB inline budget. My Workspace, cross-tenant guest configuration, Credential Groups, service principals, impersonation, enhanced refresh, report exports, dashboards, and triggers are outside this version.

Actions

Power BI List Workspaces

List accessible Power BI workspaces with optional OData filtering and pagination.

Input

ParameterTypeRequiredDescription
topnumberNoMaximum number of workspaces to return
skipnumberNoNumber of workspaces to skip
filterstringNoOData filter, for example contains(name,'Sales')

Output

ParameterTypeDescription
workspacesarrayAccessible workspaces returned by this request
↳ idstringWorkspace ID
↳ namestringWorkspace name
workspaceCountnumberNumber of workspaces returned by this request

Power BI List Reports

List reports in a Power BI workspace, including paginated reports.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID

Output

ParameterTypeDescription
reportsarrayReports in the workspace
↳ idstringReport ID
↳ namestringReport name
reportCountnumberNumber of reports returned

Power BI Get Report

Get report metadata from a Power BI workspace.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID
reportIdstringYesPower BI report ID

Output

ParameterTypeDescription
reportobjectReport metadata; unavailable fields are null
↳ idstringReport ID
↳ namestringReport name

Power BI List Semantic Models

List semantic models in a Power BI workspace; available metadata depends on permissions.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID

Output

ParameterTypeDescription
datasetsarraySemantic models in the workspace
↳ idstringSemantic model ID
↳ namestringSemantic model name
datasetCountnumberNumber of semantic models returned

Power BI Get Semantic Model

Get semantic model metadata from a Power BI workspace.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID
datasetIdstringYesPower BI semantic model ID (dataset ID in the REST API)

Output

ParameterTypeDescription
datasetobjectSemantic model metadata; unavailable fields are null
↳ idstringSemantic model ID
↳ namestringSemantic model name

Power BI Execute DAX Query

Execute one DAX query returning one table. Requires workspace access, Read/Build permissions, and the tenant Execute Queries setting. Reported errors fail the action even with HTTP 200. Direct tool responses retain partial rows and typed errors; failed workflows expose only the standard error output. Sim limits workflow tool responses to 10 MiB; use summaries or TOPN for larger results.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID
datasetIdstringYesPower BI semantic model ID (dataset ID in the REST API)
querystringYesOne DAX query returning one table, for example EVALUATE TOPN(10, Sales). Power BI caps each query at 100,000 rows or 1,000,000 values, 15 MB of data, and 120 requests per minute per user. Sim applies a stricter 10 MiB workflow tool-response budget. Dynamic column names are preserved; successful queries expose the declared outputs. Connect the error port to handle the standard error when a query fails; failed workflow outputs omit partial rows, errors, and incomplete.
includeNullsbooleanNoInclude blank values in returned rows; defaults to true

Output

ParameterTypeDescription
rowsarrayReturned query rows, preserving provider column keys
rowCountnumberNumber of rows returned
errorsarrayErrors reported at response, query, or table scope
↳ scopestringError scope: response, query, or table
↳ detailsjsonDynamic nested provider error details, when supplied
incompletebooleanWhether the provider reported an embedded error; false does not guarantee an unlimited result
informationProtectionLabelobjectInformation protection label, when supplied

Power BI Refresh Semantic Model

Request a standard asynchronous semantic model refresh and return acceptance immediately. Acceptance does not mean completion; use Get Refresh History separately to inspect status. Shared capacity allows eight refresh requests per day, including scheduled refreshes.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID
datasetIdstringYesPower BI semantic model ID (dataset ID in the REST API)
notifyOptionstringNoNoNotification, MailOnFailure, or MailOnCompletion; defaults to NoNotification

Output

ParameterTypeDescription
acceptedbooleanWhether Power BI accepted the refresh request; does not indicate completion
requestIdstringProvider x-ms-request-id header, when supplied
locationstringProvider Location header, when supplied

Power BI Get Refresh History

Get recent semantic model refresh history; requires Write permission on the model. Unknown can mean a refresh is in progress or its completion state is unknown.

Input

ParameterTypeRequiredDescription
groupIdstringYesPower BI workspace ID
datasetIdstringYesPower BI semantic model ID (dataset ID in the REST API)
topnumberNoRequested number of entries; defaults to the last available 60

Output

ParameterTypeDescription
refreshesarrayRecent refresh entries returned by Power BI
↳ refreshAttemptsarrayRefresh attempts supplied by the provider
↳ attemptIdnumberRefresh attempt index
refreshCountnumberNumber of refresh entries returned

OAuth Scopes

Sim requests these scopes when someone connects a Power BI account. On a self-hosted deployment, register your own app with the provider using the settings below. See Integrations & OAuth for the full setup.

SettingValue
Redirect URI<NEXT_PUBLIC_APP_URL>/api/auth/oauth2/callback/microsoft-powerbi
Environment variablesMICROSOFT_CLIENT_ID, MICROSOFT_CLIENT_SECRET
ScopeDescription
https://analysis.windows.net/powerbi/api/Workspace.Read.AllView Power BI workspaces
https://analysis.windows.net/powerbi/api/Report.Read.AllView Power BI reports
https://analysis.windows.net/powerbi/api/Dataset.ReadWrite.AllRead, create, update, refresh, and delete Power BI semantic models within your account’s permissions
openidStandard authentication
profileAccess profile information
emailAccess email address
offline_accessAccess account when not using the application