Accessing the Power BI API from Power BI - Access token expires - powerbi

I am looking to retrieve object information in our PBI tenant by querying the Power BI API. I am following the example shown here:
I can get this to work in the Power BI Desktop. However, I want to build some dashboards from this data and the access token expires every 30 minutes (not sure the exact time) or so. Therefore, when I publish my report to our PBI service and attempt to refresh an hour or so later, it will fail because the access token has expired.
Has anyone attempted to do this? If so, how did you handle the access token expiring. Is there a different approach?
BTW, I did try using the Power BI API connector on GitHub. While this works in the Desktop, it does not work in the PBI service.

Related

Trying to change the organization in Adobe Analytics Connector for Power BI

I'm using Power BI for Desktop, trying to learn how to connect it with Adobe Analytics. So far it seems I can only connect to Adobe Analytics through the connector that Power BI has.
Screenshot of said connector
However, the first time I logged in, I chose a sandbox organization.
Now all my subsequent connections automatically default to that org. Even after I clear the Power BI permissions.
Is there any way to change the organization?

Can PowerBI service API return paginated reports similar to SSRS Report Server with a single license on an Azure App registration?

I haven't worked with Power BI's paginated reports but I'm trying to migrate from SQL Server to Azure SQL. Getting Power BI per-user licenses just for users to be able to generate a report PDF is prohibitively expensive for us.
Is it possible to use Power BI service API in a similar way to SSRS Report Server where you just make a request to generate the report and return the result?
We don't need to embed the paginated reports... just call the service API with the specified params and return the generated report (like SSRS Report Server).
Really hoping to use a single Premium license for the Azure Active Directory App Service registration to avoid needing to have a per-user license for every user that just needs to click a button and generate an invoice.
Essentially this, but with Power BI Paginated Reports: https://learn.microsoft.com/en-us/sql/reporting-services/export-a-report-using-url-access?view=sql-server-ver16
I'm asking just to see if I'm wasting my time by digging further into this. Thanks in advance!

How to call the Power BI Activity Log API

I would like to call the Power BI Activity Log API with data factory each day to download the activity events into a blob store. I thought I'd use a Copy data activity with an HTTP dataset as source to call the REST API. How do I authenticate in the HTTP dataset's linked service? Do I need to register an Azure AD application with Power BI admin rights and refer to it in some way in the linked service?
Maybe you can have a look at Service Principals, it can help you to easily authenticate and access Power BI admin read-only APIs (ActivityEvents API included) without tying you to a particular user account. Its in preview feature as of today, but should be soon out of preview.
Also, for automating the fetching of logs using Azure Data Factory and ingesting it in Azure Blob, you may have a look at this great article which explains in detail, all the steps that will be required to create the pipeline. Should be helpful!

How to get power bi dashboard in our own application?

I am new to power bi. I have power bi account there I created some dashboards with some reports, now I want to consume those dashboard and report using power bi rest API (https://learn.microsoft.com/en-us/rest/api/power-bi/)in our own application. Our application we used the .net core for back-end and angular 6 for the front end. We need to call power bi API from the .net core. If I change report in power it should also reflect in our application. I am new so I am not understanding from where to start?
Start by reading these:
Embedding with Power BI
Tutorial: Embed a Power BI report, dashboard, or tile into an application for your customers
Microsoft Power BI Embedded Playground
In essence, you need to authenticate using Azure Active Directory Authentication Libraries (ADAL), obtain the embedUrl of the dashboard, it's id and the id of the group in which it is. It will be loaded in a div section of a html file using the embedded client. For more details look at the official samples. App Owns Data means that for authenticating you are using one account, which your application knows (e.g. user name and password stored in the configuration), while User Owns Data means that each user uses his own Power BI credentials to access the embedded elements.

Power BI embedded - Publishing to Azure Workspace - Issue

As said in many reference link, in case of embedding the power bi to a application where we are going to build a secure website, we need to embed the Power BI report by publishing the power bi report to Azure Workspace right.
In that case , for registering the power bi report in Azure AD we followed the steps specified in the below link
https://azure.microsoft.com/en-in/documentation/articles/power-bi-embedded-iframe/
While trying to import the .pbix file using REST API by using the POST request to api.powerbi.com, we were receiving 403 error. Hence we were not able to proceed further with the registeration/upload of PBIX file using Import API.
Also, for standalone or anonymous public embedding website we can go with Power BI Publish to Web option, using this we can get the embed code for the power bi report, which can be embedded into the web page. In case of standalone reports we can use this option to embed the power bi report on to our application, but since in our requirement we need to filter the data based on the user selection on the custom web page, we have to go with option 1 i.e. with publishing the report to AAD (Azure AD). Since we are facing authentication issue, we are unable to proceed with the process further.
Once the report is being publish we havethought of using either Power BI JavaScript or Angular JS API to pass the filter data from custom filter pane to the power BI as shown in the demo site.