Unfortunately, the API I am using has the same issue where the "nextLink" and "value" keys/properties are called "next" and "results" respectively in the model I am using.
I do have a work around, granted it is pretty annoying. That said, I am pretty new to programming so take it easy on me if this solution is a bit messy. Here are the steps:
1. Initialize variables: integer: "count"=1, integer: "offset"=0, array: "response"=[]. Make sure that count is initialized to be greater than 0. It will be reset after the HTTP action returns a response.
2. Create a Do Until loop where the condition is "@{variables('offset')}>@{variables('count')}"
3. Within the loop create your HTTP action and use limit and offset query parameters. For example, the URI is "https://{your endpoint}?limit=100&offset=@{variables('offset')}".
4. Add a Parse JSON action after the HTTP action. Content should come from the body of your HTTP request and then define your schema based on your API's model.
5. Append to array @{variables('response')}. Value=@{body('Parse_JSON')?['results'].
6. Set variable "count" from the value in the HTTP response.
7. Increment offset by the value you set your limit parameter to. In my case 100.
Once the offset exceeds the count, the loop will stop and you now have an array of your paginated JSON (response).
I really wish there was a way to tell the HTTP action that a key/property in your payload is the same as the "value" key/property the HTTP action uses to paginate responses. However, this workaround has been a viable solution in my automation development.
I hope this helps!