Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hello,
I'm looking for any working examples of using WebAction.Request?
Also, does anyone know the syntax of an action type?
Thank you
If you are a pro license holder you can raise a ticket with Microsoft. This API call seems to be broken since a long time already.
Yeah, I can't raise a ticket because my company won't approve the purchase at this time. I'm thinking of just paying $10 and getting a few tickets answered and resolved.
See this thread
Syntax would be (for example)
web2 = WebAction.Request(WebMethod.Post,URL,[Content = data, Headers = headers, ManualStatusHandling = {404, 400}]),
Any particular reason you need to use this versus Web.Contents ?
Thanks for the example.
The problem is that syntax brings up a credential error when executed. The credential request option pops up over and over again.
Even something as simple as WebAction.Request(WebMethod.Get,"https://www.sdsu.edu/",[ManualStatusHandling = {404, 400}]) causes the same error
>Any particular reason you need to use this versus Web.Contents ?
Two reasons.
1. I'm hoping that Value. Metadata with WebAction.Request will show all the the response headers where Web.Contents shows null
2. If that doesn't work, may be WebMethod.Put will allow me to pass the headers to another request
Do you have any experience with using "Actions"?
I get the same error as in the thread I linked to. For now I am ok with just using Web.Contents even if it is sometimes a bit weird. Here is an example of a call against Microsoft's own REST API that requires some creative result wrangling because they don't adhere to simple HTTP standards.
(GatewayId as text, ConnectionId as text) =>
let
JsonData = try Json.Document(Web.Contents("https://api.powerbi.com/v1.0/myorg/gateways/" & GatewayId & "/datasources/" & ConnectionId & "/status", [Headers=[Authorization=Authorization]])),
value = if JsonData[Error][Message]="We reached the end of the buffer." then "True" else "False"
in
value
A "gateway connection is good" 200 response is hampered by an empty return body that I have to mitigate separately. Maybe you can do something similar with your web request.
Yeah its not that I can't use web.contents. Its that the nature of web.contents hides the response headers from Value.Metadata. I'm hoping/praying WebAction.Request won't have the same restrictions.
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.