前回の投稿に引き続き、本投稿ではスクリプトにスコープを設定する方法をご紹介します。今回は有料のGoogle Workspaceアカウントでの方法を画像付きで説明します。有料アカウントでは、無料アカウントとダイアログの表示が少し違いますので、その違いについて説明していきます。
結論から先に話をすると、有料アカウントでの流れは無料アカウントよりも簡素化されているので、手順が少なくなります。
スクリプトへの許可付与の手順
さて、それでは説明を初めて行きたいと思います。
サンプルコードは前回と同じものを使用します。
サンプルコード
//スクリプトにGmailへのアクセス許可を付与するためのサンプルコード
function myFunction() {
let recipient = Session.getActiveUser()
.getEmail();
let subject = "subject";
let body = "body";
MailApp.sendEmail(recipient, subject, body);
}
今回も自分にメールを送信するプログラムで挙動を確認しましょう。
Google Workspaceアカウントでログインし、GASファイルを新規で作成して上記コードをコピーするか、『 初回アクセス時にスクリプトに許可を与えるサンプルコード 』にアクセスして、ファイルをコピーしてください。
ファイルの準備ができたら『 ▷実行 』ボタンをクリックします。
実行ボタンを押すと、まずは無料アカウント同じダイアログがひょうじされますので、『許可を確認』をクリックして下さい。
次に、別のウインドウが表示されて、アカウントを選択する画面が表示されます。
基本的にはログインしているアカウントを選択して下さい。
次に表示されるのはスクリプトがGoogle Workspaceサービスのどんな権限を要求しているかを確認する画面になります。
今回のプログラムは前回と同じようにGmailを送信するプログラムですので、Gmailへのアクセス権限を要求されます。ダイアログの右下の『許可』ボタンをクリックすればプログラムへのスコープ設定が完了します。
無料版と有料版の手順の違いについてですが、『このアプリは確認されていません』という部分の手順が有料版にはありません。
これはなぜかというと、有料版にはシステム管理者によって使用できるアプリに制限をかけることが出来るため、
に記載してある手順でGoogle Apps Scriptがアカウントに接続出来るということは、システム管理者に利用が許可されているという状況になります。
そのため、アプリがGoogleに確認されているかどうかということはそれほど問題になりません。
もし、有料版アカウントでGoogle Apps Scriptが接続出来ない場合は、システム管理者に問い合わせてみて下さい。
以上、有料版アカウントでスクリプトに他のGoogle Workspaceサービスへのアクセス許可を付与する手順になります。
まとめ
無料版でもそうですが、一度許可を出せば2回目以降はアクセス許可を出す必要我はありません。ただし、Gmailのアクセス許可を出した後に新たにプログラムを追加して他のGoogleサービスの操作を必要とするコードを書いた時には次回のプログラム実行時に再度アクセス許可を求められます。
アクセス許可はプログラム単位で出す必要がありますので、新しいプログラムを作成した場合にも同じようにアクセスリクエストがされますので、今回と同じ手順で許可を出す必要があります。
これまでの説明で、皆さんはGoogle Apps Scriptでの一通りの流れを経験出来たかと思います。今後、プログラムを作成していく中で、これまでの手順と同じような事を何度も行うことになると思いますが、一つずつの手順を楽しみながらプログラム開発を行って頂ければと思います。
コメント
コメント一覧 (2件)
こういったGoogleサービスとの連携は、他の言語だとできないのでしょうか?
sasaさん
コメントありがとうございます。
APIが色々と公開されていますので、そのAPIを利用すれば他言語からもGoogleサービスと連携することができますよ。
Sheets APIやDrive APIなど検索すると色々出てきます。連携方法はGASとはやり方が違いますので、それぞれの言語仕様に沿った形で連携させることになります。