こんにちは、
ここと API ドキュメントを検索しましたが、セカンダリメールアドレスを変更する方法が見つかりません。私の主な要望はそれを削除することですが、将来的に変更したい場合もあるかもしれません。
よろしくお願いいたします、
マーク
こんにちは、
ここと API ドキュメントを検索しましたが、セカンダリメールアドレスを変更する方法が見つかりません。私の主な要望はそれを削除することですが、将来的に変更したい場合もあるかもしれません。
よろしくお願いいたします、
マーク
セカンダリメールアドレスを削除するための API リクエストの作成方法は、セカンダリメールアドレスを持つテストユーザーを作成し、ブラウザのインスペクタを開いてネットワークタブを表示した状態で UI を通じてそのメールアドレスを削除するのが最も簡単です。この方法は、こちらで解説されています:Discourse API のリバースエンジニアリング方法。
DELETE リクエストを /u/<discourse_username>/preferences/email.json に対して送信する必要があります。
削除したいメールアドレスは、フォームデータとして渡します。例えば、email=simon%40foo.com のようにします。
シモン、ありがとう。
実はこれは知っていたのですが、何らかの理由でユーザープロフィールの「レンチ」アイコンを間違えて押してしまい、削除オプションが表示されませんでした。正しいオプションにたどり着き、それを調べて必要な情報を見つけました。Postman で試してみたら、動作しました!
このための curl コマンドは以下の通りです:
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'
追記: メールアドレスの URL エンコーディングを忘れないでください。これを行わないと、API は “success”: “OK” と応答しますが、実際にはアドレスは削除されません。
マーク