APIでユーザーのメールをすべて取得する方法はありますか?

このリンクをご覧になりましたか:Is there a way to get a user email adress from the API?

ただし、Discourse API を使用して、Discourse サイト上に特定のメールアドレスが存在するか、別のサービスで検証する必要があります。/u/search/users.json 経由でユーザー名や名前を検索することはできますが、これらはメールアドレスを返さないようです。

したがって、すべてのメールアドレスを検索または照会して比較することは可能でしょうか?

Data Explorer プラグインを使用してクエリを作成し、その後 SELECT * FROM user_emails のようなクエリでクエリ API を呼び出すことができます。

ユーザーごとに https://meta.discourse.org/u/<username>/emails.json エンドポイントもあります。

はい、最初の質問に含まれているリンクは「Discourse Meta/emails.json」ですが、すべてのユーザーのメールを取得する方法はありますか?…可能であれば、SQL クエリを許可するプラグインを実装するよりも、API を使用したいと考えています。

当社の API エンドポイントは、Web アプリで使用されるものです。Web アプリではメールクエリをログに記録しているため、メールをまとめて取得できる場所はどこも公開していません。

現時点では、前述のデータエクスプローラーに基づくソリューションを使用する以外に方法はありません。

念のため確認ですが、シークレットキーを介して API を利用しています。フロントエンドには同じ権限がないことは理解していますが、API 側からアクセスすることはできないのでしょうか?

より詳細を申し上げますと、当社のアプリと Discourse の両方で Auth0 SSO 認証を採用しています。ただし、ユーザーが当社のアプリにログインした場合、Discourse にアカウントが存在するかを確認し、存在しない場合はそのリンクに誘導したいと考えています。ユーザーがまず当社のサイトに来た場合、そのメールアドレスが Discourse に登録されているかを確認する最善の方法ではないかもしれません。これは、メールアドレスがまだ登録されていない場合に Discourse へ誘導するためのリンクです。

真の Discourse SSO を使用している場合、SSO ペイロードに渡された外部固有 ID を用いて、GET https://example.com/u/by-external/<EXTERNAL_ID> でユーザーの存在を照会できます。