The pagination timed out on page 40 and you lost the first 39 too
You are pulling 3,000 contacts, the API stalls on some page deep in the list, and the node fails. Not 'the page failed' — the whole node failed, and everything it had already collected goes with it.
Built-in pagination (Response Contains Next URL) runs every page inside ONE node execution, and the timeout applies to that whole run, not to each request. So sixty requests share one clock, deep pages answer slower than early ones, and when the clock runs out the node throws with nothing to show. Retry On Fail does not rescue it either: it re-runs the node from page 1, which is both slower and just as fragile.
Page manually so each request is its own node execution: one HTTP Request fetching a single page with the cursor from the previous response, Retry On Fail set on THAT node, and a loop that continues while the next cursor exists. Write each page to its destination as it arrives instead of at the end — then a failure costs one page, not the whole import. A smaller page size also helps, because deep pages are what the API answers slowest.
Force a timeout in the middle of a long import and confirm the already-fetched pages are still stored and the run resumes from the failed cursor.
Not sure if this is the only leak?
Paste your workflow and see which fetches lose everything when one page fails — free, 30 seconds.
Scan my workflow free