Catálogo
Jogos, do mesmo catálogo que o site lê.
O único escopo que não toca o dado de ninguém, e o que funciona numa chave que não tem mais nada. Só os filtros sobre os seus próprios jogos, no fim da página, pedem também library.read.
/api/ v1/ games/ {slug}/ activityAtividade visível do jogo e totais de sessões. Aceita os filtros de atividade. sessions e minutes contam as sessões fechadas; days conta os dias do calendário em que houve sessão, cada dia uma vez só, mesmo com duas sessões nele ou sessões que se sobrepõem. A sessão ao vivo ainda aberta não entra em nenhum dos três.
/api/ v1/ games/ ratingsMédias da comunidade por jogo. Responde rating (a média, para mostrar), rating_count e weighted_rating (a média puxada para a média do site por quantos votaram, para ordenar). ids: 1 a 200 ids separados por vírgula. Público.
/api/ v1/ games/ statsO que a comunidade do uloggd faz com cada jogo: pessoas distintas com o jogo na biblioteca, jogando, que terminaram, na lista de desejos, favoritos, análises, jornadas e sessões, mais popularidade e tendência do uloggd. Recalculado a cada poucos minutos a partir da atividade do site; nenhum número do IGDB entra. ids: 1 a 200 ids separados por vírgula. Público.
/api/ v1/ gamesBusca no catálogo, com os mesmos filtros da busca do site. Pública: responde sem chave nem sessão. Cada jogo traz type, o tipo do IGDB (0 jogo principal, 1 DLC, 2 expansão, 3 pacote, 4 expansão independente, 8 remake, 9 remaster, 10 edição expandida, 11 port; os mesmos ids do filtro types), ou null quando o catálogo não diz. Os filtros sobre os seus próprios jogos (played, library, unplayed, wishlist, hideIgnored) são a exceção: leem a biblioteca de quem pergunta, então pedem uma sessão ou uma chave que tenha também library.read, e a resposta vem com Cache-Control: private, no-store.
Parâmetros
| Campo | Tipo | Observações |
|---|---|---|
q | string | Texto livre, até 80 caracteres. |
platforms | string | Ids do IGDB de plataformas, separados por vírgula, até 24. |
release | string | released ou upcoming. Padrão: todos. |
period | string | last-30-days, last-90-days, this-year ou next-3-months, contados a partir de hoje (UTC). |
yearFrom | integer | Primeiro ano de lançamento, de 1950 a 2100. |
yearTo | integer | Último ano de lançamento, de 1950 a 2100. |
demo | string | 1 para só jogos com uma demo jogável agora no spawnd. |
steam | string | 1 para só jogos que o IGDB liga a uma página da Steam. |
genres | string | Ids do IGDB de gêneros, separados por vírgula, até 24. |
genresMode | string | Com genres: all exige todos; padrão any, qualquer um. |
themes | string | Ids do IGDB de temas, separados por vírgula, até 24. |
themesMode | string | Com themes: all exige todos; padrão any, qualquer um. |
modes | string | Ids do IGDB de modos de jogo, separados por vírgula, até 24. |
perspectives | string | Ids do IGDB de perspectivas, separados por vírgula, até 24. |
types | string | Tipos do IGDB separados por vírgula (0 jogo principal, 8 remake, 9 remaster...), até 24. Sem busca, o padrão é 0, 8 e 9. |
language | string | Até 8 idiomas separados por vírgula (pt, pt-BR, en-US) na interface, no áudio ou nas legendas. pt encontra pt-BR e pt-PT. Só onde o IGDB informa. |
interface | string | Até 8 idiomas separados por vírgula (pt, pt-BR, en-US) na interface. pt encontra pt-BR e pt-PT. Só onde o IGDB informa. |
audio | string | Até 8 idiomas separados por vírgula (pt, pt-BR, en-US) no áudio. pt encontra pt-BR e pt-PT. Só onde o IGDB informa. |
subtitles | string | Até 8 idiomas separados por vírgula (pt, pt-BR, en-US) nas legendas. pt encontra pt-BR e pt-PT. Só onde o IGDB informa. |
age | string | Órgão e classificação: esrb, pegi, cero, usk, grac, class_ind, acb, um hífen e o degrau (class_ind-12, pegi-16, esrb-t). Jogos com classificação desse órgão até esse degrau; só onde o IGDB informa. |
publishers | string | Ids do IGDB de empresas, separados por vírgula, até 24. |
role | string | Com publishers: publisher ou developer. Padrão: qualquer um. |
engines | string | Nomes de motores separados por vírgula, até 24. |
franchises | string | Ids do IGDB de franquias, separados por vírgula, até 24. |
series | string | Ids do IGDB de séries (collections), separados por vírgula, até 24. |
rated | string | 1 para só jogos com nota no uloggd. |
reviewed | string | 1 para só jogos com alguma análise no uloggd. |
anticipated | string | 1 para só jogos ainda não lançados que alguém aguarda. |
rating | integer | Nota mínima no uloggd, de 0 a 100. |
votes | integer | Mínimo de notas no uloggd. |
libraries | integer | Mínimo de pessoas com o jogo na biblioteca no uloggd, de 1 a 1000000. |
status | string | early_access, beta ou alpha, separados por vírgula: qualquer um deles, como o IGDB informa. |
hideCancelled | string | 1 para deixar de fora jogos que o IGDB dá como cancelados ou rumores. |
hoursMin | integer | Horas da campanha segundo a estimativa do IGDB, no mínimo (1 a 500). Só onde o IGDB informa. |
hoursMax | integer | Horas da campanha segundo a estimativa do IGDB, no máximo (1 a 500). Só onde o IGDB informa. |
obscure | string | 1 para incluir jogos pouco conhecidos ao navegar sem busca. |
played | string | 1 para só jogos que você jogou. Só com sessão, ou com uma chave com library.read: sem nenhuma das duas a resposta é 401 unauthorized, e uma chave sem library.read recebe 403 insufficient_scope. |
library | string | 1 para só jogos na sua biblioteca. Só com sessão, ou com uma chave com library.read: sem nenhuma das duas a resposta é 401 unauthorized, e uma chave sem library.read recebe 403 insufficient_scope. |
unplayed | string | 1 para deixar de fora os jogos que você jogou. Só com sessão, ou com uma chave com library.read: sem nenhuma das duas a resposta é 401 unauthorized, e uma chave sem library.read recebe 403 insufficient_scope. |
wishlist | string | 1 para só jogos na sua lista de desejos. Só com sessão, ou com uma chave com library.read: sem nenhuma das duas a resposta é 401 unauthorized, e uma chave sem library.read recebe 403 insufficient_scope. |
hideIgnored | string | 1 para deixar de fora os jogos que você ignorou. Só com sessão, ou com uma chave com library.read: sem nenhuma das duas a resposta é 401 unauthorized, e uma chave sem library.read recebe 403 insufficient_scope. |
sort | string | popular, trending, rating, votes, newest, oldest, hype, name. trending segue a tendência da comunidade do uloggd, e votes, quantas notas o jogo tem no uloggd. Padrão: popular. |
page | integer | De 1 a 100. Padrão: 1. |
Exemplo
{
"data": [
{
"id": 14593,
"slug": "hollow-knight",
"name": "Hollow Knight",
"release_year": 2017,
"type": 0,
"rating": 92,
"genres": ["Platform", "Adventure"],
"spawnd_available": false
}
],
"page": { "number": 1, "size": 24, "total_items": 812,
"total_pages": 34, "has_more": true }
}/api/ v1/ games/ {slug}Um jogo pelo slug, no mesmo formato da busca (com type).
Filtros sobre os seus jogos
A busca (GET /api/v1/games) também filtra pelos jogos de quem pergunta,
com 1 em cada um:
played: só os que você jogou, a estante "Jogados" da biblioteca (estadoCOMPLETED);library: só os que estão na sua biblioteca, em qualquer estado;unplayed: o catálogo sem os deplayed;wishlist: só os da sua lista de desejos;hideIgnored: o catálogo sem os jogos que você ignorou.
Eles leem a biblioteca de quem pergunta, que é o que library.read guarda,
então pedem uma sessão ou uma chave com library.read além de
catalog.read. Sem chave nem sessão a resposta é 401 unauthorized, e não
uma lista vazia, que pareceria um resultado. Uma chave sem library.read
recebe 403 insufficient_scope com scope: "library.read".
A resposta que usou um desses filtros vem com
Cache-Control: private, no-store: é sobre uma conta só, e nada no caminho
deve guardá-la. As outras buscas continuam públicas como antes.