ユーザーをグループに招待する

:bookmark: このガイドでは、Discourseコミュニティのグループにユーザーを招待する方法について、管理者、グループオーナー、特定の権限を持つモデレーターのための方法を解説します。

:person_raising_hand: 必要なユーザーレベル: 管理者またはグループオーナー(モデレーターが所有していないグループにユーザーを招待するには、moderators_manage_groups サイト設定が必要です)

管理者とグループオーナーは、新しいユーザーや既存のユーザーをカスタムグループに追加するための招待状を作成できます。モデレーターは通常、その特定のグループのオーナーであるか、サイト管理者が moderators_manage_groups 設定を有効にしている場合を除き、ユーザーをグループに招待することはできません。

このガイドでは以下を説明します:

  • 管理者とグループオーナーがユーザーに招待状を送信する方法。
  • モデレーターが自分が所有するグループにユーザーを招待する方法。
  • moderators_manage_groups サイト設定が権限に与える影響。
  • ユーザー招待のための Discourse API の使用。
  • CSV アップロードによる一括招待。

グループへのユーザー招待

管理者は、新しいユーザーと既存のユーザーの両方を1つ以上のカスタムグループに招待できます。手順は以下の通りです:

  1. プロフィールページに移動します。
  2. 招待 (Invites) をクリックします。
  3. グループに追加 (Add to groups) ドロップダウンを選択し、ユーザーを招待したいグループを選択します。
  4. リンクを作成 (Create Link) をクリックすると、招待状をリンクとして保存し、ユーザーに直接共有できます。

:information_source: 信頼度レベルグループ、管理者、モデレーター、スタッフなどの定義済みグループにユーザーを招待することはできません。回避策として、グループの設定ページの 管理 > メンバーシップ > 効果 セクションで、カスタムグループを設定してユーザーの信頼度レベルを自動的に設定することができます。これにより、サイトの default invitee trust level 設定で設定されているレベルとは異なる信頼度レベルを、招待されたユーザーに設定することができます。

招待の送信に関する詳細については、ユーザーが他のユーザーをコミュニティに参加させるために招待を作成および送信する方法の設定 を参照してください。

モデレーターの権限

デフォルトでは、モデレーターは自分が所有していないグループにユーザーを招待することはできません。モデレーターが所有していないグループを招待に追加しようとすると、「要求されたリソースを表示する権限がありません」というエラーが表示されます。

モデレーターにこの機能を与えるには、以下の2つの方法があります:

  1. モデレーターをグループオーナーにする: モデレーターを、ユーザーを招待したい特定のグループのオーナーに割り当てます。
  2. moderators_manage_groups サイト設定を有効にする: これにより、すべてのモデレーターがサイト全体のグループの作成と管理(招待の送信を含む)を行うことができます。この設定は 管理者 → 設定 → グループ の下にあります。

:warning: トラブルシューティング: モデレーターとして、招待フォームに「グループに追加」ドロップダウンが表示されるが、送信時にエラーが発生する場合は、選択したグループのオーナーであることを確認してください。オーナーでない場合は、管理者にそのグループのオーナーにするか、moderators_manage_groups サイト設定を有効にするよう依頼してください。

グループオーナーとしてのユーザー招待

グループオーナーの場合、所有するグループに新しいユーザーを招待できます。手順は以下の通りです:

  1. グループのページに移動します。
  2. 招待 (Invite) ボタンをクリックします。

既存ユーザーの追加

グループオーナーは、ユーザーの追加 (Add Users) ボタンを使用して、既存のユーザー(すでにサイトにアカウントを持っているユーザー)をグループに招待することもできます。

2026-06-22_invite-add-users-btn

API の使用

グループ招待は、/invites.json API エンドポイント を使用して Discourse API で送信することもできます。また、Ruby を使用して招待を送信するには Discourse API gem を使用することもできます。

以下は、Discourse API Gem を使用した API の例です:

require 'discourse_api'

