Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
I have a dashboard to show data from my Azure Storage Table. It was working correctly before June.13. But recently I got an error when auto refreshing data in my semantic model:
DataFormat.Error: OData: The format 'application/json;odata=fullmetadata;streaming=true;charset=utf-8' is not supported.. application/json;odata=fullmetadata;streaming=true;charset=utf-8. </ccon>. The exception was raised by the IDataReader interface. Please review the error message and provider documentation for further information and corrective action.
I tried to refresh the data manually in my Desktop app, it can refresh correctly. Any insights why it only fails in auto/manually refreshing in the sematic model on portal?
Hi @XichengWang , Thank you for reaching out to the Microsoft Community Forum.
Your issue occurs because the Power BI Service is sending OData requests with a content type that Azure Table Storage does not support. This behaviour seems to have changed after June 13, likely due to an update in how Power BI Service handles OData feeds. Power BI Desktop still works because it uses a different engine that doesn’t enforce the same request headers.
To fix this, you can try modifying your OData query in Power BI Desktop to explicitly request a simpler metadata format. In the Advanced Editor, use:
OData.Feed(
"https://<youraccount>.table.core.windows.net/",
null,
[
ODataVersion = 3,
Headers = [
Accept = "application/json;odata=nometadata"
]
]
)
However, this workaround may not work in the Power BI Service because it often overrides custom headers during refresh. If this doesn’t resolve the issue, you’ll need to bypass the OData feed entirely. The most stable approach is to create an Azure Function (or other REST API proxy) that reads from your Azure Table Storage and returns plain JSON, then connect to it using Web.Contents() in Power BI.
If you want a no-code workaround, you can use Power Automate to periodically pull data from Azure Table Storage via HTTP and push it into a SharePoint list or Dataverse table, then connect your semantic model to that. Alternatively, if you're using Microsoft Fabric, create a Dataflow Gen2 that pulls data from the REST API and lands it into a Lakehouse or Warehouse.
If this helped solve the issue, please consider marking it “Accept as Solution” so others with similar queries may find it more easily. If not, please share the details, always happy to help.
Thank you.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
17 | |
10 | |
8 | |
8 | |
7 |