Recebendo notificações de um usuário

Echando a este tópico: How to allow users to get their API Key - #4, decidi criar minha aplicação apenas para administradores, que podem gerar uma chave de API facilmente através do painel /admin. A aplicação está funcionando, mas há um problema que preciso resolver: a chave de API precisa ter acesso global (ou seja, leitura e escrita) para acessar o endpoint /notifications.json?username=theusername. No painel de criação da API, vejo que existe um escopo “show” que permite o acesso ao endpoint “/users/:username/notifications”. No entanto, quando tento usar a chave com escopo no Postman para essa URL, recebo código HTML. O mesmo ocorre com “/users/:username/notifications.json”, que me envia informações sobre o usuário, mas não sobre as notificações. Além disso, não tenho acesso a /notifications.json?username=… apenas com esse escopo. Concluo que a chave global é a única solução para obter as notificações corretamente, certo? Obrigado pela ajuda.

Não consigo reproduzir isso.

Obtive uma chave de API de administrador assim:

e a seguinte solicitação cURL funciona perfeitamente:

➜  ~ curl 'https://meta.discourse.org/u/falco/notifications.json' \
-H "Api-Key: whyisthisapikeysolonglol"

Obrigado novamente pela sua resposta, Falco. Como mencionei, essa URL efetivamente me enviou uma resposta, mas não se trata das notificações e sim das informações do usuário, como pode ser visto nesta imagem:

Isso é mesmo verdade!

Parece que a rota /u/:username/notifications é apenas uma rota do navegador, e o aplicativo Ember usará apenas a rota padrão /notifications.json para buscar os dados reais. E essa rota não está na lista de escopos possíveis de chaves de API de administrador no momento.

Então, atualmente, para notificações, é ou Chave de API de Usuário ou Chave de API de Administrador sem escopo.

Obrigado, é tudo o que eu precisava para ter informações. Saudações :slight_smile: