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

【n8n】Gmail返信文をAIで自動作成し下書き登録

n8nを使用して、Gmailで受信したメールに対してAIが自動で返信文を作成し、直接送信または下書き保存する自動化フローを構築します。

学習ポイント

  • Gemini APIと連携し、受信メールの内容に合わせた最適な返信文を生成する方法
  • 返信メールを新規スレッドではなく、既存のメッセージスレッドへ紐付ける設定手順
  • HTTP Requestノードを用いて、GmailのAPI経由で直接下書き(Drafts)を作成する高度な実装術

n8nを活用して、Gmailの運用をAIで自動化する仕組みを構築します。定型文の返信だけでなく、LLM(Gemini)を組み込むことで、お問い合わせ内容に応じた柔軟な対応が可能になります。

1. 自動返信フローの構築(直接送信)

受信したメールに対してAIが文章を作成し、そのまま返信を送信する最もシンプルな構成です。

  • **Gmailトリガー**: 新着メールを検知します。特定のラベルやアドレスでフィルタリングすると実用性が高まります。

  • **LLM Chainノード**: `Google Gemini`を「脳」として使用。プロンプトに「以下のメール内容に対して適切な返信文を考えて」と設定します。

  • **Gmailノード (Reply)**: `Resource`を`Thread`に設定し、`Operation`を`Reply`にします。受信メールの`Thread ID`を指定することで、新規メールではなく元のスレッドに返信が紐付きます。

2. 下書き保存フローの構築(スレッド維持・確認用)

AIの回答を直接送信するのが不安な場合に、指定のスレッド内に「下書き」を自動作成するフローです。

  • **データ整形 (Edit Fields)**: 受信メールの`Thread ID`、`Subject`、`Message ID`などを後続で使いやすいように整理します。

  • **HTML変換**: LLMが生成したテキストをHTML形式に変換します(Markdownノードを使用)。

  • **Base64エンコード**: Gmail APIでメールを扱うためには、本文(RAW)をBase64形式に変換する必要があります。`Codeノード`(JavaScript)を使用して変換処理を行います。

  • **HTTP Requestでの下書き作成**: Gmailノードの標準機能ではスレッド内への下書き作成が難しいため、Google APIの`drafts`エンドポイントへPOSTリクエストを送ります。

3. 実用的な運用のコツ

動画内では、すべてのメールに反応するのではなく、特定のドメインやお問い合わせフォームからの通知メールのみに反応するよう「IFノード(条件分岐)」を挟む活用法も紹介されています。

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

  • **n8n**: ワークフロー自動化ツール

  • **Google Gemini API**: 返信文生成用のAIモデル

  • **Gmail API**: メールの送受信・下書き操作