Microsoft Power BI Dashboards API
The Dashboards API from Microsoft Power BI — 2 operation(s) for dashboards.
The Dashboards API from Microsoft Power BI — 2 operation(s) for dashboards.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/microsoft-power-bi-dashboards-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Power BI REST Dashboards API
description: The Power BI REST API provides service endpoints for embedding, administration, governance, and user resources. It enables programmatic access to Power BI content including datasets, reports, dashboards, and workspaces (groups). The API uses Azure Active Directory (OAuth 2.0) for authentication and authorization.
version: '1.0'
contact:
name: Microsoft Power BI Support
url: https://powerbi.microsoft.com/en-us/support/
termsOfService: https://powerbi.microsoft.com/en-us/api-terms/
license:
name: Microsoft API License
url: https://powerbi.microsoft.com/en-us/terms-of-service/
servers:
- url: https://api.powerbi.com/v1.0/myorg
description: Power BI REST API - User context
security:
- bearerAuth: []
tags:
- name: Dashboards
description: Manage dashboards including listing, creating, and retrieving tiles. Dashboards are single-page canvases with pinned visualizations.
paths:
/dashboards:
get:
operationId: getDashboards
summary: Power Bi List Dashboards
description: Returns a list of dashboards from the user's My Workspace. Each dashboard includes its name, web URL, embed URL, and whether it is read-only.
tags:
- Dashboards
responses:
'200':
description: List of dashboards
content:
application/json:
schema:
$ref: '#/components/schemas/DashboardList'
examples:
Getdashboards200Example:
summary: Default getDashboards 200 response
x-microcks-default: true
value:
value:
- id: abc123
displayName: example_value
isReadOnly: true
webUrl: https://www.example.com
embedUrl: https://www.example.com
dataClassification: example_value
'@odata.context': example_value
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Getdashboards401Example:
summary: Default getDashboards 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: createDashboard
summary: Power Bi Create a Dashboard
description: Creates a new empty dashboard in the user's My Workspace. After creating the dashboard, use tile pinning to add content.
tags:
- Dashboards
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDashboardRequest'
examples:
CreatedashboardRequestExample:
summary: Default createDashboard request
x-microcks-default: true
value:
name: Example Title
responses:
'201':
description: Dashboard created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Dashboard'
examples:
Createdashboard201Example:
summary: Default createDashboard 201 response
x-microcks-default: true
value:
id: abc123
displayName: example_value
isReadOnly: true
webUrl: https://www.example.com
embedUrl: https://www.example.com
dataClassification: example_value
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Createdashboard401Example:
summary: Default createDashboard 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/dashboards/{dashboardId}:
get:
operationId: getDashboard
summary: Power Bi Get a Dashboard
description: Returns the specified dashboard from the user's My Workspace, including its name, embed URL, and configuration.
tags:
- Dashboards
parameters:
- $ref: '#/components/parameters/dashboardId'
responses:
'200':
description: Dashboard details
content:
application/json:
schema:
$ref: '#/components/schemas/Dashboard'
examples:
Getdashboard200Example:
summary: Default getDashboard 200 response
x-microcks-default: true
value:
id: abc123
displayName: example_value
isReadOnly: true
webUrl: https://www.example.com
embedUrl: https://www.example.com
dataClassification: example_value
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Getdashboard401Example:
summary: Default getDashboard 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
'404':
description: Dashboard not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Getdashboard404Example:
summary: Default getDashboard 404 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/dashboards/{dashboardId}/tiles:
get:
operationId: getTiles
summary: Power Bi Get Dashboard Tiles
description: Returns a list of tiles within the specified dashboard. Each tile represents a pinned visualization and includes its embed URL, report and dataset references, and configuration.
tags:
- Dashboards
parameters:
- $ref: '#/components/parameters/dashboardId'
responses:
'200':
description: List of tiles
content:
application/json:
schema:
$ref: '#/components/schemas/TileList'
examples:
Gettiles200Example:
summary: Default getTiles 200 response
x-microcks-default: true
value:
value:
- id: abc123
title: Example Title
subTitle: example_value
embedUrl: https://www.example.com
embedData: example_value
reportId: '500123'
datasetId: '500123'
rowSpan: 10
colSpan: 10
'@odata.context': example_value
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Gettiles401Example:
summary: Default getTiles 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
'404':
description: Dashboard not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Gettiles404Example:
summary: Default getTiles 404 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/dashboards/{dashboardId}/tiles/{tileId}:
get:
operationId: getTile
summary: Power Bi Get a Dashboard Tile
description: Returns the specified tile from the specified dashboard, including its embed URL and configuration details.
tags:
- Dashboards
parameters:
- $ref: '#/components/parameters/dashboardId'
- $ref: '#/components/parameters/tileId'
responses:
'200':
description: Tile details
content:
application/json:
schema:
$ref: '#/components/schemas/Tile'
examples:
Gettile200Example:
summary: Default getTile 200 response
x-microcks-default: true
value:
id: abc123
title: Example Title
subTitle: example_value
embedUrl: https://www.example.com
embedData: example_value
reportId: '500123'
datasetId: '500123'
rowSpan: 10
colSpan: 10
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Gettile401Example:
summary: Default getTile 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
'404':
description: Tile not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Gettile404Example:
summary: Default getTile 404 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/groups/{groupId}/dashboards:
get:
operationId: getDashboardsInGroup
summary: Power Bi List Dashboards in a Workspace
description: Returns a list of dashboards from the specified workspace.
tags:
- Dashboards
parameters:
- $ref: '#/components/parameters/groupId'
responses:
'200':
description: List of dashboards in the workspace
content:
application/json:
schema:
$ref: '#/components/schemas/DashboardList'
examples:
Getdashboardsingroup200Example:
summary: Default getDashboardsInGroup 200 response
x-microcks-default: true
value:
value:
- id: abc123
displayName: example_value
isReadOnly: true
webUrl: https://www.example.com
embedUrl: https://www.example.com
dataClassification: example_value
'@odata.context': example_value
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Getdashboardsingroup401Example:
summary: Default getDashboardsInGroup 401 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
'404':
description: Workspace not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
Getdashboardsingroup404Example:
summary: Default getDashboardsInGroup 404 response
x-microcks-default: true
value:
error:
code: example_value
message: example_value
details:
- message: example_value
target: example_value
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
parameters:
tileId:
name: tileId
in: path
required: true
description: The unique identifier of the tile
schema:
type: string
format: uuid
groupId:
name: groupId
in: path
required: true
description: The unique identifier of the workspace (group)
schema:
type: string
format: uuid
dashboardId:
name: dashboardId
in: path
required: true
description: The unique identifier of the dashboard
schema:
type: string
format: uuid
schemas:
ErrorResponse:
type: object
description: Error response from the Power BI REST API
properties:
error:
type: object
properties:
code:
type: string
description: Machine-readable error code
message:
type: string
description: Human-readable error message
details:
type: array
description: Additional error details
items:
type: object
properties:
message:
type: string
target:
type: string
example: example_value
TileList:
type: object
description: A list of dashboard tiles
properties:
value:
type: array
items:
$ref: '#/components/schemas/Tile'
example: []
'@odata.context':
type: string
example: example_value
CreateDashboardRequest:
type: object
required:
- name
description: Request body for creating a dashboard
properties:
name:
type: string
description: The display name of the new dashboard
example: Example Title
DashboardList:
type: object
description: A list of Power BI dashboards
properties:
value:
type: array
items:
$ref: '#/components/schemas/Dashboard'
example: []
'@odata.context':
type: string
example: example_value
Tile:
type: object
description: A tile on a Power BI dashboard
properties:
id:
type: string
format: uuid
description: The unique identifier of the tile
example: abc123
title:
type: string
description: The display title of the tile
example: Example Title
subTitle:
type: string
description: The subtitle of the tile
example: example_value
embedUrl:
type: string
format: uri
description: The embed URL for the tile
example: https://www.example.com
embedData:
type: string
description: Additional embed data for the tile
example: example_value
reportId:
type: string
format: uuid
description: The ID of the report the tile is pinned from
example: '500123'
datasetId:
type: string
format: uuid
description: The ID of the dataset used by this tile
example: '500123'
rowSpan:
type: integer
description: The number of rows the tile spans
example: 10
colSpan:
type: integer
description: The number of columns the tile spans
example: 10
Dashboard:
type: object
description: A Power BI dashboard
properties:
id:
type: string
format: uuid
description: The unique identifier of the dashboard
example: abc123
displayName:
type: string
description: The display name of the dashboard
example: example_value
isReadOnly:
type: boolean
description: Whether the dashboard is read-only
example: true
webUrl:
type: string
format: uri
description: The web URL of the dashboard
example: https://www.example.com
embedUrl:
type: string
format: uri
description: The embed URL for embedding the dashboard
example: https://www.example.com
dataClassification:
type: string
description: The data classification label
example: example_value
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: Azure Active Directory OAuth 2.0 access token. Obtain a token by registering an Azure AD application and requesting the Power BI Service scope (https://analysis.windows.net/powerbi/api/.default).
externalDocs:
description: Power BI REST API Reference
url: https://learn.microsoft.com/en-us/rest/api/power-bi/