Silenciar usuário via API

Caso de uso:
Estamos utilizando uma plataforma de pagamento de terceiros para “rebaixar” um usuário em caso de não pagamento ou renovação. Quando isso ocorre, queremos ser capazes de “rebaixá-lo” no Discourse também. Ou seja, queremos que ele possa acessar o fórum, mas não criar conteúdo. Por esse motivo, “silenciar” faz mais sentido.

Vi que a documentação da API possui a capacidade de suspender um usuário, mas não de silenciá-lo. Existe alguma maneira de fazer isso?

Vi este outro tópico, discutindo a API de administração para silenciar usuários. No entanto, não a vi documentada. Espero que ela não tenha sido removida :grimacing:

Atualização rápida: descobri que fazer uma requisição PUT para o endpoint mencionado aqui realmente funciona. O “motivo” também funciona.

Existe algum motivo para isso não estar incluído na documentação?

1 curtida

Por que não simplesmente removê-los do grupo que permite postar? É para isso que servem as permissões de categoria. (Ou talvez haja um motivo para silenciá-los…)

Você pode detalhar? As permissões de categoria não se aplicam a itens como “Sem categoria”. Além disso, sem um plugin, não há uma granularidade de “não pode postar, mas pode ler” por categoria.

Portanto, a única opção aparentemente viável é silenciar os usuários até que sua renovação de associação ocorra. Dessa forma, eles poderão ler, mas não postar, em todo o fórum.

Não tenho certeza sobre “sem categoria”.

Você pode definir categorias como de leitura pública e limitar quem pode postar e quem pode responder. Como criar categorias privadas usando as configurações de segurança de categoria

Você também pode mover esses usuários para tl0 para controlar o envio de mensagens privadas.