Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
ViralGajjar2904
Frequent Visitor

Getting Delay for Update Parameter & refresh API while embedding report in Webpage

Hi All,

I had created a report & embed same in client's webpage successfully. I am using query parameter to dynanically update baseurl based on client's interaction. when client access particular report then update parameter & Refresh dataset API Call but it takes approx 1 min to  complete refresh cycle & load into webpage.

 

My issue is during this time client is able to see previous client's data due to baseurl taking time to dynamically change when API call.

I reseached on internet & found that post purchasing PowerBI Embed Capacity( A SKU) above problem will be solve but I am not sure about this.

 

Anybody have idea how to solve above issue...?

1 ACCEPTED SOLUTION
hackcrr
Super User
Super User

Hi, @ViralGajjar2904 

If your dataset supports it, configure incremental refresh in Power BI. By updating only the data that has changed, you can reduce the time required to refresh the data. Make sure your data model is optimized for performance. This includes reducing dataset size, using efficient DAX queries, and removing unnecessary columns and rows.
Purchasing Power BI Embedded Capacity (A SKU) can significantly improve performance. This dedicated capacity ensures your reports have more resources and less contention with other tenants, resulting in faster data refreshes and parameter updates. Further improve performance with the dedicated capacity of caching that comes with the Power BI service.
Optimize API calls to reduce latency. This might include batching requests where possible and ensuring API calls don't block.
Leverage asynchronous operations to avoid blocking your application's main thread while waiting for an API response.

async function refreshReport() {
    await updateParameters();
    await refreshDataset();
    // Update UI or handle data post-refresh
}

Implementing load indicators:

<!-- Example HTML for loading indicator -->
<div id="loadingIndicator" style="display: none;">
    Loading, please wait...
</div>
// Example JavaScript to show/hide loading indicator(JS)
function showLoadingIndicator() {
    document.getElementById('loadingIndicator').style.display = 'block';
}

function hideLoadingIndicator() {
    document.getElementById('loadingIndicator').style.display = 'none';
}

async function updateAndRefresh() {
    showLoadingIndicator();
    await refreshReport();
    hideLoadingIndicator();
}

 

If this post helps, then please consider Accept it as the solution and kudos to this post to help the other members find it more quickly

View solution in original post

1 REPLY 1
hackcrr
Super User
Super User

Hi, @ViralGajjar2904 

If your dataset supports it, configure incremental refresh in Power BI. By updating only the data that has changed, you can reduce the time required to refresh the data. Make sure your data model is optimized for performance. This includes reducing dataset size, using efficient DAX queries, and removing unnecessary columns and rows.
Purchasing Power BI Embedded Capacity (A SKU) can significantly improve performance. This dedicated capacity ensures your reports have more resources and less contention with other tenants, resulting in faster data refreshes and parameter updates. Further improve performance with the dedicated capacity of caching that comes with the Power BI service.
Optimize API calls to reduce latency. This might include batching requests where possible and ensuring API calls don't block.
Leverage asynchronous operations to avoid blocking your application's main thread while waiting for an API response.

async function refreshReport() {
    await updateParameters();
    await refreshDataset();
    // Update UI or handle data post-refresh
}

Implementing load indicators:

<!-- Example HTML for loading indicator -->
<div id="loadingIndicator" style="display: none;">
    Loading, please wait...
</div>
// Example JavaScript to show/hide loading indicator(JS)
function showLoadingIndicator() {
    document.getElementById('loadingIndicator').style.display = 'block';
}

function hideLoadingIndicator() {
    document.getElementById('loadingIndicator').style.display = 'none';
}

async function updateAndRefresh() {
    showLoadingIndicator();
    await refreshReport();
    hideLoadingIndicator();
}

 

If this post helps, then please consider Accept it as the solution and kudos to this post to help the other members find it more quickly

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors