Listas
Coleções e rankings, e os jogos dentro deles.
Uma lista é alcançável pelo id ou pelo id público. A resposta traz owned, para o cliente saber se pode escrever antes de tentar.
/api/ v1/ lists/ {id}/ tiersTierlist visível com capas. pool=1 inclui jogos disponíveis para o dono.
/api/ v1/ lists/ {id}/ collaboratorsQuem edita os jogos da lista com o dono, tão visível quanto a própria lista.
/api/ v1/ lists/ {id}/ collaboratorsConvida alguém para editar os jogos. Corpo: username. Só o dono; até 20 pessoas; contas bloqueadas não são encontradas. Colaboradores adicionam, removem, reordenam e marcam jogos; nome, visibilidade e exclusão continuam do dono.
/api/ v1/ lists/ {id}/ collaboratorsRemove um colaborador: profile_id na query. O dono remove qualquer um; um colaborador remove a si mesmo para sair.
/api/ v1/ search/ listsListas públicas, 24 por página. q, kind: COLLECTION ou TIERLIST, sort: recent, oldest ou name; page: 1 a 100.
/api/ v1/ listsAs listas do dono.
/api/ v1/ lists/ foldersAs pastas do dono, com quantas listas há em cada uma, na ordem que ele deu. unfiled conta as listas que não estão em nenhuma pasta. Uma lista pode estar em várias. Cada uma traz id e public_id: o primeiro é o que uma lista aponta, o segundo é o que vai no endereço. Uma pasta é só um título sobre listas: não tem visibilidade própria, então arquivar uma lista privada não a publica e arquivar uma pública não a esconde.
/api/ v1/ lists/ foldersCria uma pasta. Pedir um nome que já existe devolve a pasta que já existe, e `created` diz o que aconteceu.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
nameobrigatório | string | Até 60 caracteres. |
position | integer | A ordem do dono, de 0 a 999. Alfabética não é o que ninguém quer dizer com as próprias estantes. |
/api/ v1/ lists/ folders/ {id}Renomeia uma pasta ou a move na ordem. Aceita o id ou o public_id. A pasta de outra pessoa não é recusada: ela simplesmente não existe para quem pergunta.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
name | string | Até 60 caracteres. |
position | integer | 0 a 999. |
/api/ v1/ lists/ folders/ {id}Esquece uma pasta. As listas dentro dela ficam sem pasta e continuam existindo: arrumar uma estante não é jogar fora o que estava nela.
/api/ v1/ listsCria uma lista. Responde 201.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
nameobrigatório | string | Até 100 caracteres. |
description | string | Até 500 caracteres. |
kind | string | COLLECTION ou TIERLIST. Uma TIERLIST já nasce com cinco faixas: uma criada sem elas não teria onde pôr nada. |
visibility | string | PUBLIC, FOLLOWERS ou PRIVATE. |
ranked | boolean | Um ranking em vez de uma coleção. |
/api/ v1/ lists/ {id}Uma lista com seus itens. Aceita o id ou o id público, e traz `owned`, para o cliente saber se pode escrever antes de tentar.
/api/ v1/ lists/ {id}Renomeia uma lista ou altera descrição, visibilidade, ordenação e comments_scope, que aceita EVERYONE, FOLLOWERS ou NOBODY. folder_ids arquiva a lista nas pastas suas que vierem na lista, substituindo as anteriores: uma lista pode estar em várias, e uma lista vazia tira de todas. Arquivar não muda quem vê o quê.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
name | string | Até 120 caracteres. |
description | string | Até 1000 caracteres. |
visibility | string | PUBLIC, FOLLOWERS ou PRIVATE. |
ranked | boolean | Se a ordem da lista é o ponto dela. |
folder_ids | array | Os ids das suas pastas, até 40. Substitui o conjunto anterior, então [] tira a lista de todas. A pasta de outra pessoa é recusada pelo banco, e não por uma checagem escrita duas vezes. |
/api/ v1/ lists/ {id}Remove uma lista.
/api/ v1/ lists/ {id}/ tiersSalva as faixas de uma tierlist e onde cada jogo está, de uma vez. Não é um PATCH por item: uma tierlist só faz sentido inteira, e salvar uma faixa e o conteúdo dela separadamente deixaria um instante em que um jogo está numa faixa que ninguém definiu.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
tiersobrigatório | array | As faixas, cada uma com id, label, color e position. O id é seu, e não do banco: as faixas são reescritas inteiras a cada salvamento, e são os itens que precisam nomeá-las. Até 26. |
itemsobrigatório | array | Cada jogo, com tier_id, igdb_id, game_slug e position. Um jogo que saiu da biblioteca do dono, ou cujo tier_id não está entre as faixas enviadas, é ignorado em silêncio em vez de derrubar o salvamento. Até 1000. |
/api/ v1/ lists/ {id}/ itemsAdiciona um jogo a uma lista. Responde 201.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
igdb_idobrigatório | integer | O id do jogo no catálogo. |
game_slugobrigatório | string | O slug do jogo. |
/api/ v1/ lists/ {id}/ items/ {item_id}Anota um item, muda a aparência dele na lista, ou o move de lugar. Posição e direção são dois jeitos de dizer a mesma coisa, então mande um ou outro.
Corpo
| Campo | Tipo | Observações |
|---|---|---|
note | string | Até 500 caracteres. |
mark_mode | string | COLOR ou DIM, ou null para tirar o destaque. É só aparência: o que ela significa é o autor que diz, na descrição da lista. O sistema não associa cor a estado nenhum. |
mark_color | string | Com mark_mode COLOR: RED, ORANGE, YELLOW, GREEN, CYAN, BLUE, PURPLE, PINK ou NEUTRAL. |
marked | boolean | Descontinuado. Era "concluído", que é um significado só entre muitos. true vira mark_mode DIM e false tira o destaque. |
position | integer | A posição exata, contando de 0. |
direction | string | up, down ou top, para mover sem saber a posição. |
/api/ v1/ lists/ {id}/ items/ {item_id}Tira um jogo da lista.