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

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
ExcelAthlete
Regular Visitor

Convert cURL POST request to M

Hi!

 

I have the following cURL request that works in POSTMAN that I can't figure out how to convert to M for the life of me.

 

 

curl --location 'https://thisisaURL.com' \
--header 'ASessionID: ThisisaSessionID' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'searchCriteria={"projectName": "HerecomestheProjectName","startDateTime": "01-Jan-2020 16:35","endDateTime": "01-May-2023 16:35"}'

 

 

According to the documentation the API wants the searchCriteria passed as JSON object and I've been fighting with Json.FromValue() and Record.ToBinary() without any luck. Any help would be greatly appreciated!

1 ACCEPTED SOLUTION
ExcelAthlete
Regular Visitor

ChatGPT came to the rescue, this code works:

 

let
    url = "https://thisisaURL.com",
    headers = [
        #"ASessionID" = "ThisisaSessionID",
        #"Content-Type" = "application/x-www-form-urlencoded"
    ],
    body = "searchCriteria={""projectName"":""ThisisaProjectName"",""startDateTime"":""01-Jan-2020 16:35"",""endDateTime"":""01-May-2023 16:35""}",
    options = [
        Headers = headers,
        Content = Text.ToBinary(body),
        ManualStatusHandling = {400, 404, 500, 502, 503, 504}
    ],
    response = Web.Contents(url, options)
in
    response

 

View solution in original post

2 REPLIES 2
ExcelAthlete
Regular Visitor

ChatGPT came to the rescue, this code works:

 

let
    url = "https://thisisaURL.com",
    headers = [
        #"ASessionID" = "ThisisaSessionID",
        #"Content-Type" = "application/x-www-form-urlencoded"
    ],
    body = "searchCriteria={""projectName"":""ThisisaProjectName"",""startDateTime"":""01-Jan-2020 16:35"",""endDateTime"":""01-May-2023 16:35""}",
    options = [
        Headers = headers,
        Content = Text.ToBinary(body),
        ManualStatusHandling = {400, 404, 500, 502, 503, 504}
    ],
    response = Web.Contents(url, options)
in
    response

 

amitchandak
Super User
Super User

@ExcelAthlete , refer if this can help

https://www.reddit.com/r/PowerBI/comments/12ay6i4/how_to_use_a_curl_request_in_pq/

 

https://community.powerbi.com/t5/Desktop/Request-curl-API/td-p/1521152

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.

Top Kudoed Authors