Hi,
I've read quite a few threads, on this topic but due to the variety of approaches and different APIs and their pagination methods, it's hard to work out what will best apply to my scenario with Workfront. Hoping that a guru out there can help!
In summary, Workfront's API operates where you specify the starting record number, and the number of records to return. The limit is 2000 records per query.
An example query for the first 2000 task records is:
https://customername.my.workfront.com/attask/v9.0/TASK/search?project:entryDate=2018-01-01T00:00:00:...
The next two pages of records are as follows:
https://customername.my.workfront.com/attask/v9.0/TASK/search?project:entryDate=2018-01-01T00:00:00:...
https://customername.my.workfront.com/attask/v9.0/TASK/search?project:entryDate=2018-01-01T00:00:00:...
It is also possible to do a count, in case this is useful in building a loop-based query solution.
Up until now, I have created the power-query the dumb way by pre-defining (e.g.) a list of 50 queries of 2000 records per query (because I know that this is currently more than the number of records that will be returned), each with incremented starting positions, and it runs through all these and converts them into tables, combines the tables, then I discard any duplicates and I have usable data to report on. This works OK, but I have to periodically check the counts on the various queries and make sure there are enough lines in the query so that I am not missing data. I am sure the last x number of queries which return no data also slow down the refresh process and waste time. This is not sustainable long term and I would like to have a query that will keep looping through until it receives no data.
1000 points of good karma and many thanks to anyone who can help!!!
Cheers, David