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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
MovhHMH
Frequent Visitor

Looping problem with POST request to API using API key & request body

Sorry if there's bad formatting, this is my first time posting here.

I've been trying to wrap my head around this problem, and tried looking for a solution, but ultimately came up empty handed. Here is the scenario, I have an API I am trying to access. This is done through an API key and its value. I can connect to it no problem. The problem arises when I need to include the body (internal error 500 otherwise). I then include the body as content, but I now run into the issue that this is only supported when connecting anonimously. When I try this, I am then met with the following "A web API key is required when a web API key name is provided." Hence, it seems to me that fixing one causes the other, which is why I'm currently in a loop to try and figure out what to do. From what I've read, I understand that a POST request is only possible through the anonymous authentication method. But how can I resolve this issue then? Code below (replaced some values with placeholders).

 

 

let
     body = "{""query_filter"":""}",
     Source = Web.Contents(
          "link?key=value",
          [
          ApiKeyName = "key",
          Headers = [ #"Content-Type" = "application/json" ],
          Content = Json.FromValue(body)
          ]
     ),

     result = Json.Document(Source)
in
     result

 


For the anonymous web content access I use the same link:
link?key=value

1 ACCEPTED SOLUTION
MovhHMH
Frequent Visitor

Thanks for the response Ibendlin. I have figured out the issue. It seems unfortunately, it is not possible to utilize authorization while also trying to use the "Content" parameter, as it changes Power BI's GET request into a POST request, which can only be done on anonymous authorization.

 

The issue was resolved, however it was done by removing the requirement of the "content" parameter on the APIs end. 

View solution in original post

2 REPLIES 2
MovhHMH
Frequent Visitor

Thanks for the response Ibendlin. I have figured out the issue. It seems unfortunately, it is not possible to utilize authorization while also trying to use the "Content" parameter, as it changes Power BI's GET request into a POST request, which can only be done on anonymous authorization.

 

The issue was resolved, however it was done by removing the requirement of the "content" parameter on the APIs end. 

lbendlin
Super User
Super User

Please consult the documentation, look at the examples.

 

Web.Contents - PowerQuery M | Microsoft Learn

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

Power BI Carousel June 2024

Power BI Monthly Update - June 2024

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

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.