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

The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!

Reply
Breticious
Helper I
Helper I

Passing Variables in API Post Request JSON Body

I am looking to make a semi-flexible template where the user punches in their own personal credentials into the JSON body being passed into my GET. I want to replace the [username parameter] and [password parameter] with the value in the parameter without having to include the quotation (") or double quotation inside the request. Help! Here is the BODY variable that I'm talking about:

BODY = "{
        	""UserName"":""[username parameter]"",
        	""Password"":""[password parameter]""
        }"

Help! Anyone!

1 ACCEPTED SOLUTION
Breticious
Helper I
Helper I

Ok. I figured it out. I had to use an annoying text combination:

let
    LOGIN = Text.Combine({"""",Login_Parameter,""""},""),
    PW = Text.Combine({"""",Login_Password,""""},""),
    body = "{
        	""UserName"":"&LOGIN&",
        	""Password"":"&PW&"
        }",

Just to reiterate, the parameters I setup are named Login_Parameter and Login_Password and formatted as Text. The result comes out as:

body = {
        	"UserName":"breticious",
        	"Password":"password123"
        }

View solution in original post

4 REPLIES 4
Breticious
Helper I
Helper I

Ok. I figured it out. I had to use an annoying text combination:

let
    LOGIN = Text.Combine({"""",Login_Parameter,""""},""),
    PW = Text.Combine({"""",Login_Password,""""},""),
    body = "{
        	""UserName"":"&LOGIN&",
        	""Password"":"&PW&"
        }",

Just to reiterate, the parameters I setup are named Login_Parameter and Login_Password and formatted as Text. The result comes out as:

body = {
        	"UserName":"breticious",
        	"Password":"password123"
        }

can this be used to resolve the following substitution for parameters?

 

 

let
dateRangeStart=dateRangeStart,
dateRangeEnd=dateRangeEnd,
body = "{ ""dateRangeStart"": ""2022-01-01T00:00:00.000"", ""dateRangeEnd"": ""2022-12-01T23:59:59.000"", ""detailedFilter"": { ""page"": ""1"", ""pageSize"": ""500"" } }", Source = Json.Document

Anonymous
Not applicable

@Breticious,

What Power Query code do you use to connect to the API in Power BI Desktop? I am not very sure about the requirement that " want to replace the [username parameter] and [password parameter] with the value in the parameter ". Could you please explain it?

Regards,
Lydia

Sorry for the late response, @Anonymous  but I'm not sure I follow what you are asking. 

 

I am using Mashup in the Advanced Editor of Power BI to directly connect to a RESTFUL API that uses JSON objects to pass things back and forth. It requires an authentication token.

 

It was a giant pain in the rear and took a LOT of work to pass everything just right. Does that answer your question?

Helpful resources

Announcements
December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors