Digite para filtrar os verbetes do Glossário.

    Banco de dados · Developer Workspace

    O que é Cursor de paginação?

    Cursor de paginação identifica a continuação de uma consulta. Entenda tokens, referências por identificador e limites ao percorrer listas mutáveis.

    Também chamado de: cursor, chave de continuação, paginação por cursor

    Uma referência para continuar a consulta

    Cursor de paginação é uma referência usada para continuar a leitura de uma coleção. A API pode devolver um token de continuação ou orientar o uso de um identificador recebido na página anterior. A chamada seguinte fornece essa referência conforme o contrato.

    O cursor evita que a integração precise tratar toda continuação como um número de página. Ele pode representar os valores de ordenação do último item, um estado temporário no serviço ou outra estratégia. Sua aparência não revela necessariamente o mecanismo utilizado.

    Um cursor opaco deve ser reutilizado sem interpretação. Já algumas APIs documentam explicitamente parâmetros baseados no identificador de um objeto. Nos dois casos, você precisa seguir a convenção do serviço, sem construir um valor por suposição.

    Cursor de API e cursor SQL

    O nome também aparece no banco de dados. No PostgreSQL, DECLARE cria um cursor SQL, e FETCH recupera partes do resultado associado. Esse mecanismo tem condições próprias de sessão e transação, diferentes do contrato de paginação apresentado pela API.

    Receber um cursor pela API não comprova que o servidor mantém um cursor SQL aberto. A referência pode conter apenas os valores usados para montar a próxima consulta. Você precisa distinguir o que a API promete ao cliente da implementação escolhida para buscar os registros.

    Um exemplo de resposta

    Resposta fictícia com continuaçãojson
    {
    "itens": [{"id": 7}, {"id": 12}],
    "proximo_cursor": "REFERENCIA_FICTICIA",
    "tem_mais": true
    }

    O exemplo apenas ilustra um contrato possível. A integração envia o valor de proximo_cursor na chamada seguinte usando o parâmetro documentado. O nome do campo, o limite e o sinal de término variam entre APIs.

    Codificar um valor em base64 não o torna secreto nem garante sua integridade. O serviço precisa validar a referência recebida e continuar aplicando as permissões do perfil autenticado. Possuir um cursor não deve conceder acesso adicional à coleção.

    Ordenação e ponto de continuação

    Uma implementação baseada em chave pode continuar depois do último par de valores ordenados, como data e identificador. Se a página terminar no meio de um grupo com a mesma data, buscar apenas datas posteriores omitiria os itens restantes daquele grupo. O identificador usado como desempate permite distinguir a posição dentro dele, desde que a consulta aplique a mesma ordenação na continuação.

    Essa estratégia pode evitar alguns deslocamentos causados por novas linhas antes do ponto já percorrido. Ainda assim, mudanças nos campos de ordenação, exclusões e filtros podem alterar os resultados. Cursor não é uma promessa universal de leitura imutável.

    O cursor também pode expirar, e repetir a mesma referência pode observar uma coleção diferente. Defina como retomar uma exportação interrompida conforme o suporte da API, mantendo o registro do que já foi concluído. Guardar apenas o último token não resolve todos esses casos.

    O cursor pertence à consulta

    Alterar filtros, ordenação ou perfil autenticado enquanto reutiliza uma referência pode ser inválido. Alguns serviços incluem essas condições no token, enquanto outros esperam que a integração as preserve. Confira o contrato antes de misturar parâmetros de consultas distintas.

    O sinal de término também varia. Uma API pode omitir a continuação, devolver nulo ou fornecer um campo booleano. Não trate qualquer ausência como fim sem verificar se a resposta foi válida e completa.

    Como testar a sequência

    Prepare uma coleção conhecida com vários registros na mesma data e faça uma página terminar no meio desse grupo. Ao continuar, compare os identificadores para conferir se todos aparecem uma única vez no conjunto estável. Depois, teste as mudanças e interrupções previstas para a integração, incluindo a resposta a uma referência inválida ou expirada.

    O verbete de paginação reúne as condições necessárias para interpretar o percurso completo.

    Dúvidas frequentes

    Perguntas frequentes sobre Cursor de paginação

    Todo cursor é um token opaco?
    Algumas APIs oferecem tokens opacos, enquanto outras documentam continuação por identificador. Use o mecanismo e os valores previstos pelo serviço.
    Repetir o cursor sempre devolve os mesmos itens?
    A coleção pode mudar, e a referência pode ter validade limitada. A garantia depende do contrato e da estratégia utilizada pela API.
    Um cursor codificado é secreto?
    Codificação, como base64, não garante sigilo nem integridade. O serviço precisa validar a referência e aplicar as permissões da consulta.
    Posso mudar os filtros e manter o cursor?
    A referência pode estar vinculada aos filtros e à ordenação anteriores. Confira o contrato antes de combinar parâmetros de consultas diferentes.

    Para continuar

    Recursos relacionados

    Aplicação na formação

    Developer Workspace

    O cursor de paginação indica como continuar a consulta nas APIs que entregam listas em partes.

    Conhecer a formação
    Capa da Formação Developer Workspace

    Fontes consultadas

    Referências deste verbete

    Este verbete ajudou você?

    Planos Promovaweb

    Tire seus projetos do papel

    O Plano Martech cobre automação e atendimento. O Plano IA Makers acrescenta desenvolvimento com IA, enquanto o Plano Founders trata de gestão de negócios. Todos são anuais.

    Plano Martech

    Para conectar automação, marketing e atendimento com infraestrutura própria.

    R$ 897

    R$ 597/ano

    • Grade de automação, atendimento, marketing e análise de indicadores
    • Instalador Exclusivo Promovaweb
    • n8n, Evolution API, Chatwoot e Mautic
    • Trilha DevOps incluída
    • Encontros ao vivo (terça e quinta)
    • Comunidade e acompanhamento
    Conhecer o plano

    Plano Founders

    Plano anual para fazer um projeto de tecnologia avançar, com 90 dias de mentoria intensiva. R$ 1.997 à vista ou até 10x de R$ 219 no cartão.

    R$ 1.997/ano

    • 12 meses de acesso ao Founders
    • 90 dias de mentoria intensiva, um encontro por dia útil
    • Dia de conteúdo (terça e quinta) e War Room (segunda, quarta e sexta)
    • Encontro semanal em grupo após a fase intensiva
    • Formação Vibe Coding incluída no plano anual
    • Consultoria individual de até duas horas (bônus)
    Conhecer o plano