Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago

how to update connectionDetails for datasource in gateway

using Try it from https://docs.microsoft.com/en-us/rest/api/power-bi/gateways/get-datasource I am able to see below JSON output by providing datasourceId and gatewayId

 

{ "@odata.context": "http://api.powerbi.com/v1.0/myorg/$metadata#gatewayDatasources/$entity",

"id": "xxxxxxxxxxxxx", "

gatewayId": "xxxxxxxxxxxxxxx",

"datasourceType": "Web",

"connectionDetails": "{\"url\":\"https://servicesxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"}", "credentialType": "Anonymous",

"credentialDetails": { "useEndUserOAuth2Credentials": false }

}

what I want is to update "connectionDetails" by replacing "https://servocesxxxxxxxxxxxxxxxxxxxxxxxxxx" with new url. so I use try it from : https://docs.microsoft.com/en-us/rest/api/power-bi/gateways/update-datasource#code-try-0

 

I fill up with same datasourceid and gatewayid, and provide JSON as below.

 

it returns error "{"error":{"code":"PowerBIEntityNotFound","pbi.error":{"code":"PowerBIEntityNotFound","parameters":{},"details":[],"exceptionCulprit":1}}}" . I believe it is due to string of new url ""{\"url\":\"https://xxxxxxxxxxxxxxxxxxxxxxxxxxx\"}"," should not be fit with "credentials"

 

{

"credentialDetails":

{ "credentialType": "Anonymous",

"credentials": "{\"url\":\"https://xxxxxxxxxxxxxxxxxxxxxxxxxxx\"}",

"encryptedConnection": "Encrypted",

"encryptionAlgorithm": "None",

"privacyLevel": "None" }

}

 

from Doc of PowerBI rest API, I could not find any helpful instruction about how to update "connectionDetails" for dataset in the specific gateway Please shed the light if possible. Many Thanks

3 Replies

  • When they say connection details they mean username and password.  You cannot change the URL etc through this call.

    • Anonymous's avatar
      Anonymous
      Not applicable

      is there workaround to change url? 

      • lbendlin's avatar
        lbendlin
        Icon for Super User rankSuper User

        The workaround is to recreate your connection. Much faster than wasting time on trying other avenues.