Forum Discussion

pborah's avatar
pborah
Icon for Solution Sage rankSolution Sage
2 years ago
Solved

How to trigger report refresh based on new data in PowerBI Dataset?

I have an external analytics tool- KNIME writing a PowerBI dataset in service each time a workflow in KNIME completes. I want to know how to trigger automatic refresh for associated reports based on that dataset when new data becomes available?

  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi pborah ,

     

    You can implement this process in a script or program using your preferred programming language, such as Python, PowerShell, or Node.js, and then schedule it to run periodically using Windows Task Scheduler or any other scheduling tool.

     

    Best Regards,
    Adamk Kong

     

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

4 Replies

  • Hi pborah ,

     

    Power BI itself does not have a "trigger" for new data.  However, you could use a Power Automate flow to kick off the refresh when it finds new data in the other system.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi pborah ,

     

    Based on your description, I think there are two ways to try this:

    • If the data is updated regularly, you can configure a scheduled refresh in the Power BI service.
    • Power BI provides a REST API that can be called to programmatically trigger a dataset refresh.

    For more details, you can read below document:

    Configure scheduled refresh - Power BI | Microsoft Learn

    Datasets - Refresh Dataset In Group - REST API (Power BI Power BI REST APIs) | Microsoft Learn

     

    Best Regards,
    Adamk Kong

     

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

     

     

    • pborah's avatar
      pborah
      Icon for Solution Sage rankSolution Sage

      Thanks Anonymous , do you know if the REST API can be called by windows task scheduler directly? Or do I have to write a script that calls the REST API and configure scheduler to execute that script?

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi pborah ,

     

    You can implement this process in a script or program using your preferred programming language, such as Python, PowerShell, or Node.js, and then schedule it to run periodically using Windows Task Scheduler or any other scheduling tool.

     

    Best Regards,
    Adamk Kong

     

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