Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowJuly 28 - August 9 | Final Round of the Power BI Dataviz World Championships. This is your chance. Learn more
I need to obtain a key from the server by placing a POST with basic auth. It works fine in Postman, but in PB Desktop it gives me:
DataSource.Error: Web.Contents with the Content option is only supported when connecting anonymously.
Here is my code:
let
url = "https://localhost:446/api/identity",
Source = Json.Document(Web.Contents(url, [Headers=[#"Content-Type"="application/x-www-form-urlencoded"],
Content = Text.ToBinary("{}")
]))
in
#"Source"
Is there a workaround or something?
Thanks
Solved! Go to Solution.
Hi @Markzolotoy
When you make POST requests in Power Query you must use Anonymous authentication when asked
then in the actual query you supply the username and password and the authentication is performed via the Headers of the POST request
let
url = "https://localhost:446/api/identity",
ClientID = "xxxxxxxx", // Username
Secret = "xxxxxxxx", //Password
EncodedCredentials = "Basic " & Binary.ToText(Text.ToBinary(ClientID & ":" & Secret), BinaryEncoding.Base64),
Source = Json.Document(Web.Contents(url,
[
Headers = [#"Content-Type"="application/x-www-form-urlencoded",#"Authorization"=EncodedCredentials],
Content=Text.ToBinary("grant_type=client_credentials")
]
)
)
in
Source
You may need to edit the Data source settings for this connection on your PC, to change it to Anonymous
regards
Phil
Proud to be a Super User!
Hi @Markzolotoy
When you make POST requests in Power Query you must use Anonymous authentication when asked
then in the actual query you supply the username and password and the authentication is performed via the Headers of the POST request
let
url = "https://localhost:446/api/identity",
ClientID = "xxxxxxxx", // Username
Secret = "xxxxxxxx", //Password
EncodedCredentials = "Basic " & Binary.ToText(Text.ToBinary(ClientID & ":" & Secret), BinaryEncoding.Base64),
Source = Json.Document(Web.Contents(url,
[
Headers = [#"Content-Type"="application/x-www-form-urlencoded",#"Authorization"=EncodedCredentials],
Content=Text.ToBinary("grant_type=client_credentials")
]
)
)
in
Source
You may need to edit the Data source settings for this connection on your PC, to change it to Anonymous
regards
Phil
Proud to be a Super User!
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
If you love stickers, then you will definitely want to check out our community sticker challenge, Barcelona edition!
Check out the July 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 31 | |
| 28 | |
| 24 | |
| 24 | |
| 19 |
| User | Count |
|---|---|
| 44 | |
| 32 | |
| 17 | |
| 17 | |
| 17 |