こんにちは。ホストされた Discourse を OAuth とともに利用しています。アカウント削除処理を行う際、Discourse インスタンスからの削除を見落としていることに突然気づきました。
API を使ってアカウントを匿名化したり、プログラムで削除したりできればいいのですが、Discourse のアカウント ID がわからないため、簡単な方法が見つかりません。
何か見落としていることがあるでしょうか?ご提案があればお願いします。
ありがとうございます、
Andrew
こんにちは。ホストされた Discourse を OAuth とともに利用しています。アカウント削除処理を行う際、Discourse インスタンスからの削除を見落としていることに突然気づきました。
API を使ってアカウントを匿名化したり、プログラムで削除したりできればいいのですが、Discourse のアカウント ID がわからないため、簡単な方法が見つかりません。
何か見落としていることがあるでしょうか?ご提案があればお願いします。
ありがとうございます、
Andrew
OAuth ID プロバイダーと Discourse の間でメールアドレスが一致しているかどうかご存知ですか?もし一致している場合、認証付きの API リクエストを /admin/users/list/all.json?email=<ユーザーのメールアドレス> に送信することで、メールアドレスに基づいて Discourse のユーザーを取得できます。例如下記:
curl -X GET "http://localhost:3000/admin/users/list/all.json?email=bob@example.com" \
-H "Api-Key: $api_key" \
-H "Api-Username: system"
一致しているはずです。ありがとうございます──それが私が欠かしていた呼び出しでした。確認しています。
API 呼び出しを使用してユーザーを匿名化することにも関心があります。ユーザーを匿名化するために使用している API エンドポイントは何ですか?
匿名化のための API エンドポイント:
HTTP メソッド: PUT
エンドポイント: https://example-community.dev/admin/users/{id}/anonymize
匿名化したいユーザーのメールアドレスが既に分かっている場合は、上記の呼び出しを使用して {id} の値を取得できます。
/anonymize エンドポイントが API ドキュメントから削除されたのでしょうか?
私はここを見ていました:
users および admin の両方のセクションで確認しました。
API ドキュメントにまだ追加されていないかもしれませんが、近日中に必ず記載します。
@sarahann /anonymize ルートが API ドキュメントに追加されました。
ふぅ!一瞬ドキッとしたよ ![]()
この件、迅速な対応ありがとう!