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

July 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more

Reply
Anonymous
Not applicable

Power BI connection issue with Decipher through API

Power BI connection issue with Decipher through API. We have been using this coonection type since last 4 years. I faced below error from 30th Jan'25. How to resolve error "OData: The format 'application/xml; encoding=utf-8' is not supported". It is reply from Decipher end "For the error you are seeing, that looks to be from the Power BI tool/page. In my testing, I was able to use the API call from the data downloads to successfully make the call to the survey."

praphull_0-1738375337843.png

 

 

3 REPLIES 3
Anonymous
Not applicable

Hi Folk,
Plz provide a proper solution. It is still not resolved.

shafiz_p
Super User
Super User

Hi, @Anonymous 

I think header has a typo, encoding= instead of charset=. In power bi, OData Connector, it relies on the API’s Content-Type header to parse the response. Try append $format=application/xml;charset=utf-8 to the URL to force the correct format, If you prefer the OData connector.

You could also, bypass the default OData connector and use the Web Connector instead to manually parse the XML. 

First fetch the raw response as binary (ignoring the Content-Type header), then convert the binary to Text using UTF-8 encoding and then parse the text as XML. Here is an example (Power Query):

 

 

 let 
     // Fetch the raw response as binary (ignoring the Content-Type header) 
     Source = 
  Web.Contents("https://api.decipher.com/your-endpoint", [Headers[Accept="application/xml"]]),
 
     // Convert the binary response to text using UTF-8 encoding 
     ResponseText = Text.FromBinary(Source, TextEncoding.Utf8), 

    // Parse the text as XML 
    ParsedXml = Xml.Tables(ResponseText) 

in 
    ParsedXml 

 

 

If the API requires authentication or other headers (e.g., API keys), add them to the Web.Contents function:

 

 

 Source = Web.Contents( 
     "https://api.decipher.com/your-endpoint", 
     [
        Headers = [ 
             Accept = "application/xml", 
             Authorization = "Bearer YOUR_API_KEY" 
        ] 
     ] 
), 

 

 
Run the query. If the XML parses successfully, expand the tables/nodes in Power Query Editor
 
If error still exist, use Query Diagnostics to inspect the raw response.
 
This way parsing the XML ensures Power BI doesn’t rely on the API’s incorrect Content-Type header.
 
Hope this helps!!
If this solved your problem, please accept it as a solution and a kudos!!
 
 
Best Regards,
Shahariar Hafiz
 
Anonymous
Not applicable

Hi @shafiz_p ,
It is not resolved. is it currently changes method to connect. 

Helpful resources

Announcements
FabCon and SQLCon Barcelona 2026

FabCon & SQLCon – Barcelona 2026

Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.

60 days of Data Days Carousel

Data Days 2026

Join Fabric Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.