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 nowTry your skills in the Power BI Dataviz World Championship! Round one ends June 26. Join now
Hi Everyone.
I'm creating a custom connector for Power BI using Power Query/M Language on Visual Studio. In the final step of my connector, it will use Web.Contents() to retrieve a presigned file in Amazon S3.
Since it's a presigned file, my request CAN NOT have an Authorization Header, otherwise, it will return an error. The problem is that I'm not able to make the following call without Authorization header:
results = Web.Contents(file_download_url)
I know that the function Web.Contents() have an Authorization parameter, so I could use something like:
results = Web.Contents(file_download_url, [Headers = [Authorization = "ANYTHING HERE"]])
However, I can't pass an empty Authorization parameter. If I use the default value, it will send a Basic Authorization, which will not work, due to the presigned file won't return with an Authorization header.
One interesting thing to notice is that, if I copy the file URL and paste it into Power BI, it works, because Power BI doesn't send Authorization header on the request (I've double-checked it using Fiddler).
Does anybody know how to send a request without the Authorization header?
Hi @paulo_zip ,
Can you try the null. For a quick sample I tried the below it's worked for me
let
Source = Table.FromColumns({Lines.FromBinary(Web.Contents("https://testik.free.beeceptor.com/my/api/path"), null, null, 1252)})
in
Source
| User | Count |
|---|---|
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 |