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

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
dpombal
Post Partisan
Post Partisan

HTTP POST request with form urlencoded data

Hi all,

 

I am trying to reproduce below API HTTP Post call , successful in Postman:

Postman configuration

  1. Authorization key with a tokensequence
  2. Body with 3 parameters and important select option x-www-form-urlencoded

 

HeaderHeaderParametersParameters

 

I tried several M codes with this template and modifications

 

let
auth_key ="XXXXXXXXXXXXX",
base_url = "www.WEBPAGE.com",
extension = "/api/datos_de_recarga/chargedata.php",
url = base_url &extension,
header= [#"Authorization" = auth_key,
#"Content-Type" = "application/x-www-form-urlencoded"],
content1= "{
""LOGIN"":""USER@domain.es"",
""PASSWORD"":""PASS"",
""INICIO"":""2019-11-01T00:00:00Z""
}",
webdata1 = Web.Contents(url, [Headers=header,Content = Text.ToBinary(content1)]),
response1 = Json.Document(webdata1)
in
response1

 

 

 

All with denied access

Regards

1 ACCEPTED SOLUTION

This option worked finally for me, will try to make code better using parameters, but is is a good start.

 

CODE OK

let
auth_key ="XXXXXXXXXXXXXXXXXXX",
base_url = "www.hostname.com",
extension = "/api/datos_de_recarga/chargedata.php",
url = base_url &extension,
header= [#"Authorization" = auth_key,
#"Content-Type" = "application/x-www-form-urlencoded"],
content1= "LOGIN=USER@DOMAIN.es&PASSWORD=XXXXXX&INICIO=2019-11-01T00:00:00Z",
webdata1 = Web.Contents(url, [Headers=[#"Authorization" = auth_key,
#"Content-Type" = "application/x-www-form-urlencoded"],Content = Text.ToBinary(content1)]),
response1 = Json.Document(webdata1)
in
response1

View solution in original post

5 REPLIES 5
artemus
Microsoft Employee
Microsoft Employee

Try using: Uri.BuildQueryString(record) to build your query string instead of manually entering it as a string. Might be some encoding issue.

can you assist me? i tried my characters with and without encoding...think this is not my current issue

where to use Uri.BuildQueryString(record)

artemus
Microsoft Employee
Microsoft Employee

First change

content1= "{
""LOGIN"":""USER@domain.es"",
""PASSWORD"":""PASS"",
""INICIO"":""2019-11-01T00:00:00Z""
}",

 

to

 

content1 =

[

   LOGIN = "USER@domain.es",

   PASSWORD = "PASS",

   INCIO = #datetimezone(2019, 11, 1, 0, 0, 0, 0, 0)

]

 

then change:

Text.ToBinary(content1)

with

Text.ToBinary(Uri.BuildQueryString(content1))

This option worked finally for me, will try to make code better using parameters, but is is a good start.

 

CODE OK

let
auth_key ="XXXXXXXXXXXXXXXXXXX",
base_url = "www.hostname.com",
extension = "/api/datos_de_recarga/chargedata.php",
url = base_url &extension,
header= [#"Authorization" = auth_key,
#"Content-Type" = "application/x-www-form-urlencoded"],
content1= "LOGIN=USER@DOMAIN.es&PASSWORD=XXXXXX&INICIO=2019-11-01T00:00:00Z",
webdata1 = Web.Contents(url, [Headers=[#"Authorization" = auth_key,
#"Content-Type" = "application/x-www-form-urlencoded"],Content = Text.ToBinary(content1)]),
response1 = Json.Document(webdata1)
in
response1

Wow, thanks so much for posting this...I spent some time in trying to get to this and your post had the final bit of info I needed. Many thanks 🙂

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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

Top Solution Authors