Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.
Hi guys, I need help with the following issue, I am trying to connect with an API with a "next" on the end of the page, this next contains a new URL that gives us the next page, I need to loop this in Power BI until I have all the data. The point is, I get the following error while I am using the right credentials:
(baseuri as text) =>
let
headers = [Headers=[Accept="application/json", Authorization="Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"]],
initReq = Json.Document(Web.Contents(baseuri, headers)),
initData = initReq[data],
//We want to get data = {lastNPagesData, thisPageData}, where each list has the limit # of Records,
//then we can List.Combine() the two lists on each iteration to aggregate all the records. We can then
//create a table from those records
gather = (data as list, uri) =>
let
//get new offset from active uri
newOffset = Json.Document(Web.Contents(uri, headers))[next],
//build new uri using the original uri so we dont append offsests
newUri = newOffset,
//get new req & data
newReq = Json.Document(Web.Contents(newUri, headers)),
newdata = newReq[data],
//add that data to rolling aggregate
data = List.Combine({data, newdata}),
//if theres no next page of data, return. if there is, call @gather again to get more data
check = if newReq[next_page] = null then data else @gather(data, newUri)
in check,
//before we call gather(), we want see if its even necesarry. First request returns only one page? Return.
outputList = if initReq[next_page] = null then initData else gather(initData, baseuri),
//then place records into a table. This will expand all columns available in the record.
expand = Table.FromRecords(outputList)
in
expand
I first received the error that the datasource needs to be anonymously, changing that brings me this error. How do I need to solve this?
Are you maybe supposed to provide a session id for subsequent calls? Check the documentation of the API you are accessing.
Hi @lbendlin,
Thanks for your reply,
Unfortunately that is not the case. It is all based on the url at the end of the page and the authorization.
Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!
Check out the September 2025 Power BI update to learn about new features.