📝

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定

Intro

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – アイキャッチ画像
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – アイキャッチ画像
 
Google Apps Script(GAS)とNotion APIを組み合わせれば、GmailのメールをNotionへ追加費用なしで自動保存できます。
必要なのはGoogleアカウントとNotionアカウントだけです。
 
請求書や予約確認を毎回手でNotionへコピペする作業は、積み重なると負担です。
ここでは、コピペで動くスクリプトと絞り込み方、止まらないための上限値を説明します。
 
※本記事にはアフィリエイト広告を含みます。
 
✅
この記事で分かること ・GASとNotion APIでGmailをNotionへ自動保存する手順(コード付き) ・Gmail検索演算子で保存対象を絞り込む方法 ・GASの実行上限とNotion APIのレート制限を踏まえた設定
 
作業はNotionの準備・コード貼り付け・トリガー設定の3段階です。
その前に、GASで自作する方法と有料ツールのどちらが合うかを確認しておきましょう。
 
 
 
 

GASで自作するか有料ツールを使うかの判断基準

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像2
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像2
GASで作る最大のメリットは、追加費用なしで、保存する項目や条件を自由に変えられることです。
一方、有料ツールの2syncは公式サイトに無料プランの記載がなく、最安のSoloプランが年払いで月$7(約1,050円・$1=150円換算)からです(2sync公式サイト、2026年10月時点)。
Soloプランの同期は5分間隔で、設定画面から連携を選ぶだけで使えます。
 
ただし、GASではコードをコピペして数か所を書き換える作業が発生します。
また、一定間隔で動くトリガーを使うため、受信から保存まで実行間隔ぶんの遅れが出ます。
 
費用をかけず、コードを少し触ることに抵抗がないならGAS、コードの保守をしたくない・設定画面だけで済ませたいなら有料ツールが向いています。
 
ここからは、GASで実装する手順に進みます。
最初にNotion側で、メールの保存先とアクセス用の鍵を用意します。
 
 
 

Notion側の準備:データベースとインテグレーションを作る

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像3
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像3
GASから書き込むには、保存先のデータベースとシークレットキーが必要です。
 
 

Step 1: 保存先のデータベースを作る

Notionで新しいページを作り、フルページのデータベース(テーブル)を追加します。
プロパティは`件名`(タイトル)・`差出人`(テキスト)・`受信日`(日付)・`Gmailリンク`(URL)の4つを作ってください。
プロパティ名は後で貼るコードと一字一句同じにする必要があるため、名前を変える場合はコード側も書き換えます。
 
 

Step 2: インテグレーションを作ってシークレットキーをコピーする

notion.so/my-integrationsを開き、種類「内部(Internal)」でインテグレーションを作成します。
表示されたシークレットキーは書き込み用の鍵なので、コピーして他人に見せないでください。
表示名が変わって見当たらない場合はNotion公式のAPIドキュメントを確認します。
 
 

Step 3: データベースにインテグレーションを接続し、IDを控える

データベースページ右上の「•••」メニューから「接続」を選び、作成したインテグレーションを追加します。
この接続を忘れると、キーが正しくてもAPIが「見つからない」エラーを返します。
最後に、データベースのURLで`?v=`の直前にある32桁の英数字をデータベースIDとして控えます。
 
Notion側の準備はこれで終わりです。
次は、GASにスクリプトを貼り付けて動かします。
 
 
 

GASにコードを貼り付けて動かす

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像4
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像4
コードは、未保存のメールをNotionへ保存し、処理済みのスレッドにラベルを付ける最小構成です。
 
 

Step 1: プロジェクトを作ってコードを貼る

script.google.comで「新しいプロジェクト」を作成し、最初からある`function myFunction() {}`を削除します。
下のコードをすべて貼り付けて保存してください。
Notion APIのテキストは1要素2,000文字までなので、本文は先頭2,000文字で切っています(Notion API「Request limits」、2026年10月時点)。
 
 
 

Step 2: スクリプトプロパティにキーとIDを登録する

エディタ左側の歯車アイコン「プロジェクトの設定」から「スクリプト プロパティを追加」をクリックします。
`NOTION_TOKEN`にシークレットキーを、`DATABASE_ID`にデータベースIDを入れて保存してください。
キーをコードに直接書かずにここへ置くと、コードを共有してもキーが一緒に漏れません。
 
 

Step 3: 手動で実行して権限を許可する

