😽

Google Group (メーリングリスト) の一覧をスプレッドシートに書き出す方法

2023/08/28に公開

概要

Googleグループをエクスポートする機能が存在しないため、GASで書き出すスクリプトを書きました
いや、正確にはリファレンスにほぼ答えが載っていたのでちょっとだけ改造しましたw

参照ドキュメント

実装

ライブラリ追加

GASエディタの「サービス」をクリック

サービスを追加の画面でAdmin SDK APIを選択し、追加

コード

function listAllGroups() {
  let page_token = "";
  let group_emails = [];

  while(true){
    let page = AdminDirectory.Groups.list({
      domain: 'ご自身のWSのドメインを記載',
      maxResults: 100, // 最大は200です。
      pageToken: page_token,
    });

    page.groups.forEach(function(group){
      group_emails.push([group["email"]]);
    });

    if (page.nextPageToken){
      page_token = page.nextPageToken
    } else {
      break;
    }
  }

  // 書き込み
  let sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  let range = "A2:A" + (group_emails.length + 1);
  sheet.getRange(range).setValues(group_emails);

}

実行

実行時にOAuthの確認画面が出てくるので、許可をおこなってください。
実行が完了すると、スプレッドシートにメーリングリストの一覧が書き出されます。

Discussion