ヤマムギ

growing hard days.

*

Google Apps ScriptでAdmin SDK Directory Serviceを使ってグループメンバー情報を出力する

      2020/09/07

GoogleAppsのGoogleGroupをメーリングリストとして使っている人がほとんどだと思うのですが、メンバーの一覧って見る画面がないので、いちいちGroupのメンバーを開くか、他のファイルで管理したりって事で、棚卸しする時に面倒なので、今現在どのメールアドレスがメンバーになっているのかを出力する事はGoogle Apps Scriptで簡単に出来ないかと思って調べてみたら簡単に出来たので記載します。

Admin SDK Directory Serviceを有効にする

今時点では試験運用中のGoogleの拡張サービスなので、
スクリプトエディタで[リソース]-[Googleの拡張サービス]で「Admin Directory API」をONにする。
同じ画面の下にリンクで「Googleデベロッパーコンソール」があるのでそこからGoogleデベロッパーコンソールでも、「Admin SDK」を有効にしておく。

グループメンバーを確認する方法

下のコードをSpreadSheetの[ツール]-[スクリプトエディタ]に書いて、実行したら、とりあえずSpreadSheetに今の設定が書き出せます。
ドメインとかメールアドレスとかは編集して自己責任で参考にしてください。

詳細は公式のAdmin SDK Directory Serviceのページを確認してください。

簡単に説明します。

「page = AdminDirectory.Groups.list~」で指定ドメインのGoogleGroupのリストをpage変数に代入します。

で、「page.groups」をループでまわして、
「var members = AdminDirectory.Members.list(group.email).members」でグループメンバーを代入します。

で、次はメンバーをループでまわしながら、
「user = AdminDirectory.Users.get(member.email)」でユーザ情報を代入します。
※ user.name.fullNameの漢字名が必要だったため。
※ ドメイン外のメールアドレスが含まれる事を考慮したかったのですが、「AdminDirectory.Users.get」でエラーになる事しか分からなかったので、try~catchにしてます。

(ディレクトリのAPIに触れていると、names.nsfの扱いやすさを思い出します。)

Admin_SDK_Directory_Service_-_Google_Apps_Script_—_Google_Developers


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - Google, GoogleAppsScript, Web ,

  関連記事

Googleカレンダーの予定をV3 APIでPHPからJSONを取得してWebページに表示する

Googleカレンダーを使って管理しているライブスケジュールを日付によって、 未 …

WordPressの記事を公開日時に関係なくソート順を変更する

PostMash Customを使う WordPressのプラグインでPostM …

個人のGoogleカレンダーの予定をPythonで取得する

Google Calendar Twilio ReminderのGoogleカレ …

Google One 100GBプランを購入しました

2021/6/1からGoogle Photos、Gmail、Google Dri …

Google Adsenseでセンシティブな広告が表示されるので調整しました

何も調整していなかった時 今年に入ってからこのブログでやたらと下衆い広告が表示さ …

TikTok向けのお知らせ動画をGoogleスライドで作ってみました

2022/1/28(金)のJAWS-UG 名古屋 あけましておめでとう! セキュ …

Linux Mint 17 MATE 64bit にAptana Studio 3をインストールして日本語化

JDKのインストール 過去記事「Linux Mint 17 MATE 64bit …

GoogleフォームからAPI Gatewayで作成したREST APIにPOSTリクエストする

「API GatewayからLambdaを介さずにSNSトピックへ送信」の続きで …

YoutubeチャンネルにカスタムURLを設定しました

YoutubeチャンネルのURLは初期状態では、https://www.yout …

スパムリファラーサイトのアクセスをAnalyticsで除外する(2017/8/17現在)

アクセス数とかそんなに気にしないのですが。 嘘です。 リファラーサイトからのアク …