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

View all the Fabric Data Days sessions on demand. View schedule

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
November Power BI Update Carousel

Power BI Monthly Update - November 2025

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

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

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
Top Kudoed Authors