関数選択で`saveGmailToNotion`を選び、「実行」をクリックします。
初回に「このアプリは Google で確認されていません」と出たら、自作スクリプト向けの表示なので「詳細」から進んで許可してください。
Notionのデータベースに行が増え、Gmail側のスレッドに`notion-saved`ラベルが付いていれば成功です。
 
動作を確認できたら、保存するメールを決める`SEARCH_QUERY`を自分用に書き換えましょう。
 
 
 

Gmail検索演算子で保存するメールを絞り込む

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像5
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像5
`SEARCH_QUERY`には、Gmailの検索窓に入れるのと同じ文字列をそのまま書けます。
つまり、Gmailで欲しいメールだけが出る検索条件が、そのまま保存条件になります。
全メールを保存するとNotionが散らかり、実行上限にも早く達するため、条件は絞り込みましょう。
 
よく使う演算子は次のとおりです(Gmailヘルプ「Gmail で使用できる検索演算子」、2026年10月時点)。
 
演算子意味書き方の例
from:差出人で絞る`from:billing@example.com`
label:Gmailのラベルで絞る`label:receipts`
subject:件名に含む語で絞る`subject:領収書`
newer_than:指定期間内に受信`newer_than:7d`
 
演算子をスペース区切りで並べると、「すべてを満たす」条件になります。
いちばん管理しやすいのは、Gmailのフィルタで保存したいメールにラベルを付け、`label:`で指定する方法です。
こうすれば、保存対象を変えるときもGmailのフィルタ設定だけで済みます。
 
条件が決まったら、最後にトリガーを設定して自動で動くようにします。
あわせて、途中で止まらないための上限も確認しておきましょう。
 
 
 

トリガー設定と、止まらないための実行上限

GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像6
GmailをNotionに無料で自動保存|GASのコピペ用コードと検索条件の設定 – 画像6
自動化はトリガーで完成しますが、GASにもNotion APIにも上限があります。
 
 

時間主導型トリガーを追加する

エディタ左側の時計アイコン「トリガー」を開き、「トリガーを追加」をクリックします。
関数に`saveGmailToNotion`、イベントのソースに「時間主導型」を選び、実行間隔を指定して保存してください(Google Apps Script「Installable Triggers」、2026年10月時点)。
エラー通知を「毎日通知を受け取る」にしておくと、失敗したときにメールで気づけます。
 
 

GASとNotion APIの上限を押さえる

個人のGoogleアカウントでは、1回の実行は最大6分、トリガーによる実行は1日合計90分までです(Google Apps Script「Quotas for Google Services」、2026年10月時点)。
Notion APIは平均で1秒あたり3リクエストまでで、超えるとエラー(HTTP 429)が返ります(Notion API「Request limits」、2026年10月時点)。
コードでメールごとに待ち時間を入れ、検索件数を絞っているのはこのためで、大量のメールを一度に処理すると実行時間の上限に当たりやすくなります。
 
これで自動保存の仕組みは一通り動きます。
なお、このコードは添付ファイルを保存しないので、添付は「Gmailリンク」から元のメールを開いて確認してください。
 
 
 
 

まとめ

  • GAS+Notion APIなら、GmailのNotion自動保存は追加費用なしで作れる
  • 保存対象はGmail検索演算子で決める。ラベルを付けて`label:`で指定すると管理しやすい
  • GASの実行時間上限と、Notion APIのレート制限を超えない設定にする
 
最初の一歩は、保存したいメールにラベルを1つ付け、`SEARCH_QUERY`をそのラベル名に書き換えて手動で1回実行することです。
Notionに1行増えたのを確認できたら、トリガーを追加して自動化を仕上げましょう。
保守が負担になったら、2syncの料金とGASとの使い分けを目安に切り替えを検討できます。
 
エラーを自力で直したい場合は、GASの入門書が手元にあると安心です。
 
 
コードの保守をせず、設定画面だけで連携したい場合は2syncが候補です。
 
 
参照情報源:
  • 2sync公式サイト(https://2sync.com/ja)(参照日:2026-10-06・為替は$1=150円で換算、2026-10-06時点の概算)
 
▼ NotionにGmailを自動保存する方法|2syncの料金とGASとの使い分け
 
▼ NotionとGoogleカレンダーを双方向同期する設定手順|2syncで自動連携するやり方を解説
 
 

Xでも、ツールの使い方や効率化のヒントを発信しています。
気になった方はフォローしていただけると嬉しいです👉 @_neko_adventure


Related Articles

 
 

Recent Posts