I am trying to export all products from FreshService to excel using Power Query I can get the first page but we have more than 100 products to return but I am new to Power Query and I cannot find an example of a method to retrieve all the pages until I reach the last one that works with the data from Freshservice. Can anyone point me in the way of a method that would work.
Export all products to a Excel Workbook using the API
Best answer by pjg_west
After no response here and a lot of googling I asked ChatGPT and it provided me the below solution, it may be of use to someone else….
let
getPage = (page as number) =>
try Json.Document(
Web.Contents(
"https://XXXXXX.freshservice.com/api/v2/products?per_page=100&page=" & Text.From(page),
[Headers=[Authorization="Basic XXXXXXXXXX"]]
)
) otherwise null,
pageList = List.Generate(
() => 1,
each not List.IsEmpty(getPage(_)[products]),
each _ + 1,
each getPage(_)
),
#"Converted to Table" = Table.FromList(pageList, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"products"}, {"products"}),
#"Expanded products" = Table.ExpandListColumn(#"Expanded Column1", "products"),
#"Expanded products1" = Table.ExpandRecordColumn(#"Expanded products", "products", {"id", "created_at", "updated_at", "name", "manufacturer", "asset_type_id", "description", "description_text", "depreciation_type_id", "status", "mode_of_procurement"}, {"id", "created_at", "updated_at", "name", "manufacturer", "asset_type_id", "description", "description_text", "depreciation_type_id", "status", "mode_of_procurement"})
in
#"Expanded products1"
Join the Community
Already have an account? Login
Welcome back to Freshworks Community
No account yet? Create an account
Social Login
Login for Freshworks Employees Login with LinkedInEnter your E-mail address. We'll send you an e-mail with instructions to reset your password.
