見出し画像

リファレンスを参考にやりたいことを実現する!

先日「Googleにサブドメインを移行したい」という依頼をいただきました。
現在プライマリドメインはあり、メーリングリストとして利用しているサブドメインも移行したいというのが依頼なのですが、この時既存のGoogleグループにエイリアスを一括で追加する必要が出てきました。

ちゃんとプログラミングを教わったことのない私ですが、リファレンスをなんとなく読み解いて機能を実装してみたのでどんな風に使ったのか振り返ってみたいと思います。

この記事を読んで少しでも多くの方がリファレンスに対しての抵抗が下がり、やりたいことが実現出来れば幸いです

まずはやりたいことをググる

最初はやりたいことをググります。だいたいの場合はリファレンスを読んだりすることもなくやりたいことが記載された記事があります。

画像1

本題。なかった場合です。

似たような機能を利用しているものを探します。
例えば、今回はGoogle グループのエイリアスを追加したかったので、「Google Groups GAS」と調べてみます。

そうするといくつかの記事で共通して利用している関数があることがわかります。

AdminDirectory.Groups.xxx( )

次にこの関数でエイリアスの追加が出来るか知りたいので、リファレンスを読んでいきます。

関数名でググって、「Google Developers」のサイトリンクを開きます。

左メニューバーに各関数が記載されているのですが、「groups.aliases」があったのでおそらくそっちだろうということで「groups.aliases > insert」を開きました。

画像2

「Try this API」でやりたいことが出来るか試してみる

GASの場合、画面右側に「Try this API」というのがあるので、そこに値を入れて試してみます。

画像3

実行すると、うまく行けば実際に反映されますし、失敗すればエラーコードが出力されます。
例えばaliasはメール形式にしろ…とかですねw(リファレンスちゃんと読めば書いてあることがほとんどです)

画像4

どうやってGASへ反映させるのか

ここで悩んだのですが、果たしてどうやってこれをGASの関数に反映させるのか…?
というのもリファレンスには関数の形で記載がありません。

画像5

他の記事にあるようなグループの設定のリファレンスを読んでみると、alias同様URL形式しか記載されていませんでした。
ということは関数の候補に出てくるのでは?ということで実際にやってみたら、出てくれました。

画像7

画像6

insertに記載されている、「Admin_directory_v1.Admin.Directory_v1.Schema.Alias」ってなんだよ。って思ったりもしますが、他の記事で関数の使い方を見るとなんとなくわかります。

同リファレンスのRequest bodyの部分になります。

画像9

画像8

なので、記載するとこんな感じになります。

AdminDirectory.Groups.Aliases.insert({"alias": "<対象エイリアス>@<新しいドメイン>"},"<対象エイリアス>@<新しいドメイン>");

※実際は直接書かないで変数などに格納して利用すると思いますがわかりやすさを優先しています。

こちらも先ほど同様実行してみて正常に動作するか確認します。
うまく行けば一括変更できるように処理を追記していきましょう。

他の人がどうやって使っているのかを参考にするしかない。

結局のところ知識が足りなければ他の人がどうやって使っているのか参考にしながらやりたいことを実現するしかないわけですが、ニッチすぎて情報が少ないこともあります。
その時こういうリファレンスを読むことが出来ればやりたいことを実現できる可能性が上がると思っています。

最初は何が書いてあるかわからないから読みたくもなかったリファレンスですが、最近は何かあればリファレンスを読むことを正にして、それを補足するためにググるみたいなケースが増えてきました。

冒頭再掲載になりますが、この記事を読んで少しでも多くの方がリファレンスに対しての抵抗が下がり、やりたいことが実現出来れば幸いです。

この記事が気に入ったらサポートをしてみませんか?