リファレンスを参考にやりたいことを実現する!
先日「Googleにサブドメインを移行したい」という依頼をいただきました。
現在プライマリドメインはあり、メーリングリストとして利用しているサブドメインも移行したいというのが依頼なのですが、この時既存のGoogleグループにエイリアスを一括で追加する必要が出てきました。
ちゃんとプログラミングを教わったことのない私ですが、リファレンスをなんとなく読み解いて機能を実装してみたのでどんな風に使ったのか振り返ってみたいと思います。
この記事を読んで少しでも多くの方がリファレンスに対しての抵抗が下がり、やりたいことが実現出来れば幸いです
まずはやりたいことをググる
最初はやりたいことをググります。だいたいの場合はリファレンスを読んだりすることもなくやりたいことが記載された記事があります。
本題。なかった場合です。
似たような機能を利用しているものを探します。
例えば、今回はGoogle グループのエイリアスを追加したかったので、「Google Groups GAS」と調べてみます。
そうするといくつかの記事で共通して利用している関数があることがわかります。
AdminDirectory.Groups.xxx( )
次にこの関数でエイリアスの追加が出来るか知りたいので、リファレンスを読んでいきます。
関数名でググって、「Google Developers」のサイトリンクを開きます。
左メニューバーに各関数が記載されているのですが、「groups.aliases」があったのでおそらくそっちだろうということで「groups.aliases > insert」を開きました。
「Try this API」でやりたいことが出来るか試してみる
GASの場合、画面右側に「Try this API」というのがあるので、そこに値を入れて試してみます。
実行すると、うまく行けば実際に反映されますし、失敗すればエラーコードが出力されます。
例えばaliasはメール形式にしろ…とかですねw(リファレンスちゃんと読めば書いてあることがほとんどです)
どうやってGASへ反映させるのか
ここで悩んだのですが、果たしてどうやってこれをGASの関数に反映させるのか…?
というのもリファレンスには関数の形で記載がありません。
他の記事にあるようなグループの設定のリファレンスを読んでみると、alias同様URL形式しか記載されていませんでした。
ということは関数の候補に出てくるのでは?ということで実際にやってみたら、出てくれました。
insertに記載されている、「Admin_directory_v1.Admin.Directory_v1.Schema.Alias」ってなんだよ。って思ったりもしますが、他の記事で関数の使い方を見るとなんとなくわかります。
同リファレンスのRequest bodyの部分になります。
なので、記載するとこんな感じになります。
AdminDirectory.Groups.Aliases.insert({"alias": "<対象エイリアス>@<新しいドメイン>"},"<対象エイリアス>@<新しいドメイン>");
※実際は直接書かないで変数などに格納して利用すると思いますがわかりやすさを優先しています。
こちらも先ほど同様実行してみて正常に動作するか確認します。
うまく行けば一括変更できるように処理を追記していきましょう。
他の人がどうやって使っているのかを参考にするしかない。
結局のところ知識が足りなければ他の人がどうやって使っているのか参考にしながらやりたいことを実現するしかないわけですが、ニッチすぎて情報が少ないこともあります。
その時こういうリファレンスを読むことが出来ればやりたいことを実現できる可能性が上がると思っています。
最初は何が書いてあるかわからないから読みたくもなかったリファレンスですが、最近は何かあればリファレンスを読むことを正にして、それを補足するためにググるみたいなケースが増えてきました。
冒頭再掲載になりますが、この記事を読んで少しでも多くの方がリファレンスに対しての抵抗が下がり、やりたいことが実現出来れば幸いです。
この記事が気に入ったらサポートをしてみませんか?