This usually comes down to how GoHighLevel handles pagination versus how Qlik’s REST connector expects it.
For the /v1/contacts endpoint, GoHighLevel doesn’t paginate purely via a nextPageUrl in the response body the way some APIs do. Instead, pagination is driven by query parameters like limit and offset (or internally generated cursors), and the meta object can be inconsistent depending on request size and rate limits.
A few points that may explain what you’re seeing:
-
Partial load (106 rows)
Qlik often stops early if the pagination path doesn’t resolve consistently across responses. In GoHighLevel, thenextPageUrlis not always guaranteed to be present or stable for every page, especially if the API throttles or returns cached responses. -
502 on reload with
meta/nextPageUrl
This is commonly caused by Qlik repeatedly hitting the same endpoint too quickly. GoHighLevel has fairly aggressive rate limits, and Qlik’s reload engine doesn’t always respect API backoff, which can trigger upstream gateway errors (502). -
Why Postman works but Qlik doesn’t
Postman executes requests sequentially and slowly, while Qlik fires automated pagination calls much faster. That difference alone can expose rate-limit or timeout behavior.
Practical approach that usually works better
Instead of relying on Next URL pagination, try:
-
Disable “Next URL” pagination in Qlik
-
Manually paginate using
limit+offset -
Loop in the load script until returned row count < limit
This gives you deterministic control and avoids dependency on meta.nextPageUrl.
Also:
-
Make sure headers are set explicitly:
Authorization: Bearer <API_KEY>Content-Type: application/json -
Avoid loading unnecessary fields on the first pass (contacts endpoint payload can be heavy).
From experience, GoHighLevel’s API is reliable, but pagination handling varies by endpoint, and Qlik’s REST connector is stricter than tools like Postman.
Hope this helps narrow it down.