In a blog I posted back in June 2022, I explained how you could trigger a Power BI dataset refresh via Azure Synapse Analytics.
However, what if you just wanted to refresh a select number of tables or objects rather than a full dataset? This might be the case if you are performing intraday loads in your ETL.
There are a few blogs around explaining how you can do this with PowerShell via an Azure Runbook. However, there is an option to pass in a JSON body into the refresh dataset API, only targeting which tables or objects you want to refresh.
Following my previous blog, you can just replace the empty body with the following JSON body:
Once the API has run, we can see that the refresh for my “Date” table/object only took 6 seconds.
There is also the option to target individual partitions too.
It should be noted that table/object refresh is not supported in shared capacities.