Class GroupsApp

GroupsApp

このクラスは、Google グループの情報へのアクセスを提供します。グループのメールアドレスや、ユーザーが直接メンバーになっているグループのリストなどの情報をクエリするために使用できます。

現在のユーザーがメンバーになっているグループの数を取得する例を次に示します。

const groups = GroupsApp.getGroups();
Logger.log(`You belong to ${groups.length} groups.`);

プロパティ

プロパティタイプ説明
RoleRole

メソッド

メソッド戻り値の型概要
getGroupByEmail(email)Group指定されたメールアドレスを持つグループを取得します。
getGroups()Group[]直接のメンバー(または保留中のメンバー)であるすべてのグループを取得します。

詳細なドキュメント

getGroupByEmail(email)

指定されたメールアドレスを持つグループを取得します。グループが存在しない場合、またはグループを表示する権限がない場合は、例外をスローします。

メールアドレスでグループを取得し、現在のユーザーがメンバーかどうかを出力する例を次に示します。実行する前に、サンプル メールアドレスを実際のグループのメールアドレスに置き換えます。

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const currentUser = Session.getActiveUser();
if (group.hasUser(currentUser)) {
  Logger.log('You are a member of this group.');
} else {
  Logger.log('You are not a member of this group.');
}

パラメータ

名前タイプ説明
emailString取得するグループのメールアドレス。

戻る

Group - 指定されたメールアドレスを持つグループ。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/groups

getGroups()

直接のメンバー(または保留中のメンバー)であるすべてのグループを取得します。グループに属していない場合は、空のリストになります。グループが存在しない場合、またはグループを表示する権限がない場合は、例外をスローします。

ユーザーが所属するすべてのグループのメールアドレスを出力する例を次に示します。

function showMyGroups() {
  const groups = GroupsApp.getGroups();
  let str = `You are in ${groups.length} groups: `;
  for (let i = 0; i < groups.length; i++) {
    const group = groups[i];
    str = `${str + group.getEmail()} `;
  }
  Logger.log(str);
}
グループ B のメンバーであり、グループ B がグループ A のメンバーである場合、グループ A に間接的に登録されます。「親」グループ A に送信されたメッセージのコピーは受信できますが、実際にはそのグループに登録されていません。

Group.getRole(email) を使用して、返されたグループの既存のメンバーまたは保留中のメンバーであるかどうかを判断できます。

戻る

Group[] - ユーザーが直接メンバーになっているグループのリスト。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/groups