uloggdDesenvolvedores
Portal do desenvolvedoruloggd
ComeçarRecursosArcade
Portal do desenvolvedoruloggdVisão geralAutenticaçãoEscoposLimites de usoErrosPaginaçãoVersionamento

Paginação

Um objeto de página, em toda coleção.

Toda coleção responde { data, page }:

{
  "data": [],
  "page": {
    "number": 1,
    "size": 50,
    "total_items": 128,
    "total_pages": 3,
    "has_more": true
  }
}

Passe ?page= para andar. As páginas começam em 1. Qualquer coisa fora de 1 a 1000 responde 400 invalid_request em vez de uma página vazia, para que um laço que perdeu a conta pare em vez de girar.

O catálogo é a única exceção no tamanho: pagina de 24 em 24 e trava na página 100, porque lê um índice de busca e não uma tabela.

curl "https://uloggd.com/api/v1/library?page=2" \
  -H "Authorization: Bearer ulg_live_..."

has_more sai do total, não do tamanho de data. Uma página que volta curta é a última, mas o jeito honesto de perguntar é has_more.

Cópias andam por cursor

/api/v1/library/copies é a única coleção que não anda por número de página. Ela responde { data, page: { size, has_more }, next_cursor }, e a próxima página é ?cursor= com o que veio em next_cursor.

curl "https://uloggd.com/api/v1/library/copies?limit=24&cursor=WyIyMDI2…" \
  -H "Authorization: Bearer ulg_live_..."

O motivo é que uma prateleira muda enquanto se anda por ela. Registrar uma cópia enquanto alguém está na página 2 empurra tudo um lugar adiante, e um deslocamento devolveria de novo a linha que a página 1 já mostrou. O cursor carrega a chave da ordenação e o id da linha juntos, então ele aponta para um lugar e não para uma contagem.

Trocar sort é começar de novo: o cursor pertence à ordem em que foi feito.

Erros

Um formato só, sempre, inclusive no 500.

Versionamento

O que pode mudar debaixo de você, e o que não pode.

Nesta página

Cópias andam por cursor