Version: GeoEvent 10.8.1
API: Accela's Public Stuff API
Like others, we are also encountering/looking for a method to loop through pages for getting out all outputs from an API request. An example: Accela's Public Stuff API limits to 500 per page for requests. I do understand that vendors/providers of the API also have a responsibility/control over how their data is shared and how they make sharing available.
Is GeoEvent capable or is/will there be a toolkit that tackles paignation?
So far, it does not seem so based upon the following blogs:
1. Related to John Deere API
*Suggesting is that you need to create an input FOR every page. For example, if there are a total of 10000 records and each page is set to 500 records. This means you would need to create 20 inputs. Also, I'm assuming that we then have to "combine" the results of the inputs somewhere.
https://community.esri.com/t5/arcgis-geoevent-server-blog/geoevent-server-connecting-to-the-john-deere-api/ba-p/901968
2. Related blog that deals with MDS, but how requests can only be sent in limited batches.
https://community.esri.com/t5/arcgis-geoevent-server-questions/poll-an-external-website-for-json-using-headers/td-p/307154/page/2
"Switching to your request for pagination for web service service(s), this is a pretty broad topic. There is no standard I'm aware of for how a given external web service might elect to communicate to a client that data retrieval should be performed as a series of queries rather than receiving all of the data as part of a single response to a single query. For example, the ArcGIS REST API for feature services specifies that a client should interpret a feature service returning exceededTransferLimit=true to mean that "there are more query results" and "you should continue to page through the results". GeoEvent Server is able to page through Esri's feature services when querying for a large number of feature records, but I'm not sure how we would implement a general solution for paging through any external web service's content. (I'm actually more familiar with the opposite, when a web service wants to return tens-of-megabytes of data to a client in response to a query and GeoEvent administrators ask how to configure GeoEvent Server to handle such a massive slug of data.) "