Forum Discussion
New API Endpoint with DAX Queries
- 4 years ago
I finally got this partially worked out with the help of one of the very helpful Power BI engineers. For some reason datasets in My Workspace don't seem to be getting proper build permissions, so I decided to switch to just testing datasets in my v2 workspaces.
I initally thought that I had to use the format https://api.powerbi.com/v1.0/myorg/groups/{groupId}/datasets/{datasetId} because that is what I'm accustomed to doing. This will probably change as this gets closer to GA, but for now you actually just remove the parts about the group and reference the dataset directly. For example: https://api.powerbi.com/v1.0/myorg/datasets/f388a618-2c93-41c5-8528-44c0c1129d70/executeQueries
Once I made that change, I was able to return data from a Powershell script and Postman. Still not sure about the permssions in My Workspace, but I'll likely never use that anway.
At this point I would suggest testing this in Postman. Hopefully, you're familiar enough with Postman to setup a test request. I setup a very basic test on my end like this:
- I used PowerShell to get the bearer token (using my own creds), and then added that to the headers like so:
- I then created a very simple Dax query that I knew would work against this dataset and added it to the Body:
I would think that would give you more information if it continues to fail. Make sure your account has Build permissions to the dataset you're trying to query.
Thanks a lot for your help.
I tried in postman but i constantly got the invalid hostname error.
So i switched back to tryig in PS and i wrote a simple DAx same as you and logged in as 'me' and it had worked.
- rjhale4 years agoHelper V
Glad to hear you got that far. Sounds like it may be the result of you Dax syntax. I started using the performance analyzer in Power BI desktop to create my Dax queries.. It's a really quick way of getting the right syntax for the various tables, fields, and aggregations. Just thought I would share that tip.
- Anonymous4 years agoNot applicable
Oh I usually take the query from perf analyzer.Can't point out the actual problem but I feel something in the URL body was not correct and accepted
- Anonymous4 years agoNot applicable
I am now receiving "401 unauthorized error" while using SPN.
Any thoughts on what might be missing?
- Anonymous4 years agoNot applicable
Wanted to ask if you were able to use SPN and achieve the same thing?
- rjhale4 years agoHelper V
I haven't tried. Getting an SPN setup in our environment is complicated because of organizational beauracracy. Besides that, we're really interested in using it within Power Automate to pull data from a published PBI dataset and loop over it. In Power Automate, you can use an Invoke an HTTP Request to issue API requests like this:
The creds are stored like all the other connections, and we're able to use a service account with build rights on those datasets.
- Anonymous4 years agoNot applicable
Thanks .I have also planned to use service account now after not being able to use SPN.