client = DiscourseApi::Client.new("https://discourse.example.com")
client.api_key = "your_key"
client.api_username = "an_admin"

# メールアドレスでユーザーを特定のグループに招待
client.invite_user(
  email: "bob@bob.com",
  group_ids: "1,2,3"
)

一括招待

CSV ファイルをアップロードすることで、ユーザーの一括招待を行うことができます。このプロセスの詳細については、こちらの記事をお読みください: ユーザーの一括招待を送信する。

ベストプラクティス

  • システムグループを招待に使用するのではなく、カスタムグループを作成して、役割や権限に基づいてユーザーを整理してください。
  • ユーザーがなぜ招待されたのかという混乱を防ぐため、招待メッセージに明確な指示を提供してください。
  • 整理されたコミュニティを維持し、非アクティブなユーザーを削除するために、グループメンバーシップを定期的に見直し、管理してください。
  • moderators_manage_groups 設定を慎重に使用する: この設定を有効にすると、モデレーターに大きな権限が付与されます。有効にする前に、モデレーションチームがグループ管理のベストプラクティスについて訓練されていることを確認してください。

一般的な問題と解決策

  • 招待が機能しない: 招待の有効期限と引き換え制限を確認してください。
  • ユーザーが招待を受信しない: 送信済みメールログ を確認し、メールアドレスが有効であることを確認してください。
  • 「権限がありません」エラー: モデレーターの場合、招待しようとしているグループのオーナーであることを確認するか、moderators_manage_groups サイト設定が有効になっていることを確認してください。
  • システムグループに招待できない: admins や trust_level_2 などの定義済みグループにユーザーを招待することはできません。代わりに、希望する効果を持つカスタムグループを作成してください。

よくある質問

モデレーターは任意のグループにユーザーを招待できますか?
いいえ。デフォルトでは、モデレーターは自分が個人で所有するグループにのみユーザーを招待できます。モデレーターが任意のグループにユーザーを招待できるようにするには、管理者が moderators_manage_groups サイト設定を有効にする必要があります。

「スタッフ」グループにユーザーを招待できますか?
いいえ。定義済みのシステムグループにユーザーを招待することはできません。代わりに、カスタムグループを作成し、希望する信頼度レベルや権限が付与されるように設定してください。

アカウントをすでに持っているユーザーを招待するにはどうすればよいですか?
グループのページでユーザーの追加 (Add Users) ボタン(グループオーナー用)または、招待を作成する際のグループに追加 (Add to groups) ドロップダウン(管理者用)を使用してください。

追加リソース

「いいね!」 15

必要なユーザーレベルにはモデレーターが記載されていませんが、最初の文にはそれらを含む「スタッフ」という言葉が含まれています。

おっしゃる通りです!モデレーターはグループオーナーでもない限り、グループ招待が全くできないと確信しています。しかし、しばらくの間実際にテストしていません。
特筆すべきは、OPはウィキなので、ご自身で変更できるということです。

Discourseアカウントを既に保有しているユーザーの中から、グループオーナーがユーザーを追加できるようにしたいグループを閉鎖(非公開)にしています。設定は正しく行っており、オーナーには「ユーザーを追加」ポップアップが表示されます。

しかし、ユーザーを選択しようとした際、一度に追加できるのは1ユーザーのみで、ユーザー名での指定しかできません。カンマ区切りのユーザー名(またはメールアドレス)のリストは認識されません。

これはバグ、あるいは未実装の機能のように見えます。修正していただくことは可能でしょうか。理想적으로는、メールアドレスのセットも追加できるようにしていただきたいです。

さらに歓迎される強化機能としては、ユーザーのリスト(ユーザー名またはメールアドレス)を受け取り、無効なユーザーは単に無視して、残りを追加する機能です。これはモデレーターが行う方法に似ていますが、違いとしては、まだユーザーでない人々にはDiscourseに参加するための招待メールが送信される点です。私たちは、グループオーナーにこの後者の機能(招待メールの送信)を持たせたくはありません。

多大な開発に感謝いたします。