Iteração eficiente sobre listas grandes — parâmetros, envelope, exemplos em 5 linguagens, gotchas de ordenação.
Endpoints de listagem (GET /colaborador, GET /registro-ponto, etc.)
paginam resultados via query string. O padrão é idêntico em todos os
endpoints públicos da Pontua, então você pode encapsular uma única função
de paginação no seu código.
GET /colaborador?pagina=0&limite=100GET /colaborador?pagina=1&limite=100 ← próxima páginaGET /colaborador?pagina=2&limite=100
pagina é zero-indexed:pagina=0 é a primeira página. Não é
pagina=1 como em alguns sistemas. Tenha cuidado se sua aplicação faz
page = userInput - 1 por hábito.
Se dados estão sendo modificados enquanto você itera, podem aparecer
duplicatas (item lido em página 1 reaparece na página 3) ou faltar
itens. Para datasets que mudam ativamente:
Use filtro de período fechado (atualizadoAte=<data passada>) onde aplicável
Ou aceite que pode haver pequena inconsistência (ok para dashboards, problemático para auditoria)
Se um colaborador é deletado enquanto você itera, totalRegistros na
página 5 pode ser menor que na página 0. Considere isso uma
estimativa, não verdade absoluta.
?limite=500 retorna no máximo 100 resultados (cap server-side).
Sempre cheque data.limite no response — se não bate com o que enviou,
use o real para calcular totalPaginas.