Existe uma maneira de alterar ou excluir o e-mail secundário

Olá,

Procurei aqui e na documentação da API, mas não encontrei nenhuma maneira de alterar o e-mail secundário. Minha necessidade principal é excluí-lo, mas talvez queiramos alterá-lo em algum momento.

Obrigado antecipadamente,

Mark

A maneira mais fácil de descobrir como fazer uma solicitação à API para remover o e-mail secundário é criar um usuário de teste com um endereço de e-mail secundário e, em seguida, remover o e-mail pela interface do usuário com o inspetor do navegador aberto na aba de Rede. Esse método é descrito aqui: Como fazer engenharia reversa da API do Discourse.

Parece que você precisa fazer uma solicitação DELETE para /u/<discourse_username>/preferences/email.json

O e-mail que você deseja excluir deve ser enviado como dados de formulário. Por exemplo, email=simon%40foo.com

Obrigado, Simon,

Eu já sabia disso, mas, por algum motivo, cliquei na ferramenta errada no Perfil do Usuário e a opção de exclusão não apareceu. Assim que encontrei a opção correta, examinei-a e descobri o que precisava. Testei no Postman e funcionou!

O comando curl para isso é:

curl --location --request DELETE 'https://[discourse_url]/u/[discourse_user_name]/preferences/email.json?email=[address_to_delete]' \
--header 'Api-Key: [your_api_key]' \
--header 'Api-Username: system' \
--header 'Content-Type: application/json' 

Atualizado para incluir: Não se esqueça de codificar o endereço de e-mail em URL. A API responderá com “success”: “OK”, mas o endereço não será realmente excluído se você não fizer isso.

Mark