Reply
Syndicate_Admin
Administrator
Administrator
Syndicated - Inbound

API Query Error - Unexpected error in JSON input

Source Community: Power Apps | Source Author Name: chrisgill

Hi all,

 

I'm trying to generate an authentication token from an API. The first step in using the API is to generate an API token by sending two parameters in the body of a POST request to the API. I've tried using the following code, but I'm getting an error message -DataFormat.Error: We found an unexpected character in the JSON input. Details: Value=e Position=0

 

Following is the code. Any ideas what's wrong here?

let
url = "https://xxx.xxx.com/api/auth",
headers = [#"Content-Type"="application/json"],
body = "{ ""Param1"": ""XXX-XXX-XXX"", ""Param2"": ""YYY-YYY-YYY""}",
Source = Json.Document(Web.Contents(url,[ Content = Text.ToBinary(body), Headers = headers ]))
in
Source

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Source Community: Power Apps | Source Author Name: chrisgill
Syndicated - Inbound

I received some help outside of this forum and was able to resolve the issue. The code that worked correctly follows:

 

let
url = "https://xxx.xxx.com/api/auth",
headers = [#"Content-Type"="application/json"],
body = "{ ""Param1"": ""XXX-XXX-XXX"", ""Param2"": ""YYY-YYY-YYY""}",
Source = Text.FromBinary(Web.Contents(url,[ Content = Text.ToBinary(body), Headers = headers ]))
in
Source

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Source Community: Power Apps | Source Author Name: chrisgill
Syndicated - Inbound

I received some help outside of this forum and was able to resolve the issue. The code that worked correctly follows:

 

let
url = "https://xxx.xxx.com/api/auth",
headers = [#"Content-Type"="application/json"],
body = "{ ""Param1"": ""XXX-XXX-XXX"", ""Param2"": ""YYY-YYY-YYY""}",
Source = Text.FromBinary(Web.Contents(url,[ Content = Text.ToBinary(body), Headers = headers ]))
in
Source

v-cgao-msft
Community Support
Community Support

Syndicated - Outbound

Hi @Syndicate_Admin ,

 

The error message you’re seeing is usually caused by an issue with the JSON format. It seems like there might be an extra character at the end of the JSON input.

You can try checking the JSON file in a JSON formatter to see if there are any additional pieces of information that might be causing the issue.

Or please try:

let
    url = "https://xxx.xxx.com/api/auth",
    headers = [#"Content-Type"="application/json"],
    body = Json.FromValue([Param1 = "XXX-XXX-XXX", Param2 = "YYY-YYY-YYY"]),
    Source = Json.Document(Web.Contents(url, [Content = Text.ToBinary(Json.ToString(body)), Headers = headers]))
in
    Source

Best Regards,
Gao

Community Support Team

 

If there is any post helps, then please consider Accept it as the solution  to help the other members find it more quickly. If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!

How to get your questions answered quickly --  How to provide sample data in the Power BI Forum

avatar user

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 Solution Authors (Last Month)
Top Kudoed Authors (Last Month)