Como atualizar em massa o nível de notificação de categoria do usuário?

Eu realmente tenho, sim.


    category_notifications = {'muted_category_ids': [54],
                              'regular_category_ids': [],
                              'tracked_category_ids': [],
                              'watched_category_ids': [],
                              'watched_first_post_category_ids': [61],
                             }

    api(config, f\"u/{username}.json\", method='put',
          json=category_notifications)

… onde api() é um wrapper simples em torno do módulo Python Requests e apenas faz um PUT HTTP para /u/qualquernome de usuário que você está mudando.json no seu site Discourse, e a carga útil são apenas as categorias que você deseja alterar. (Você pode pular qualquer uma que não queira alterar.)

Note que você precisa dos IDs numéricos das categorias — nomes não funcionarão. E, claro, se você quiser mesclar ou preservar o que já está lá, terá que ler o usuário primeiro.