Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi there,
I'm trying to implement a Power Query Script that refresh a dataset by using "Dataset - Refresh Dataset in Group" REST API (https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/refresh-dataset-in-group).
I can trigger the dataset refresh by using Postman or direct using the "Try it" API page (https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/refresh-dataset-in-group#code-try-0), but when I call for this API by using Power Query at Power BI Desktop, it just doesn't work.
Bellow is Power Query Script, where GetAccessToken is a separated Query that calls for Microsft API in order to retrieve a valid Token. It's working fine. I can say that because when I use the token return by GetAccessToken query and use it at Postman, it works.
let
auto_token = "Bearer " & GetAccessToken,
url_datasetlist = "https://api.powerbi.com/v1.0/myorg/groups/workspace_id00000/datasets/dataset_id00000/refreshes",
content_type = "application/x-www-form-urlencoded",
body="NotificationOption=MailOnCompletion",
Source = Json.Document(Web.Contents(url_datasetlist, [Headers=[Authorization=auto_token, #"Content-Type"=content_type, Content=body]]))
in
Source
Source content is a record as you can see below:
Could any body help me find the problem? Any tip of what I'm doing wrong?
Hi @trt18-sistemas ,
It seems that the issue is with the content_type parameter in the header. The content_type parameter should be set to "application/json" instead of "application/x-www-form-urlencoded". Try changing the content_type parameter to "application/json" and see if that resolves the issue.
Try the modified code:
let
auto_token = "Bearer " & GetAccessToken,
url_datasetlist = "https://api.powerbi.com/v1.0/myorg/groups/workspace_id00000/datasets/dataset_id00000/refreshes",
content_type = "application/json",
body = "{""notifyOption"": ""MailOnCompletion""}",
Source = Json.Document(Web.Contents(url_datasetlist, [Headers=[Authorization=auto_token, #"Content-Type"=content_type], Content=Text.ToBinary(body)]))
in
Source
Best Regards,
Stephen Tao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @Anonymous ,
Thanks for your reply. I forget to mention that I've tried using Json and it returned a error. I've pasted your code on Power BI and the same error pop up again (message below). In this case, seems that the problem is how message is formated, but I can't see any thing wrong on the content.
Just in case, here is the print screen from my M code:
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 19 | |
| 10 | |
| 9 | |
| 8 | |
| 7 |