The issue are you describing is an issue with Power BI Web and dynamic data sources and not something directly related to the API itself.
The Power BI Web service doesn't support refreshing dynamic data sources because of how the service handles Power Query data sources. Unlike Power BI Desktop, the Power BI Web service expects to be able to inspect the M code statically to determine what data sources are being accessed.
Because it relies on static analysis, If it finds a data source function using dynamic expressions it doesn't understand, it blocks the ability to refresh the dataset.
Power BI Desktop on the other hand prompts for credentials dynamically during evaluation. This means it can handle dynamic data sources which is why it only works via Desktop and not on the Web.
Some ideas on how to get around this are to re-design the implementation with Power BI so that it doesn't use dynamic data sources or by implementing a middle man that collects the data and stores it somewhere for Power BI to access and display.
If we identify something within our API that is blocking other implementations within Power BI then we will look at it and correct if we can.
If you wish to retain your current implementation using dynamic data sources then please feel free to vote for (or create) an idea about supporting the refresh of dynamic data sources in the Power BI service over on Microsoft's Power BI Ideas site.
The issue are you describing is an issue with Power BI Web and dynamic data sources and not something directly related to the API itself.
The Power BI Web service doesn't support refreshing dynamic data sources because of how the service handles Power Query data sources. Unlike Power BI Desktop, the Power BI Web service expects to be able to inspect the M code statically to determine what data sources are being accessed.
Because it relies on static analysis, If it finds a data source function using dynamic expressions it doesn't understand, it blocks the ability to refresh the dataset.
Power BI Desktop on the other hand prompts for credentials dynamically during evaluation. This means it can handle dynamic data sources which is why it only works via Desktop and not on the Web.
Some ideas on how to get around this are to re-design the implementation with Power BI so that it doesn't use dynamic data sources or by implementing a middle man that collects the data and stores it somewhere for Power BI to access and display.
If we identify something within our API that is blocking other implementations within Power BI then we will look at it and correct if we can.
If you wish to retain your current implementation using dynamic data sources then please feel free to vote for (or create) an idea about supporting the refresh of dynamic data sources in the Power BI service over on Microsoft's Power BI Ideas site.