Можно ли через API получить все электронные письма пользователей?

Я видел эту ссылку: Is there a way to get a user email adress from the API?

Однако нам нужно проверить в другом сервисе с помощью API Discourse, существует ли email-адрес на сайте Discourse. Мы можем искать по имени пользователя или имени через /u/search/users.json, но, похоже, эти запросы не возвращают email-адрес.

Так можно ли выполнить поиск или запрос всех email-адресов для сравнения?

Вы можете использовать плагин Data Explorer для создания запроса, а затем вызвать API запроса, например: SELECT * FROM user_emails.

Также для каждого пользователя доступен эндпоинт https://meta.discourse.org/u/<username>/emails.json.

Да, ссылка, включенная в мой первоначальный вопрос, — это «Discourse Meta/emails.json», но есть ли способ получить все адреса электронной почты пользователей? … Я бы предпочел использовать API, а не реализовывать плагин, позволяющий выполнять SQL-запросы, если это вообще возможно.

Наши API-эндпоинты используются веб-приложением. Поскольку мы логируем запросы по электронной почте в веб-приложении, мы нигде не предоставляем возможность массовой загрузки адресов электронной почты.

Единственный способ на данный момент — это решение на основе упомянутого выше Data Explorer.

Для ясности: мы используем API через секретный ключ. Я понимаю, что у фронтенда не будет тех же прав, но разве API не может получить доступ?

Чтобы уточнить: у нас есть приложение и Discourse, оба используют авторизацию SSO через Auth0. Однако, если пользователь входит в наше приложение, мы хотим убедиться, что у него есть учётная запись в Discourse (и перенаправить его по соответствующей ссылке). Возможно, это не лучший способ проверить, зарегистрирован ли этот email в Discourse, если пользователь сначала приходит на наш сайт. Эта ссылка ведёт в Discourse на случай, если email ещё не зарегистрирован.

Если вы используете настоящий Discourse SSO, вы можете проверить существование пользователя по его внешнему уникальному идентификатору, переданному в полезной нагрузке SSO, используя запрос GET https://example.com/u/by-external/<EXTERNAL_ID>