Connect Analytics with Power BI Data Connector

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

In this article, you learn how to establish a seamless connection between Power BI and Azure DevOps by using Data Connector. This integration allows you to extract valuable insights from your Azure DevOps data and create compelling reports within Power BI. Power BI Data Connector uses Analytics views.

Important

Analytics views only support Azure Boards data (work items). Analytics views don't support other data types, such as pipelines. Views provide a flat-list of work items and don't support work item hierarchies. At this point, we have no plans to update the connector to support other types of data. For information on other approaches, read the Power BI integration overview.

Prerequisites

Important

Azure DevOps no longer supports Alternate Credentials authentication since the beginning of March 2, 2020. If you're still using Alternate Credentials, we strongly encourage you to switch to a more secure authentication method (for example, personal access tokens). Learn more.

Connect to an Analytics view

  1. Open Power BI Desktop.

  2. Sign in to the service. Upon first-time access, you're required to sign in and have your credentials authenticated. Choose between Windows or Personal Access Token to authenticate. Power BI Desktop saves your credentials so you only have to do so once.

  3. Select Connect upon verification of your credentials.

    Screenshot that shows the Power BI Connection dialog.

  4. Select Get Data > Online Services, Azure DevOps (Boards only) for cloud services or select Azure DevOps Server (Boards only) for on-premises. Then select Connect. Analytics views only support queries against work items and test cases.

    Screenshot that shows the Get Data flow.

  5. Specify the basic parameters to connect to your data.

    Screenshot that shows specifying the organization and project name.

    Screenshot that shows specifying the organization and project name, on-premises version.

    • Collection URL: Enter the URL where your Azure DevOps Server instance is hosted. For example, an example URL is http://fabrikam-server/AzureDevOpsServer/fabrikam-collection.
    • Team project: Enter only the project name. For example, use Fabrikam-Fiber if the URL of your Azure DevOps Server instance is http://fabrikam-server/AzureDevOpsServer/fabrikam-collection/Fabrikam-Fiber.

    Important

    Don't confuse the team name with the project name, which is a common mistake. For example, if the URL that you use is http://fabrikam-server/AzureDevOpsServer/fabrikam-collection/Fabrikam-Fiber-Git/Device, then Fabrikam-Fiber-Git is the project name and Device is the team name.

    After successful sign-in, Power BI verifies if your user credentials have permissions to access the specified project. If any errors arise, see the Q&A section for answers to the most common problems.

Select the Analytics view

  1. Expand the Shared Views folder, select an Analytics view, and then select Load. The Data Connector presents a list of available Analytics views. Each view represents a set of data that you can pull into Power BI. You can also create custom Analytics views.

    The following image shows the default Analytics views. Your list of views might differ based on the process model used to create your project. All views listed, except the views appended with "Today," provide historical trend data.

    Here you select Stories - Last 30 days, which filters for product backlog items.

    Screenshot that shows the Navigator dialog with the Choose an Analytics view.

    Note

    Because you verified the view in the previous section, the view should load. If the view doesn't load, it's most likely because the dataset is too large. Return to the view under the Analytics view in the web portal and adjust the filters to decrease the size of the dataset.

  2. Select the view.

    Screenshot that shows the Navigator dialog with default views.

    Note

    The preview shown for any selected views in the navigator can be truncated depending on the number of fields selected and the size of the dataset. The data is truncated only for the preview and won't affect the full data refresh.

    • Select the Work Items - Today table and wait for the preview to load. It represents the current state of all work items in the project.
    • Select the checkbox next to the Work Items - Today table and select Load.

    Note

    Analytics views don't apply filters defined by using Power BI on the server. Any filters applied in Power BI limit the data shown to end users but don't reduce the amount of data retrieved from Analytics. If the filter is intended to reduce the size of the dataset, apply it by customizing the view.

  3. Wait for the data to load. You can observe its progress by looking at the status messages, which appear directly under the table name. If you see any errors, see the Q&A section for answers to the most common problems.

    Screenshot that shows the Apply query changes loading dialog.

  4. Review the Data model. While the model loads, review the dataset design for the Power BI Data Connector.

Create your report

Create reports based on the loaded data. After the load operation finishes, you can explore the data by creating custom reports. For examples of common reports, see Data Connector - Example reports.

Screenshot that shows the Power BI Desktop report view.

Q&A

Find answers to common questions about Power BI Data Connector and Analytics error messages.

Q: How should I read error messages coming from the connector?

A: You might feel challenged reading error messages coming from the connector because they typically contain extra contextual information. If the load operation fails, then the message starts with "Failed to save modifications to the server...". When you see it, search for [DataSource.Error] Azure DevOps...:. The following example shows the error message returned from the connector. The most important part of the error message is "Query result exceeds maximum size. Reduce the number of records by applying additional filters."

Screenshot that shows the Query result exceeds maximum size error message.

Q: How do I resolve the "Query result exceeds maximum size. Reduce the number of records by applying additional filters" error?

A: You get the following error if the number of records retrieved from Analytics exceeds 250,000:

"Failed to save modifications to the server. Error returned: 'OLE DB or ODBC error: [DataSource.Error] VSTS: Request failed: The remote server returned an error: (400) Bad Request. (Query result exceeds maximum size. Please reduce the number of records by applying additional filters).'"

This error typically occurs when your project has a large number of work items. Reduce the size of the dataset by customizing the view. Do this step before you use it in Power BI.

Screenshot that shows the Query result exceeds maximum size error.

Q: How do I resolve the "user wasn't authorized" error?

A: You might get this error if you try to access a project that you don't have permissions to. You might also see it if Power BI doesn't recognize your credentials. To check your permissions, see Set permissions to access Analytics and Analytics views. If it's a credential issue, work with your administrator to see if they can help resolve the problem. For more information, see Power BI security, user authentication and Troubleshooting sign-in issues for Power BI.

Screenshot that shows the access-denied error.

Note

Power BI uses Microsoft Entra ID to authenticate users who sign in to the Power BI service, and in turn, uses the Power BI sign-in credentials whenever a user attempts to access resources that require authentication. Users sign in to the Power BI service by using the email address used to establish their Power BI account. Power BI uses that sign-in email as the effective username, which is passed to resources whenever a user attempts to connect to data. The effective username is then mapped to a user principal name and resolved to the associated Windows domain account, against which authentication is applied.

Q: How do I resolve the "Access to the resource is forbidden" error?

A: You might get this error if you have access to a specific project but you don't have the View analytics permissions. Work with your project administrator to get these permissions. For more information about the security model, see Analytics security.

Screenshot that shows the error message Access to the resource is forbidden.

Q: How do I resolve the "Project 'X' does not exist or you do not have permissions to access it" error?

A: This error indicates that the value you entered for Project name doesn't correspond to any project. A common mistake that users make is to confuse the project name with a team name.

For example, if the URL you use is https://dev.azure.com/fabrikam-fiber-inc/Fabrikam-Fiber-Git/Device, then Fabrikam-Fiber-Git is the project name and it should be used in the parameter. Device is the team name.

Screenshot that shows the Project not found error.