Power BI Dashboards API

Manage dashboards including listing, creating, and retrieving tiles. Dashboards are single-page canvases with pinned visualizations.

Business capability
Analytics & BI Management BC-610.50

Operations 6

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /dashboards List dashboards in My Workspace · Power Bi List Dashboards #
Ask an LLM
“What dashboards are in my personal My Workspace?”
“Which of my own dashboards are read-only?”
Tell an agent
List the dashboards in My Workspace.
Show me embed URLs for all dashboards in My Workspace.
POST /dashboards Create an empty dashboard · Power Bi Create a Dashboard #
Ask an LLM
“How do I create a new blank dashboard in My Workspace?”
“Can I make an empty dashboard and pin tiles to it later?”
Tell an agent
Create a dashboard named {name}.
Make a new empty dashboard called {name} in My Workspace.
GET /dashboards/{dashboardId} Get a dashboard's details · Power Bi Get a Dashboard #
Ask an LLM
“Where do I find the embed URL for one specific dashboard?”
“Can I look up a single dashboard's configuration by its ID?”
Tell an agent
Get dashboard {dashboardId}.
Show me the name and embed URL of dashboard {dashboardId}.
GET /dashboards/{dashboardId}/tiles List tiles on a dashboard · Power Bi Get Dashboard Tiles #
Ask an LLM
“Which visualizations are pinned to a given dashboard?”
“Can I see which reports and datasets a dashboard's tiles come from?”
Tell an agent
List the tiles on dashboard {dashboardId}.
Show every pinned tile on dashboard {dashboardId} with its source report.
GET /dashboards/{dashboardId}/tiles/{tileId} Get one dashboard tile · Power Bi Get a Dashboard Tile #
Ask an LLM
“How do I get the embed URL for a single tile on a dashboard?”
“What configuration does one specific dashboard tile have?”
Tell an agent
Get tile {tileId} from dashboard {dashboardId}.
Show the embed URL of tile {tileId} on dashboard {dashboardId}.
GET /groups/{groupId}/dashboards List dashboards in a workspace · Power Bi List Dashboards in a Workspace #
Ask an LLM
“Which dashboards live in a shared workspace rather than My Workspace?”
“Can I list the dashboards of one team workspace?”
Tell an agent
List the dashboards in workspace {groupId}.
Show all dashboards inside the {groupId} workspace.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/power-bi:power-bi-dashboards-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

power-bi-dashboards-api-openapi.yml Raw ↑
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:
  schemas:
    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
    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
    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
    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
    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
  parameters:
    dashboardId:
      name: dashboardId
      in: path
      required: true
      description: The unique identifier of the dashboard
      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
    tileId:
      name: tileId
      in: path
      required: true
      description: The unique identifier of the tile
      schema:
        type: string
        format: uuid
  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/