Response envelope
All list endpoints share the same envelope:total is the complete record count, not the number of rows in the current page — use it to compute how many pages to fetch.
Paginated endpoints
Other
List* endpoints (GroupListAllGroups, PolicyListAllPolicies, AppdataListUserAppNames, FileListUserFiles, SessionListUserSessions, etc.) return the full result set in one response — their collections are expected to stay small.
Cursor-based pagination is not available — offset/limit is the only mechanism.
Example: paging through all users
Bulk listing is gated by a short-lived unlock UUID (see Authentication). Fetch the unlock, then iterate:unlockuuid and continue from the same offset.