Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateJoin 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.
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?
User | Count |
---|---|
35 | |
22 | |
21 | |
14 | |
13 |
User | Count |
---|---|
26 | |
19 | |
18 | |
18 | |
16 |