uloggdDesenvolvedores
Portal do desenvolvedoruloggd
ComeçarRecursosArcade
Portal do desenvolvedoruloggdIdentidadeCatálogoPerfilBibliotecaAvaliaçõesDiárioListasPremiaçõesCapturasSocialContaNotificaçõesComentáriosCurtidasHistóricoPessoasMineraisArcade

Notificações

A caixa de entrada, já resolvida.

Cada notificação chega com o autor e com path, o endereço para onde ela aponta. Resolver isso costumava ser trabalho de quem lê: onze leituras encadeadas, porque o endereço de uma resposta é o endereço do que ela responde mais uma âncora. É um join, e acontece onde os joins acontecem.

Os avisos do próprio sistema, os da moderação e os do Arcade, chegam com actor null: eles nunca dizem qual pessoa da equipe agiu.

path vem sem o prefixo de idioma (ele é de quem lê), e vem null quando não há mais para onde ir.

GET/api/v1/notifications

A caixa de entrada, mais recentes primeiro, com as preferências junto. Cada item traz path: o endereço para onde ele aponta, sem o prefixo de idioma, que é de quem lê e não da notificação. Vem null quando não há mais para onde ir (a publicação sumiu, ou quem lê não pode mais vê-la) e aí as palavras ficam sem link, em vez de apontarem para uma página que recusaria. actor vem null nos avisos do próprio sistema, os da moderação e os do Arcade: eles nunca dizem qual pessoa da equipe agiu.

Escopo profile.read · Conta na cota read

Parâmetros

CampoTipoObservações
limitintegerQuantas trazer, de 1 a 100. O padrão é 40.

Exemplo

{
  "data": [
    {
      "id": "...",
      "kind": "post_comment",
      "created_at": "2026-09-05T18:00:00.000Z",
      "read_at": null,
      "target_title": "Hollow Knight",
      "actor": { "username": "ada", "display_name": "Ada", "avatar_url": null },
      "path": "review/aB3xY#comment-9kQ2",
      "is_reply": true
    }
  ],
  "preferences": { "follows_enabled": true, "comments_enabled": true }
}
PATCH/api/v1/notifications

Marca tudo o que está por ler como lido.

Escopo profile.write · Conta na cota write

PATCH/api/v1/notifications/{id}

Marca uma como lida. Fazer duas vezes não move a hora: a segunda chamada responde a que a primeira escreveu.

Escopo profile.write · Conta na cota write

PATCH/api/v1/notifications/preferences

Liga e desliga o que merece um aviso. Mande só o que muda.

Escopo profile.write · Conta na cota write

Corpo

CampoTipoObservações
follows_enabledbooleanVerdadeiro para receber, falso para não.
review_likes_enabledbooleanVerdadeiro para receber, falso para não.
list_likes_enabledbooleanVerdadeiro para receber, falso para não.
comments_enabledbooleanVerdadeiro para receber, falso para não.
screenshots_enabledbooleanVerdadeiro para receber, falso para não.
journal_likes_enabledbooleanVerdadeiro para receber, falso para não.
GET/api/v1/notifications/devices

Os navegadores registrados para receber push, do mais recente ao mais antigo.

Escopo profile.read · Conta na cota read

POST/api/v1/notifications/devices

Registra um navegador. Reinscrever no mesmo navegador devolve o mesmo endpoint, então repetir atualiza a inscrição em vez de criar outra; um endpoint que já é de outra conta responde 409.

Escopo profile.write · Conta na cota write

Corpo

CampoTipoObservações
endpointobrigatóriostringO endereço que o serviço de push deu a este navegador.
p256dhobrigatóriostringA chave pública da inscrição.
authobrigatóriostringO segredo de autenticação da inscrição.
device_labelstringUm nome curto só para reconhecer o aparelho na lista.
DELETE/api/v1/notifications/devices/{id}

Esquece um aparelho. O navegador dele continua inscrito no serviço de push até se desinscrever, o que só ele mesmo pode fazer.

Escopo profile.write · Conta na cota write

Conta

A conta em si, e só com sessão.

Comentários

As respostas sob uma publicação e sob um perfil.