Forum Discussion
djs1984
1 year agoFrequent Visitor
Paginated Data Without Total Pages
Hi, I've been trying to fetch dynamic data from an API with no known TotalPages parameter. There is a num_pages parameter, and a has_more one; if has_more is 1, there are more pages. So, I need t...
Sahir_Maharaj
1 year agoSuper User
Hello djs1984,
Can you please try this updated approach:
let
apiKey = "{my_key}",
baseUrl = "https://{myapi}",
fnGetPage = (pageNum as number) =>
let
Source = Json.Document(Web.Contents(baseUrl, [
Headers = [#"ApiKey" = apiKey],
Query = [num_page = Text.From(pageNum)]
])),
Data = Source[data],
HasMore = Source[has_more]
in
[Data = Data, HasMore = HasMore],
AllPages = List.Generate(
() => [Page = 1, HasMore = true, Result = fnGetPage(1)],
each [HasMore],
each [Page = [Page] + 1, Result = fnGetPage([Page]), HasMore = [Result][HasMore]],
each [Result][Data]
),
CombinedTable = Table.Combine(List.Transform(AllPages, Table.FromList(_, Splitter.SplitByNothing(), {"Column1"})))
in
CombinedTable
djs1984
1 year agoFrequent Visitor
Hi,
Thanks for responding. Unfortunately, I'm getting an error with that: