Forum Discussion
FXFelix
1 year agoResolver I
API with Powershell : Exporting report with bookmark
Hello community,
I can't figure how to make a Powershell API calls to export a report with bookmarks...
This piece of code :
$exportBody = @{
format = "PDF"
powerBIReportConfiguration = @{
settings = @{
locale = "fr-FR"
}
}
} | ConvertTo-Json -Depth 10
$response = Invoke-RestMethod -Method Post -Uri $url -Headers $headers -ContentType "application/json" -Proxy $proxyUri -ProxyUseDefaultCredentials -Body $exportBody
... is working.
But as soon as I try to add a specific page/bookmark, I get an error 400 Bad request :
$exportBody = @{
format = "PDF"
powerBIReportConfiguration = @{
settings = @{
locale = "fr-FR"
}
pages = @(@{
pageName = "81438a987ba809f63572"
bookmark = {name = "0bb3e333319e8ad6c06c"}
})
}
} | ConvertTo-Json -Depth 10
$response = Invoke-RestMethod -Method Post -Uri $url -Headers $headers -ContentType "application/json" -Proxy $proxyUri -ProxyUseDefaultCredentials -Body $exportBody
Any idea ?
Thanks in advance
$exportBody = @{ format = "PDF" powerBIReportConfiguration = @{ settings = @{ locale = "fr-FR" } pages = @(@{ pageName = "81438a987ba809f63572" bookmark = @{name = "0bb3e333319e8ad6c06c"} }) } } | ConvertTo-Json -Depth 10 $response = Invoke-RestMethod -Method Post -Uri $url -Headers $headers -ContentType "application/json" -Proxy $proxyUri -ProxyUseDefaultCredentials -Body $exportBodyBut this code works 😃
There was a missing @ before the bookmark.
3 Replies
- lbendlinSuper User
Try the same in the API sandbox. check the syntax there.
- FXFelixResolver I
I do not understand how it can help me : nothing about exporting a report, and anyway, nothing about the syntax of the API calls 🤔
Where can you see the syntax ?
Edit : I use that link : https://playground.powerbi.com/en-us/home
- FXFelixResolver I
$exportBody = @{ format = "PDF" powerBIReportConfiguration = @{ settings = @{ locale = "fr-FR" } pages = @(@{ pageName = "81438a987ba809f63572" bookmark = @{name = "0bb3e333319e8ad6c06c"} }) } } | ConvertTo-Json -Depth 10 $response = Invoke-RestMethod -Method Post -Uri $url -Headers $headers -ContentType "application/json" -Proxy $proxyUri -ProxyUseDefaultCredentials -Body $exportBodyBut this code works 😃
There was a missing @ before the bookmark.