賞味期限切れのメールを自動で削除する Google Apps Script
ごきげんよう、ぴぴんです。
gmailで賞味期限切れメールを自動的に削除する方法について記載します。
以前の記事で、別途記載すると予告していたものです。
事前準備
前回の記事のように、メールの保管期限を示すラベルを作成します。
pppng.hateblo.jp
自動削除プログラムの作成
スクリプトの作成環境を開く
「G Suite Developper Hub」というGoogle Apps Scriptが記載できるページがあるので、それを開きます。
Apps Script – Google Apps Script
開いたら、「新規スクリプト」ボタンを押すなどして、スクリプト作成画面が開きます。
スクリプトの内容を記載
スクリプト記載画面にスクリプトの内容を記載します。
例えば、私は以下のように書きました。
1ヶ月の保管期限を示すラベルが貼られていて、1ヶ月以上古いメールのスレッドを検索して
それら1件ずつ、削除する処理です。
また同様の処理を3ヶ月の保管期限のラベルについても記載しました。
function delete1m() { var mail_threads = GmailApp.search('in:"retention period/01_1month" older_than:1m'); mail_threads.forEach( function(mail_thread){ Logger.log("Subject:" + mail_thread.getFirstMessageSubject()) mail_thread.moveToTrash(); }); } function delete3m() { var mail_threads = GmailApp.search('in:"retention period/02_3months" older_than:3m'); mail_threads.forEach( function(mail_thread){ Logger.log("Subject:" + mail_thread.getFirstMessageSubject()) mail_thread.moveToTrash(); }); }
スクリプトを書いたら、保存します。
保存時に、プロジェクト名を設定します。
「保管期限切れメール削除」にしてみました
動作確認
画面に表示されている実行ボタン(三角形)を押すと指定した処理が動作します。
初めて実行する際は、このスクリプトの実行を承認する設定などでてきます。自分で作ったものなので、特に気にすることなくOKです。
自動削除プログラムを定期実行する設定
時計のようなボタンを押すと、作成した処理のトリガーを設定する画面に遷移します。
例えば、私は、保管期限1ヶ月の自動削除を
週1で実行する設定にしました。
保管期限3ヶ月の自動削除は月1で実行する設定にしました。
後記
はじめて、GAS(Google Apps Script)を触ってみましたが、なんかいろいろできそうで面白そうですね。