Lookup tables - retrieve limited records

So I am trying to accomplish two things here. first reduce the constant pinging overhead. I assume it is a pretty minimal call but why run if unnecessary. second, when it runs out of records to process i want to perform another action to ping the source system and verify that all records were sent originally and if any remain, update them to trigger the catch process again to store the value in the table. Because of the nature of the API we dont want to ping it constantly unless needed because it charges after a certain point.

Ideally, we catch 100 records. the release runs say 5 at a time every 2 minutes. (to this point it is all working exactly this way). After it runs them all, it pings one last time to see if any are remaining in the source system and if so, triggers another automation to kick it off again. Any other time it just sits idle without pinging out, just waiting to catch a call. then when it catches another batch, the release ramps back up.