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!
Scott A commented
We need to be able to automate report creation. Make this happen! :)
Robert Erickson commented
We can surely benefit from this request
This would be an amazing feature for partners and users alike. I'd be cool if it was the ability to import templates into the same pbix file, or actual pbix files.
Imke Feldmann commented
Can only support this. It would help in so many ways.
Ravikumar V commented
Please do it as soon as possible. It will help in lot of migration automation to Power BI from various tools.
Steve Powel commented
Being able to unravel the meta data and data sources used in a PBIX so it can be promoted to a "supported dataset" would be really useful
Ravi Kumar V commented
Please release as soon as possible! Thank you!
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.