I’m trying to implement the HTTP pagination for a request.
I successfully used the pagination in other APIs, but in this one I have to give filtering parameters in a JSON array. One element in this array is the “page counter” I have to increment.
The value that needs to be updated is in the first Criteria element field value.
I tried to use the pagination mode “Update a Parameter in Each Request” with type “Body” and name ServiceRequest.filters.Criteria[0].value, but this does not seem to work.
I also tried ServiceRequest.filters.Criteria.0.value and other variations but nothing works.
Hi @mnebel!
From what I can see, this isn’t a bug and it’s not a syntax issue either. The Update a Parameter in Each Request pagination mode in the HTTP Request node is mainly meant for simple parameters like query params or top-level body fields, as described in the n8n pagination docs. It’s not really built to safely update deeply nested values inside indexed JSON arrays like Criteria[0].value. In cases like yours, I’ve found it more reliable to control the pagination explicitly using expressions in the body together with a small loop pattern (for example with Set + IF or Loop Over Items). The HTTP node is behaving as designed, it’s just that this specific helper isn’t the right fit for complex nested array updates.
What bothers me about this solution is that once pagination is complete, you have to merge all the results from the executed HTTP node iterations back together. While it works, it still feels like a rather hacky workaround to me, especially considering that the HTTP node already provides this functionality in the first place.
Would it be very complicated to incorporate support for setting nested JSON fields directly into the HTTP pagination functionality?
It’s not hacky, it’s less obvious. However, explicit pagination allows you to work with batches independently without overloading any dependent services. By using the sub workflows, you can even process hundreds of thousands of items, which is not possible with the built-in pagination.