Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

July 28 - August 9 | Final Round of the Power BI Dataviz World Championships. This is your chance. Learn more

Reply
FXFelix
Resolver I
Resolver 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

1 ACCEPTED SOLUTION
FXFelix
Resolver I
Resolver 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 $exportBody

 

But this code works 😃

 

There was a missing @ before the bookmark.

View solution in original post

3 REPLIES 3
FXFelix
Resolver I
Resolver 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 $exportBody

 

But this code works 😃

 

There was a missing @ before the bookmark.

FXFelix
Resolver I
Resolver 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 

lbendlin
Super User
Super User

Try the same in the API sandbox. check the syntax there.

Helpful resources

Announcements
FabCon and SQLCon Barcelona 2026

FabCon & SQLCon – Barcelona 2026

Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.

Fabric Community Sticker Design Challenge Barcelona Carousel

Fabric Community Sticker Challenge - Barcelona 2026

If you love stickers, then you will definitely want to check out our community sticker challenge, Barcelona edition!

July Power BI Update Carousel

Power BI Monthly Update - July 2026

Check out the July 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.