Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hi,
we have created some PBI reports that are connected to snowflake Dev environment. The connection has been made during get data and using the "Snowflake connection"
We have filled in the Server and warehouse.
During deployment we want to update the servername to connect the report to another snowflake environment ACC or PROD.
There is an API to update the datasource (https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/update-datasources-in-group)
we use that for other connections to update like Sql, Odata,..
but for snowflake we always receive an error:
Invoke-RestMethod: {"error":{"code":"InvalidRequest","message":"Parameter UpdateDetails is missing or invalid"}}
we're sending this updatedetails with the API call, it looks like they are oke:
'updateDetails': [{
'datasourceSelector': {
'datasourceType': 'Extension',
'connectionDetails': {
'path': 'XXX.west-europe.azure.snowflakecomputing.com;POWERBI_WH',
'kind': 'Snowflake'
}
},
'connectionDetails': {
'path': 'YYY.west-europe.azure.snowflakecomputing.com;POWERBI_WH',
'kind': 'Snowflake'
}
}]
How can we update the connectiondetails for a Snowflake connection? because you can also not use parameters in the connection.
Kr,
Koen
Solved! Go to Solution.
That's weird but it look like you have an error in your code that make the request. if you want to make it easier for the text in the parameter try entering data in a new table with two columns. One of them is going to be the name of the environment and the second column the server name. If you need a third one for db name you can also create it. Then create a parameter that will filter the table with environment name.
Now for regular tables just take the first row in the entered data table to complete de server.
That way you can add new environments or change them dynamically in a more secure way.
I hope that make sense
Happy to help!
Hi. I usually recommend using parameters to change the data source. Just like the examples on youtube that they use to change it manually, but using the API
https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/update-parameters-in-group
The issue updating the sources directly is that every sources has different structure for the body. That can make the request quite difficult.
If you build on your reports a hidden dummy table with prod and dev environment that will filter by a parameter you can even use the same code/script for every report. You can take it to the next level.
I hope that helps,
Happy to help!
You are not able to update the data source.
When you use parameters to configure the connection. You are not able to update the paramaters through API calls. The data source is snowflake.
Parameters:
Even in the Power Bi portal, the parameters cannot be edited, the fields are disabled.
That's weird but it look like you have an error in your code that make the request. if you want to make it easier for the text in the parameter try entering data in a new table with two columns. One of them is going to be the name of the environment and the second column the server name. If you need a third one for db name you can also create it. Then create a parameter that will filter the table with environment name.
Now for regular tables just take the first row in the entered data table to complete de server.
That way you can add new environments or change them dynamically in a more secure way.
I hope that make sense
Happy to help!
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
User | Count |
---|---|
34 | |
30 | |
18 | |
12 | |
8 |
User | Count |
---|---|
50 | |
36 | |
30 | |
15 | |
12 |