Authoring Limit Site SettingsへのAPIアクセスを確認

Discourse への API 経由で関連トピックを公開・同期する統合機能の開発を行っています。セットアップ時の診断のために、トピックの作成や更新を試みる前に統合機能がコンテンツを事前検証できるよう、フォーラムの現在の作成制限値を読み取りたいと考えています。

アクセスを確認しようとしている設定は以下の通りです:

min_topic_title_length
max_topic_title_length
min_first_post_length
min_post_length
max_post_length
max_tags_per_topic
max_tag_length
tagging_enabled
create_tag_allowed_groups
tag_topic_allowed_groups

まず /site.json を確認しましたが、これはアクセス可能で公開機能のヒントとして有用です。しかし、これらの具体的な作成制限値の設定は公開されていないようです。

管理者ではないボットユーザーの API キーを使用した場合、以下のパスは 404 を返しました:

/site_settings.json
/admin/site_settings.json
/admin/site_settings

ボットユーザーを管理者にした後、以下のパスが動作しました:

/admin/site_settings.json
/admin/site_settings

使用したヘッダーは以下の通りです:

Accept: application/json
Api-Key: ...
Api-Username: discussbridge-bot
X-Requested-With: XMLHttpRequest

/site_settings.json は依然として 404 を返しました。

私の質問:

  1. 現在のサイト設定を読み取るための標準的な API パスは /admin/site_settings.json でしょうか?
  2. 管理者権限が必要なのか、それともこれに対応する読み取り専用または細粒度の API スコープがサポートされているのでしょうか?
  3. /site_settings.json は廃止されたもの、プラグイン依存のもの、または存在が想定されていないものなのでしょうか?
  4. 統合機能において、推奨されるパターンは、設定の読み取りには管理者権限を持つ診断/セットアップ用のキーを使用し、通常のトピック/投稿の同期作業には権限の低い公開用キーを使用することでしょうか?

目標は API を介して設定を変更することではなく、セットアップ時の診断中にそれらを読み取ることです。これにより統合機能が

  1. それは /admin/site_settings.json です

  2. client: true を持つ設定を除き、管理者である必要があります。これらの設定は /site/settings.json で確認できます。

最後の2つを除く、必要なすべての設定は /site/settings.json で確認できます。

ただし、許可されたグループについては、仕組みが異なります。特定のユーザーとして /site.json をリクエストすると、can_tag_topicscan_create_tags を確認できます。

  1. 私が知る限り、/site_settings.json というファイルは存在したことがありません。

  2. あなたの特定のユースケースでは、通常のユーザーで十分で、上記2番のパターンを使用すれば問題ないと思います。