見出し画像

#108 共有ドライブの組織部門を取得するときに


以前に以下のような組織内で作成されている共有ドライブの一覧を、Google スプレッドシートで作成する GAS のプログラムを紹介しています。

共有ドライブは、それぞれのユーザーの使用量ではなく、組織としての使用量としてカウントされるため、共有ドライブがどのように作成されているのかを管理(チェック)したいと考えるでしょう。
そうした時に、どの組織部門に属する共有ドライブなのかは、把握したい内容の一つでしょう。

問題点

上記の #69 のプログラムで使用している Method: drives.list で得られる REST Resource: drives の中には、orgUnitId が含まれていますが、これは orgUnitId(ID)であって orgUnitPath(パス)ではないのです。😢
orgUnitId を見ても、人の目にはどこの組織部門なのかはわかりません。

REST Resource: drives の内容(抜粋)

組織部門の情報を取得するための API の Method: orgunits.get のパラメータを見ていると、「組織部門のフルパス(先頭の / を除く)または一意の ID。」と説明されているのですが、REST Resource: drives に含まれているorgUnitId を指定しても、「Org unit not found」とエラーになってしまいます。

Method: orgunits.get のパラメータ
エラーが発生する!

解決方法

いろいろと試行錯誤しましたが… この問題を解決するヒントは、わたし自身が以前に作成した ↓ のプログラムの動作結果の中にありました。

上記のプログラムで一覧化された組織内に作成されている組織部門を見ていると、出力されている orgUnitId の先頭には id: という文字列が付されていました。

REST Resource: orgunits の内容

ここからヒントを得て、orgUnitId の先頭に ’id:’ を付して実行するようにすると、問題視していた事象を解決できました。

変更したプログラム

管理者でなければ必要としない情報かもしれませんが、少し悩まされたので、同じことで苦労する人の手掛かりに記録しておきます…

いいなと思ったら応援しよう!