Forum Discussion
megel
4 years agoRegular Visitor
Setup Web Credentials for Application Insights by API
Hi All,
I want to setup the Web Credentials for my Dataset by API from a service:
The Datasource is an Application Insights component. To do this manual, I have to use my organizational account.
But I want to do this automatically and for this I want to uses this API:
PATCH https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}
Authorization: Bearer {token}
Content-Type: application/json
{
"credentialDetails": {
"credentialType": "OAuth2",
"credentials": "{\"credentialData\":[{\"name\":\"accessToken\", \"value\":\"{access_token}\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "Organizational"
}
}
Here are my questions:
1) How do I get the correct access_token for my account?
Here are my questions:
1) How do I get the correct access_token for my account?
2) Is it possible to use a Service Account?
3) Which Permissions do I need for an Azure AD AppRegistration, to get the access_token within a client credential flow?
4) Which Scope / Resource do I need client credential flow?
4) Which Scope / Resource do I need client credential flow?
1 Reply
- AnonymousNot applicable
HI megel,
You can try to use the following M query code if help with your scenario:
let secretId = xxxxx, authKey = "Basic " & secretId, url = "https://api.xxxxx.com/oauth2/token", GetJson = Web.Contents( url, [ Headers = [ #"Authorization" = authKey, #"Content-Type" = "application/x-www-form-urlencoded;charset=UTF-8" ], Content = Text.ToBinary("grant_type=client_credentials") ] ), token = Json.Document(GetJson)[access_token], Result = Web.Contents( "https://xxxxx.xxx.com", [ Headers = [ #"Content-Type" = "application/json", Authorization = "Bearer " + token ], RelativePath = "/xxxxx/xxxxx" ] ) in ResultRegards,
Xiaoxin Sheng