投稿する
📚 Dify・n8nハンズオン講座(土曜日チーム)

Gmail返信を自動化!n8nスレッド下書き術

n8nとLLMを活用し、受信メールに対してAIが回答を生成し、Gmailのスレッド内に自動で下書きを保存する高度な自動化ワークフローを解説します。

学習ポイント

  • Gmailの標準アクションでは困難な「スレッド内への下書き保存」を実現する方法
  • データの絞り込み(Edit Fields)やHTML変換、Base64エンコードなどのデータ処理手順
  • APIリクエスト(HTTP Request)を用いたGmailとの高度な連携設定

この動画では、n8nを使用してGmailの受信メールに対する返信案をAIで生成し、元のメールスレッドに紐付いた形で下書き保存するシステムを構築します。

1. データの絞り込みと準備 (Edit Fields)

Gmailトリガーで取得した膨大なデータから、必要な情報(Thread ID、本文、件名、送信元、Message ID)のみを抽出します。これにより、後続のノードでの設定ミスを防ぎ、ワークフローを簡潔に保ちます。

2. LLMによる返信文生成と形式変換

抽出した本文をもとに、LLM(GeminiやGPT-4など)が返信内容を考案します。生成されたテキストはマークダウン形式であることが多いため、Gmailで正しく表示されるよう「Markdown to HTML」ノードを使用してHTML形式に変換します。

3. APIリクエストのためのデータ加工

Gmail APIでスレッド返信を行うには、特定の作法(RFC 5322形式)が必要です。Edit FieldsノードでToやSubject、In-Reply-To、Referencesを含むJSON構造を作成し、コードノードを用いて全体を「Base64形式」にエンコードします。この処理が、APIを通じてGmailが内容を理解するために不可欠なステップとなります。

4. HTTP Requestによる最終実行

最後にHTTP Requestノードを使用し、Gmail APIの「drafts」エンドポイントに対してPOSTリクエストを送ります。認証にはOAuth2を使用し、準備したBase64データを送信することで、指定したスレッド内にAI生成の返信案が下書きとして保存されます。

**紹介されるツール・サービス:**

  • n8n (自動化プラットフォーム)

  • Gmail API

  • Google Gemini / OpenAI (LLM)

  • Dify (ナレッジ連携の例として言及)