Paginação
Consultas de lista usam paginação por cursor no estilo Relay. Você avança passando o cursor da última página de volta como after.
Formato da conexão
Um campo paginado retorna uma conexão: uma lista de edges (cada uma com um node e um cursor opaco) mais pageInfo.
Primeira página
Solicite um tamanho de página com first:
graphql
query FirstPage {conversations(first: 25) {edges {cursornode { conversationId threads { threadId summary } }}pageInfo { hasNextPage endCursor }}}
Próxima página
Se pageInfo.hasNextPage for true, passe pageInfo.endCursor como after para buscar a próxima página:
graphql
query NextPage {conversations(first: 25, after: "<endCursor from previous page>") {edges { node { conversationId } }pageInfo { hasNextPage endCursor }}}
Observações
- Cursores são opacos — não os interprete nem construa; apenas devolva o que recebeu.
firsté limitado pelo servidor por uma janela de horário (America/São Paulo): até 10 durante o dia (06:00–22:00) e até 100 à noite (22:00–06:00). Requisições maiores são reduzidas ao limite ativo, e uma requisição semfirstretorna a página padrão (25), igualmente reduzida a esse limite.- Por padrão, as conversas são ordenadas das mais antigas para as mais recentes pela sua thread mais antiga — passe
orderBy: DESCpara as mais recentes primeiro. Veja a Referência do schema para o formato completo. - Repita o mesmo valor de
orderByem todas as páginas de uma mesma execução de paginação — um cursoraftersó é válido combinado com a direção sob a qual foi emitido.