Power BI Designer API
Power BI Designer saves a local PBIX file, which can be a file to export data and data model – in other words, it’s a format that contains a complete semantic model. All the applications that today export data in several formats (CSV, Excel, XML), might provide a richer semantic model exporting a PBIX file.
Many ISV/SI that have OLTP and other applications that stores data in some database, usually struggle to offer a compelling BI story to their customers. The smaller they are, the more they feel this pressure because probably the effort they can put in their custom software is minimal.
Today these ISV/SI integrate their solution with external vendor technologies (QlikView is a common choice here). However, the cost of such a solution for the end user is not always appealing, and for this reason the MS partner ecosystem always look for components (charts and pivot tables) to integrate in their solutions.
Providing them an easy and inexpensive way to produce PBIX files “ready to use” straight from their product/solution would provide several benefits:
- Customers would have something ready to be uploaded to Power BI service
- ISV/SI would be able to provide a BI solution integrated with MS ecosystem
- ISV/SI can implement solutions like “send a PBIX file via mail every week to all the agents including only the data of their prospects/customers” - Today they already do that using the .CUB format, which can be consumed by both Excel and custom applications
- Microsoft would increase the number of Power BI users very quickly - Small ISV/SI would be able to implement such integration very fast
What I propose to do is, in descending order of importance:
1) Support Power BI Designer as a local engine with an API that can be used by anyone and officially support local connections by other programs (starting from Excel)
- The API should provide the ability to create a data model and to populate it with data by just using API, without any manual interaction
- Providing the ability to connect from other clients (today it is possible but not officially supported) would increase the adoption.
2) Document and “open” the PBIX file, so that it can be generated by anyone
- I think that this is easy for the data model, but not for the data.
- But without the data, this model would be not so useful, requiring a manual refresh to be populated.
3) Open source the Power BI Designer
- Not really a priority in my opinion, but if the first two wouldn’t be possible, this one could be ok
Hi everyone. There are some really interesting ideas in this thread, thanks for your vocal support about it! We’ll consider it for the future along with other suggestions and plans. Thanks!
Dan Quigg commented
We are an ISV that syndicates billions of public data points that can be blended in any combination. So we have to have a "push" system that gets data into the PBIX format without a file based intermediary. This approach seems spot on to support that concept.
This will be very helpfull
I asked the similar 18 months ago, can I programmatically create a pbix and inject my own M script into it? This is probably a hack around.
Now I vote here. It would support the same purpose if there are APIs.
In my automation pipelines, I generate data in multiple stages, the paths/outcome will be very dynamic, a fixed power BI template won't work.
This will be a killer feature.
Will, you provided a "consider ir for the future" comment in April 2015 and we are now in January 2017. This facility is essential read fundamental for moving ISVs from Tableau and Qlik. It is the game changer as apps can be delivered by the ISV community which is where the market is going for BI
It doesn't look like this will happen so like Karish said below, why not open source the PBIX format.
Steven Wheeler commented
Great concept, but this (almost) Top 20 idea seems to have been Under Review for nearly 18 months. I appreciate it's a huge bucket of work with some hairy security issues, but the strategic value to enterprises, ISVs (and Microsoft?) must be huge for maintainability, portability, analysability etc. - e.g. check which .PBIXs and dashboards use which data sources/visualisations etc. (via Power BI?!), programatically update related .PBIXs to reflect a change in a master data source, basic source control, clone (common) best-practice visuals, etc etc.
Karish Gadol commented
We have a web app (runs on a Linux system) and we want to auto-generate a PBIX with a DirectQuery connection to a specific database. We do this with Tableau (auto-generate a TDS file) and with Qlik Sense (using the WebSocket API). It would be great if you could make PBIX an open format (some text format) or publish the binary spec.
This would be an awesome feature
Absolutely agree, We are ISV and We think that is necessary to do a API for PowerBI Desktop. And the first feature should be able to change the connection data to the data model.
Tom Strimple commented
We are a Microsoft partner that provides COTS software to government agencies. We would love the ability to have our setup application create/modify the "data model" and even the published reports/dashboards each time the software is updated.
Raymond Wong commented
There are a number of suggestion spread around related to Marco's idea. If the other suggestions are consolidated into this one, it will be over 2000 votes. PowerBI desktop becomes mostly a sink hole. Data can only be extracted manually (from reports) for further data processing. If PowerBI desktop has an IO api, PowerBI Desktop can become part of data processing providing data of different granularity and dimension. Instead of creating multiple PBIX files because of different granularity, I could create one PBIX, programmatically extract multiple data sets with different granularity, then feed each data set to PowerQuery for data enrichment or ETL. The current option is to create multiple PBIX file for different level of granularity from the same data sources or adopt a snowflake data model which is confusing to end user and difficult to maintain.
Yes, a game changer for supporting multiple customers. And as Marco Abergo commented, include the option to "change the data source connection with the API. Usually every ISV has a great number of customers and each of them as a specific istance of DB (ex. SQL Server)".
Julian Payne commented
This is a brilliant idea.
Marc Solomon commented
It's a "3 Vote" story for me. I would like to add more than just 3 of my votes to be honest! This feature is going to catapult Power BI Desktop onto millions of desktops as ISV's lead clients to adopt this amazing tool.
Note for admin's: I believe this is a duplicate backlog item with
Can you close and reassign votes here?
Yes. I'm a small business Microsoft Partner and my problems are perfectly described here: i cannot sell POWER BI SOLUTIONS because customers wants excel (for semplicity, usability and becouse they are used to) as frontend, they love Pivots, but i cannot use pbix as source or import the DATA MODEL and POWERQUERY queries .
PowerBi is very beautiful but for now is relegated for make impact presentation or dashboards. BI project are more of that.
Chris Moore commented
Yes. Yes. Yes. 1000x Yes. I'm really having a hard time wrapping my head around the fact that this has to even be a feature request. Having an SDK to manipulate the file format is such an obvious thing...
Swapnil Aswale commented
Would like to know if there is any update on above idea. Thanks.
Marco Abergo commented
I'm totally agree with this. What I want point out is to allow to change the data source connection with the API. Usually every ISV has a great number of customers and each of them as a specific istance of DB (ex. SQL Server)
You have my vote!