How to Pull Data from Microsoft Dynamics 365 into Power BI Reports

By Cody Marshall | July 18, 2017

I am in a unique scenario, as I am both a Microsoft Partner that sells and services Dynamics products, and also a customer that uses Microsoft Dynamics business solutions to run our practice. When Microsoft released Project Service Automation (PSA) as part of the Dynamics 365 suite, I jumped right in to deploy it for our internal scheduling tool. I'm happy to say we got that up and running and it's paying big dividends for us already.

Now that I have a centralized scheduling tool across all of our delivery teams, I'm taking steps to incorporate that very valuable data into the existing reports and scorecards we are using to manage the business today, using Power BI. In this post, I'll share how to pull Microsoft Dynamics 365 Data into your Power BI Reports. Specifically, I want to share two simple but valuable tips I learned in the first couple of hours of working on this.

  • Hooking up PSA to Power BI via the Web API
  • Using Power BI as a tool to investigate the PSA data structure

First, to pull the data into Power BI, open the Power BI Desktop > Get Data > More…

Set up for Power BI and Dynamics 365

Select Online Services > Dynamics 365 (online)

Select online Services - Dynamics 365 online

You will be prompted for the Web API URL

Prompt for Web API URL

To find the correct URL for your instance, log into Dynamics 365 > Settings > Customizations > Developer Resources

Find the correct URL under Developer Resources in Dynamics 365

Copy and paste that back into the Power BI prompt and click OK. It will take a few minutes, and eventually the Navigator will populate with a list of data tables you now have access to from within Power BI. The navigator also provides a preview of that data, which assists with quickly identifying potential data sources for the report you are building:

Navigator - bookableresourcebookings

In my scenario, I was able to quickly identify a few tables that I knew contained the data I needed. There were, of course, some data elements that I could not easily identify since I am not familiar with the data structure. So, I opted to select every table that was named in a way that I thought might be useful, and Loaded them in:

Identify and select tables to load into Power BI

This operation takes a bit, so now's a good time to get a cup of coffee:

Loading tables for Power BI setup

Once completed, the tables are now usable from within Power BI. In my case, I wanted to do some investigation on the tables, and I found that Power BI creates a nice relationship map of all of the tables that I loaded in, which was extremely helpful for me in identifying which tables had what I needed, and how to connect the dots when I need to do lookups or make other joins. Here's a screenshot of that visual tool:

Relationship map of tables in Power BI

The tables themselves can be moved around so that you can organize and dig deeper into the relationships. If you click on a connection line, it highlights the fields that join the two tables:

Highlighted fields that join tables in Power BI

I've now started using Power BI just for this metadata analysis tool for other reporting areas that I've been pondering out of our Dynamics 365 for sales (CRM) system. I hope you find it useful as well.

If you're interested in learning more or want Power BI training for your team, check out our two-day Power BI Workshop, which can be customized for your company.


Under the terms of this license, you are authorized to share and redistribute the content across various mediums, subject to adherence to the specified conditions: you must provide proper attribution to Stoneridge as the original creator in a manner that does not imply their endorsement of your use, the material is to be utilized solely for non-commercial purposes, and alterations, modifications, or derivative works based on the original material are strictly prohibited.

Responsibility rests with the licensee to ensure that their use of the material does not violate any other rights.

Start the Conversation

It’s our mission to help clients win. We’d love to talk to you about the right business solutions to help you achieve your goals.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!