Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
My goal is to set up an Azure DevOps pipeline that can publish a report to the Development workspace.
The below code uses a service principle account to authenticate and then successfully publishes my test .pbix file (LocalReportModel.pbix") this file is a simple report and model structure
Import-Module MicrosoftPowerBIMgmt
$clientId = "****"
$clientSecret = "****"
$tenantId = "****"
$secpasswd = ConvertTo-SecureString $clientSecret -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($clientId, $secpasswd)
Connect-PowerBIServiceAccount -ServicePrincipal -Credential $credential -TenantId $tenantId
$workspaceName = "Development"
$workspace = Get-PowerBIWorkspace -Name $workspaceName
$file = "C:\Tasks\BI\LocalReportModel.pbix"
New-PowerBIReport -Path $file -Workspace $workspace -ConflictAction CreateOrOverwrite
We use On Premises Gateways so our model/dataset it not stored within the .pbix file
When I try the above with the file ReportOnly.pbix I get the error
New-PowerBIReport: Operation returned an invalid status code 'BadRequest'
How can I add the link to the dataset currently within the workspace so that it will publish?
Thank you for any help you can offer.
Hi @GarethNW ,
The error message "New-PowerBIReport: Operation returned an invalid status code 'BadRequest'" usually occurs when there is an issue with the request being sent to the Power BI service. One possible cause could be that the service principal being used does not have the necessary permissions to publish the report. You can check the permissions for the app in the Azure Portal by running the command "Get-Help Connect-DataGatewayServiceAccount -Examples". For Service Principal Scenario, use the "Get-Help Connect-DataGatewayServiceAccount -Examples" to get information about the permissions on the azure portal. In the Azure portal these will show as the Permission names "Tenant.Read.All" and "Tenant.ReadWrite.All" with the "Application" type under the Power BI Service API.
Another possible cause could be that the report name already exists in the Power BI service and is connected to the same dataset. In this case, you can try publishing the report with a different name.
Best Regards
User | Count |
---|---|
5 | |
5 | |
3 | |
2 | |
2 |
User | Count |
---|---|
9 | |
7 | |
4 | |
4 | |
4 |