Olá,
Estou usando o plugin Discourse Assign e consegui fazer funcionar, aqui está o código Python:
import requests
# Você pode obter isso por engenharia reversa da solicitação de atribuição e verificando os parâmetros e valores no console, como alguém mencionou antes :)
base_url = 'SUA_URL'
endpoint = '/assign/assign'
payload = {
'username': 'SEU_NOME_DE_USUÁRIO', # O nome de usuário da pessoa para quem você deseja atribuir o tópico
'group_name': '',
'target_id': NUMERO_DO_TOPICO,
'target_type': 'Topic'
}
headers = {
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Referer': 'URL_DO_TOPICO',
'Accept': '*/*',
'Api-Key': 'SUA_API_KEY',
'Api-Username': 'SEU_NOME_DE_USUÁRIO'
}
response = requests.put(f"{base_url}{endpoint}", data=payload, headers=headers)
if response.status_code == 200:
print("Atribuição bem-sucedida!")
else:
print(f"Falha na atribuição com código de status {response.status_code}: {response.text}")
Espero que ajude ^^