The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredCompete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.
Hello world,
I have been having an issue with report refresh failures in the service and I cannot trace the root cause or solve. Here is the error I am getting:
[ValidateMarkupTags]<ccon>[ccon]DataSource.Error: [ccon]Web.Contents failed to get contents from 'https://api.redacted/1' (503): Service Temporarily Unavailable[/ccon]. DataSourceKind = [ccon]Web[/ccon]. DataSourcePath = [ccon]https://api.redacted/1[/ccon ]. Url = [ccon]https://api.redacted/1[/ccon ]. [/ccon]. The exception was raised by the IDbCommand interface.</ccon> Table: Table1.
I have been getting this error across many downstream queries where I am merging data, even if the query that is throwing this error doesn't hit the API endpoint itself.
The only thing I can think of to try that I have not yet is to implement table.buffer for the root API calls, but I don't know.
This is only an issue in the service, and it has never failed in desktop refresh. I would say of my 8 daily refreshes, about 3 are failing each day due to this issue.
Help me PBI community, you're my only hope!
Solved! Go to Solution.
So there is essentially no way to prevent power bi from hitting the API multiple times.
You can't stop it from hitting it the exact number of times it's evaluated. So if X is the number of IDs and Y is the number of queries/references then the total number will be X*Y.
I have solved for this by introducing a dataflow to hit the API, and using power automate to trigger a dashboard refresh when that dataflow refreshes.
So there is essentially no way to prevent power bi from hitting the API multiple times.
You can't stop it from hitting it the exact number of times it's evaluated. So if X is the number of IDs and Y is the number of queries/references then the total number will be X*Y.
I have solved for this by introducing a dataflow to hit the API, and using power automate to trigger a dashboard refresh when that dataflow refreshes.
Hi @BladeLyfe
You could try the Table.Buffer, or what if you had to output each API call to a seperate table and then join them later in steps?