All data sources

Power BI

OAuthpowerbi

Microsoft Power BI — ask questions of existing dashboards and build new ones. READ: listWorkspaces/Dashboards/Reports/Datasets, executeDaxQuery/runDax (DAX server-side aggregations), getDashboardTiles, refreshDataset. BUILD: createPushDataset + pushRowsToTable, createDashboard + cloneTile, uploadPbixOrTemplate + setDatasetParameters (highest-fidelity: real .pbit template). LIMITS: DAX caps 100k rows / 1M values per query — filter via TOPN/SUMMARIZECOLUMNS. Push datasets: 10k rows/request, 1M rows/hour per dataset. Works on Pro and Premium. Premium-only XMLA features TBD.

Provenance

PublisherPower BI

Freshness & coverage

FreshnessFreshness not declared
GeographicNot declared
TemporalNot declared
AuthenticationCredentials required (OAuth)

Methods (44)

  • listWorkspaces

    read

    List accessible workspaces. Returns id, name, isOnDedicatedCapacity (Premium), capacityId.

  • listDashboards

    read

    List dashboards. Pass workspaceId to scope to a workspace, or omit for "My Workspace".

  • getDashboardTiles

    read

    Get tiles pinned to a dashboard. Discovers source datasets/reports before DAX queries.

    Required paramsdashboardId
  • listReports

    read

    List reports. Pass workspaceId for a specific workspace, omit for "My Workspace".

  • getReportPages

    read

    List the pages of a report. Useful for embed-token generation and navigation.

    Required paramsreportId
  • listDatasets

    read

    List datasets. workspaceId scopes to workspace; omit for "My Workspace". Shows isRefreshable.

  • getDataset

    read

    Get details on a single dataset by id.

    Required paramsdatasetId
  • refreshDataset

    write

    Trigger async dataset refresh. Returns immediately; check via getDatasetRefreshHistory.

    Required paramsdatasetId
  • getDatasetRefreshHistory

    read

    Get the recent refresh history for a dataset, including status and timing.

    Required paramsdatasetId
  • executeDaxQuery

    read

    Run DAX queries against a dataset. Cap 100k rows/1M values — use TOPN/FILTER/SUMMARIZECOLUMNS.

    Required paramsdatasetIdqueries
  • runDax

    read

    Run a single DAX query, return rows of first result. Same caps as executeDaxQuery.

    Required paramsdatasetIdquery
  • getPowerBICapabilities

    read

    Whether user has Premium capacity access (cached 15 min). Build methods use internally.

  • createPushDataset

    write

    Create push dataset with schema. No measures/relationships — use uploadPbixOrTemplate.

    Required paramsspec

    columns[].dataType: string|Int64|Double|Boolean|DateTime|Decimal.

  • pushRowsToTable

    unknown

    Push rows into a table. Cap: 10k rows/request, 1M rows/hour per dataset. Batch larger loads.

    Required paramsdatasetIdtableNamerows
  • clearRowsInTable

    unknown

    Truncate all rows from a push-dataset table. Useful before a full refresh push.

    Required paramsdatasetIdtableName
  • updateTableSchema

    write

    Update a push-dataset table schema (add/rename columns). Existing rows are preserved if compatible.

    Required paramsdatasetIdtableNamecolumns
  • createDashboard

    write

    Create empty dashboard (returns id, embedUrl). Pin tiles via cloneTile or report visuals.

    Required paramsname
  • cloneTile

    unknown

    Clone tile across dashboards. Optional rebind to different report/dataset.

    Required paramssourceDashboardIdsourceTileIdtargetDashboardId
  • uploadPbixOrTemplate

    write

    Upload PBIX/PBIT as dataset+report. Highest-fidelity build path.

    Required paramsdisplayNamefileContent

    fileContent=base64. fileType "pbix"|"pbit". nameConflict: Abort|Overwrite.

  • getImportStatus

    write

    Check upload status from uploadPbixOrTemplate. importState="Succeeded" when ready.

    Required paramsimportId
  • setDatasetParameters

    write

    Update dataset parameter values. Call refreshDataset after to apply.

    Required paramsdatasetIdparameters
  • getDatasetParameters

    read

    Get current parameter values on a dataset. Use before setDatasetParameters.

    Required paramsdatasetId
  • generateReportEmbedToken

    unknown

    Embed token for a report. Combine with embedUrl. accessLevel View|Edit|Create.

    Required paramsreportId

    RLS via identities[]. TTL 60 min max.

  • generateDashboardEmbedToken

    unknown

    Embed token for a dashboard. Same options as generateReportEmbedToken.

    Required paramsdashboardId
  • generateTileEmbedToken

    unknown

    Embed token for a single dashboard tile (single chart vs whole dashboard).

    Required paramsdashboardIdtileId
  • getRefreshSchedule

    read

    Get the scheduled refresh configuration for a dataset (days, times, timezone, enabled flag).

    Required paramsdatasetId
  • updateRefreshSchedule

    write

    Update refresh schedule. enabled=false disables; days+times+localTimeZoneId enables.

    Required paramsdatasetIdschedule

    TZ: Windows ids. notifyOption: NoNotification|MailOnFailure|MailOnCompletion.

  • getDirectQueryRefreshSchedule

    read

    Get DirectQuery refresh schedule (Premium, separate from regular).

    Required paramsdatasetId
  • getDatasources

    read

    List dataset datasources + gateway binding. Required before bindToGateway/updateDatasource.

    Required paramsdatasetId
  • listGateways

    read

    List on-premises data gateways the user can use. Required before binding a dataset to a gateway.

  • discoverGateways

    read

    Find gateways with datasources matching the dataset. Pick gatewayObjectId for bindToGateway.

    Required paramsdatasetId
  • bindToGateway

    unknown

    Bind dataset to a gateway. Datasources must exist; call discoverGateways first.

    Required paramsdatasetIdgatewayObjectId
  • updateDatasource

    write

    Update dataset datasource connection strings via updateDetails entries.

    Required paramsdatasetIdupdateDetails
  • updateDatasourceCredentials

    write

    Rotate datasource credentials on a gateway without re-binding.

    Required paramsgatewayIddatasourceIdcredentialDetails
  • takeOverDataset

    unknown

    Claim dataset ownership. Required after imports/migrations before updating datasources.

    Required paramsdatasetId
  • createStreamingDataset

    write

    Create streaming dataset. mode: "Streaming" (live only) or "PushStreaming" (live + history).

    Required paramsspec
  • postRowsToStreamingTable

    write

    Push rows to streaming table. Goes to ring buffer for live tile rendering.

    Required paramsdatasetIdtableNamerows
  • deleteDataset

    write

    Delete a dataset. DESTRUCTIVE — removes tiles/reports built on it. Confirm first.

    Required paramsdatasetId
  • createWorkspace

    write

    Create a workspace (caller becomes Admin). workspaceV2:true = modern Premium-aware type.

    Required paramsname
  • updateWorkspace

    write

    Update workspace properties (rename, update description). Caller must be a workspace Admin.

    Required paramsworkspaceId
  • deleteWorkspace

    write

    Delete workspace. DESTRUCTIVE — removes all dashboards/reports/datasets. Admin only.

    Required paramsworkspaceId
  • listWorkspaceUsers

    read

    List members of a workspace and their access rights.

    Required paramsworkspaceId
  • addWorkspaceUser

    write

    Add user/group/SP to workspace.

    Required paramsworkspaceIdidentifiergroupUserAccessRight

    principalType: User|Group|App. access: Admin|Member|Contributor|Viewer.

  • removeWorkspaceUser

    write

    Remove user from workspace. userIdOrEmail = email (users) or objectId (groups/SPs).

    Required paramsworkspaceIduserIdOrEmail