Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
This is the function that I've defined, I've removed the token and the directory name for security purposes:
let gettoken=() => let JWT="<my_token>", Data= Web.Contents("https://api.github.com/app/installations/<id>/access_tokens", [ Headers=[ #"Accept"="application/vnd.github+json", #"Authorization"="Bearer" & JWT, #"X-GitHub-Api-Version"="2022-11-28", #"Content-Type"="application/x-www-form-urlencoded" ]]) ,token=Text.FromBinary(Json.Document(Data[token])) in token in gettoken
No syntax errors, but when I run it...
An error occurred in the ‘get_token’ query. Expression.Error: We cannot apply field access to the type Binary. Details: Value=[Binary] Key=token
Any help would be really appreciated.
Solved! Go to Solution.
What's the Text.FromBinary for? Not needed.
token=Json.Document(Data)[token]
It works now! Here is the adjustment I did:
let gettoken=() =>
let
JWT="<my_token>",
vContent=Text.ToBinary("{""query"": ""{ organization(login: \""github\"") { name }}""}"),
Data= Web.Contents("https://api.github.com/app/installations/<id>/access_tokens",
[
Headers=[
#"Accept"="application/vnd.github+json",
#"Authorization"="Bearer " & JWT,
#"X-GitHub-Api-Version"="2022-11-28",
#"Content-Type"="application/x-www-form-urlencoded"
],Content=vContent])
,token=Json.Document(Data)[token]
in
token
in gettoken
What's the Text.FromBinary for? Not needed.
token=Json.Document(Data)[token]
Thank you @lbendlin!
That worked, I have one more doubt...I'm getting the following error
An error occurred in the ‘get_token’ query. Expression.Error: The 'Authorization' header is only supported when connecting anonymously. These headers can be used with all authentication types: Accept, Accept-Charset, Accept-Encoding, Accept-Language, Cache-Control, Content-Type, If-Modified-Since, Prefer, Range, Referer
However, if I select to login anonymously... it wants my credentials:
My code:
let gettoken=() => let JWT="<my_token>", Data= Web.Contents("https://api.github.com/app/installations/<id>/access_tokens", [ Headers=[ #"Accept"="application/vnd.github+json", #"Authorization"="Bearer" & JWT, #"X-GitHub-Api-Version"="2022-11-28", #"Content-Type"="application/x-www-form-urlencoded" ]]) ,token=Json.Document(Data)[token] in token in gettoken
If needed I can open another post.
Have you considered using the github connector in Power Query?
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.