Olá amigos,
Estou construindo um aplicativo de fórum móvel usando a API do Discourse, e o Google exige que todos os aplicativos com UGC tenham um recurso de bloqueio.
Pesquisei e parece que o Discourse permite que um usuário ignore outro usuário, o que atenderia a esse requisito.
No entanto, quando uso a seguinte API para ignorar um usuário, recebo um erro 422 que diz “Desculpe, você não pode ignorar esse usuário.” para qualquer usuário que tentei ignorar.
u/{username}/notification_level.json
com
notification_level=ignore
Alguém sabe por que isso está acontecendo?
Obrigado antecipadamente e melhores cumprimentos,
Chris
Olá e bem-vindo @chrisbai2021 
O recurso de ignorar é baseado no Nível de Confiança, então pode ser que seu usuário de teste ainda não esteja no TL2 (o nível padrão para usar esse recurso).
Você também não pode ignorar administradores e moderadores, então também dependeria de quem você está tentando ignorar. 
3 curtidas
Olá @JammyDodger, obrigado pela rápida resposta.
Isso faz sentido - acho que isso significa que precisamos definir todos para pelo menos TL2 no momento do cadastro para estarmos em conformidade com o Google…
Obrigado novamente!
Alternativamente, você pode ajustar a configuração nível mínimo de confiança para permitir ignorar:
Também existe um recurso de ‘silenciar’ que pode ser do seu interesse, dependendo do que você precisa. Isso está disponível para todos.
E aqui está um tópico com muitos recursos e seus níveis de confiança, além das configurações de administrador conectadas a eles:
Tabela de Permissões de Nível de Confiança (incluindo Funções de Moderador)
2 curtidas
Ah ótimo, obrigado por essas dicas!
Tentei me dar um TL2 + diminuir o nível mínimo de confiança para permitir ignorar para TL0. No entanto, agora estou recebendo um erro 500.
Para testar as coisas, alterei o notification_level fornecido para mute e a solicitação foi bem-sucedida.
Eu me pergunto se há uma configuração de site para permitir ignorar como um recurso, afinal… tenho procurado nas configurações de administrador e não vi nada até agora…
Ah, acho que talvez eu precise fornecer um expiring_at…
1 curtida
Ao observar a solicitação que é enviada quando executo a ação na interface do usuário, você pode precisar adicionar o período de tempo:
Editar:
Ah, você se adiantou. 
1 curtida
Incrível, obrigado! Isso é super útil 
1 curtida
Isso funcionou!! Mas tenho uma última pergunta…
Parece que as postagens de usuários ignorados estão ocultas, mas não os tópicos… este parece ser o caso na interface web também. Isso é esperado?
Ah, acho que preciso usar ignored_usernames no objeto do usuário para implementar o comportamento de ocultar 