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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
pdesmarais
Frequent Visitor

GraphAPi Anonymous with API Token can't be refreshed while published.

 

I use GrapAPi with ClientCredentials, where a Token is obtain and used to gather details.

When published on the WEB this connections requires credentials, but it shouldnt as a Token is passed.

EVen if i set anonymous it fails. Any alternatives i could work out?

 

2018-03-05 06_49_59-Power BI.png

 

 

let
    client_id = ClientID,
    client_secret=Client_secret,
 
    //Authentication
    
   //URI's
    redirect_uri = "https://portal.office.com",
    token_uri = "https://login.windows.net/.onmicrosoft.com/oauth2/token", 
    authorize_uri = "https://login.windows.net/.onmicrosoft.com/oauth2/authorize",
    resource="https://graph.microsoft.com/",
   
 
   tokenResponse = Json.Document(Web.Contents(token_uri,          
                                [
                                    Content=
                                    Text.ToBinary(Uri.BuildQueryString(
                                    [
                                        client_id = client_id
                                        ,client_secret=client_secret
                                        ,resource=resource
                                        ,grant_type = "client_credentials"
                                        ,redirect_uri = redirect_uri
                                    ]))
                                    ,Headers=
                                        [Accept="application/json"]
                                        , ManualStatusHandling={400}
                                ])),
                                access_token = tokenResponse[access_token],
    token = tokenResponse[access_token],
getdatasets_uri ="https://graph.microsoft.com/stagingBeta/reports/getTenantSecureScores(period=1)/content",
GetGroups = Json.Document(Web.Contents(getdatasets_uri,[Headers=[Authorization="Bearer " & token]])),
    #"Converted to Table1" = Table.FromList(GetGroups, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table1", "Column1", {"tenantId", "createdDate", "licensedUserCount", "activeUserCount", "secureScore", "maxSecureScore", "accountScore", "dataScore", "deviceScore", "enabledServices", "controlScores", "averageSecureScore", "averageMaxSecureScore", "averageAccountScore", "averageDataScore", "averageDeviceScore", "averageScores"}, {"tenantId", "createdDate", "licensedUserCount", "activeUserCount", "secureScore", "maxSecureScore", "accountScore", "dataScore", "deviceScore", "enabledServices", "controlScores", "averageSecureScore", "averageMaxSecureScore", "averageAccountScore", "averageDataScore", "averageDeviceScore", "averageScores"}),
    #"Expanded createdDate" = Table.ExpandRecordColumn(#"Expanded Column1", "createdDate", {"Year", "Month", "Day"}, {"createdDate.Year", "createdDate.Month", "createdDate.Day"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Expanded createdDate",{{"secureScore", Int64.Type}, {"maxSecureScore", Int64.Type}})
in
    #"Changed Type"

 

1 REPLY 1
v-ljerr-msft
Employee
Employee

Hi @pdesmarais,

 

It seems to be that refresh for data source which authenticated with API call within the query is not supported currently.

 

Here is a similar idea shared on Power BI Ideas forum. You can vote it up and add your comments there to improve Power BI on this feature. Smiley Happy

 

Regards

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.