You can loop through pages until no data return
My similar script is down below
let
GetJson = (Url) =>
let
RawData = Web.Contents(Url),
Json = Json.Document(RawData)
in Json,
region_id= "10000002",
api_url = "https://esi.evetech.net/latest/markets/" & region_id & "/orders/?page=",
Source = List.Generate(()=> [ i = 2, temp = GetJson(api_url & Number.ToText(1))] ,
each List.Count([temp]) > 0,
each [i = [i] + 1,
temp = GetJson(api_url & Number.ToText([i]))] ,
each [temp]),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandListColumn(#"Converted to Table", "Column1"),
#"Expanded Column2" = Table.ExpandRecordColumn(#"Expanded Column1", "Column1", {"duration", "is_buy_order", "issued", "location_id", "min_volume", "order_id", "price", "range", "system_id", "type_id", "volume_remain", "volume_total"}, {"duration", "is_buy_order", "issued", "location_id", "min_volume", "order_id", "price", "range", "system_id", "type_id", "volume_remain", "volume_total"}) in #"Expanded Column2"