Como habilitar este campo - "Solved" - programaticamente para cada categoria

Pelo que sei, se você está criando categorias com um script, presumo que você esteja usando JSON para adicionar as categorias. Você teria que fazer algumas alterações no endpoint e no script. Você também pode consultar esta documentação: Discourse Categories API.

No entanto, o Discourse é uma ferramenta poderosa. Você pode conferir este guia: Reverse Engineering the Discourse API. Como o Discourse é suportado por uma API JSON completa, você pode fazer a engenharia reversa dela, fazer as alterações necessárias e fazê-la funcionar conforme necessário.

Uma dica rápida:

  • Altere a configuração desejada de “Resolvido” manualmente na interface do usuário.
  • Inspecione as requisições de rede feitas pelo navegador para identificar o endpoint exato da API, o método de requisição (por exemplo, PUT) e a carga útil.

Em um script Python, ficaria algo assim:

payload = {
        "enable_solved": True  # Ajuste isto
    }

response = requests.put(url, headers=headers, json=payload)
if response.status_code == 200:
    print("Categoria atualizada")
else:
    print(f"Falha: {response.status_code} - {response.text}")

update_category_settings(category_id=123)

PS: Não tenho certeza absoluta sobre isso, mas recentemente criei alguns scripts, então esta resposta é baseada nas coisas que encontrei até agora. :slightly_smiling_face: