ヤマムギ

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


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

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

 - Google, GoogleAppsScript, Web ,

ad

ad

  関連記事

動画間の広告を飛ばすのが面倒になったのでYoutube Premiumに加入しました

テレビのCMは全然見る方なんですが、Youtubeの動画の間の広告ってなんか流し …

ライブ配信カレンダーの設定まわり

ライブ配信のカレンダーをGoogle Apps Scriptとかで作りましたの設 …

Google Apps Scriptのマニフェストファイルの編集

こちらの配信ライブカレンダーの仕組みを作っているときに、久しぶりにGoogle …

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

Google Calendar Twilio ReminderのGoogleカレ …

Googleナレッジパネルの申請が承認されました

今年の4/13に「Googleナレッジパネルの認証を受けるために申請してみた」が …

RedmineにGoogleAppsアカウントでログイン出来るようにする

RedmineのログインをGoogleアカウントで出来るように[redmine_ …

youtube-container クラスのheightを調整

当ブログにGoogleカレンダーとかGoogleフォームを埋め込むと、heigh …

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

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

Googleカレンダーの予定をPHPからXMLで取得してWebページに表示する(現在廃止されたAPIなので使えません)

ご注意 ※下記の記事で使用していたAPIは2016年現在使用出来なくなっています …

自転車でナビ+記録出来るアプリ+ホルダー+バッテリー試してみた

目的 記録を蓄積して振り返りやる気を継続する 飽きないように単調にならないように …