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

Escopos

O que cada permissão alcança, e as que faltam de propósito.

Uma chave carrega um conjunto de escopos, e uma requisição fora desse conjunto é recusada antes de chegar ao banco. Peça os menos que resolvem: uma chave é mais fácil de entregar, e mais barata de perder, quando pode menos.

EscopoAlcança
lists.readPremiações
lists.writePremiações
profile.readCatálogo
catalog.readCatálogo
profile.writePerfil
library.readBiblioteca
library.writeBiblioteca
reviews.readAvaliações
reviews.writeAvaliações
journal.readDiário
journal.writeDiário
screenshots.readCapturas
screenshots.writeCapturas
social.readSocial
social.writeSocial
comments.readComentários
comments.writeComentários
likes.writeCurtidas

Escopos se chamam <recurso>.<read|write>. O conjunto que uma chave pode ter é uma constraint no banco, e não uma lista no código da aplicação, então um escopo que não existe não pode ser guardado por caminho nenhum, inclusive um escrito depois que esqueça de checar.

Ausentes de propósito

Sem escopo de comentários. Comentário é a superfície por onde o abuso chega, e uma API de publicar é uma API de abuso. Ela espera até existir um motivo.

  • Sem escopo de moderação. Poder de moderador não se delega a uma chave.
  • Sem exclusão de conta. Isso passa por segundo fator e confirmação digitada, e uma chave não é nenhum dos dois.
  • Nada alcança o dado privado de outra conta. social.read devolve quem o dono segue, não o que essas pessoas têm.
  • Sem escopo do Arcade. Nesta fase nenhum escopo abre o Arcade a uma chave. O identify do Arcade é o consentimento de um jogador dentro do SDK, e não um escopo de chave.

catalog.read é diferente

É o único escopo que não toca o dado de ninguém, e o que a maioria das integrações realmente quer. Funciona numa chave que não tem mais nada, exatamente a chave certa para um bot que só consulta jogos.

A única exceção são os filtros da busca sobre os jogos do próprio dono (played, library, unplayed, wishlist e hideIgnored em GET /api/v1/games): eles leem a biblioteca, então pedem também library.read. Sem esses filtros, a busca não toca nada de ninguém.

Autenticação

Um cabeçalho, um formato de token, e quatro recusas que respondem igual de propósito.

Limites de uso

Contados por chave, e não por conta, e informados em toda resposta.

Nesta página

Ausentes de propósitocatalog.read é diferente