AutomationFlowsAI & RAG › AI Quote Generator & Gmail Sender

AI Quote Generator & Gmail Sender

Original n8n title: Quote Emailer

Quote emailer. Uses manualTrigger, agent, lmChatDeepSeek, googleSheetsTool. Event-driven trigger; 7 nodes.

Event trigger★★☆☆☆ complexityAI-powered7 nodesAgentLm Chat Deep SeekGoogle Sheets ToolHTTP Request ToolGmail Tool
AI & RAG Trigger: Event Nodes: 7 Complexity: ★★☆☆☆ AI nodes: yes Added:

This workflow follows the Agent → Gmail Tool recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Quote emailer",
  "nodes": [
    {
      "parameters": {},
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        -1184,
        -160
      ],
      "id": "d067cb62-7a80-4bf0-87eb-62b96d235913",
      "name": "When clicking \u2018Execute workflow\u2019"
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "Send a daily quote to a random receiver",
        "options": {
          "systemMessage": "You are a helpful assistant.\n1. use HTTP tool to fetch a random quote\n2. use Google Sheets tool to get a random [Email] from the mailing list and the previous [Emails count]\n3. increment  [Emails count] then use Gmail tool to send the the quote to the given email with the subject \"Daily quote [Email Count]\" using the updated [Email Count]\n4. use google sheet tool to increment the [Emails Count] for the corresponding Email row that received the quote"
        }
      },
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 2.2,
      "position": [
        -928,
        -160
      ],
      "id": "fdca0eda-55ff-418f-aa57-94c0a3ad995d",
      "name": "AI Agent"
    },
    {
      "parameters": {
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.lmChatDeepSeek",
      "typeVersion": 1,
      "position": [
        -1072,
        48
      ],
      "id": "b434162a-b3c4-4459-b5ec-78a84b59d84d",
      "name": "DeepSeek Chat Model",
      "credentials": {
        "deepSeekApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "documentId": {
          "__rl": true,
          "value": "11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw",
          "mode": "list",
          "cachedResultName": "n8n-emails-test",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw/edit#gid=0"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheetsTool",
      "typeVersion": 4.7,
      "position": [
        -512,
        32
      ],
      "id": "53ba4637-d8c5-44e8-b8d3-84eeaf9bb9dc",
      "name": "Get row(s) in sheet in Google Sheets",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "url": "https://zenquotes.io/api/random",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequestTool",
      "typeVersion": 4.2,
      "position": [
        -672,
        32
      ],
      "id": "82be3c28-133a-4de4-9fae-2580cc323b15",
      "name": "HTTP Request"
    },
    {
      "parameters": {
        "sendTo": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To', ``, 'string') }}",
        "subject": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}",
        "message": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}",
        "options": {}
      },
      "type": "n8n-nodes-base.gmailTool",
      "typeVersion": 2.1,
      "position": [
        -336,
        32
      ],
      "id": "b8d73ab1-b12c-4140-b5ee-c8ece34b8a49",
      "name": "Send a message in Gmail",
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "appendOrUpdate",
        "documentId": {
          "__rl": true,
          "value": "11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw",
          "mode": "list",
          "cachedResultName": "n8n-emails-test",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/11wTg-GKJ2c8ymNBeGtLyH8eCvsdyBfmorLU55OjYzXw/edit#gid=0"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email__using_to_match_', ``, 'string') }}",
            "Emails Count": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Emails_Count', ``, 'string') }}"
          },
          "matchingColumns": [
            "Email"
          ],
          "schema": [
            {
              "id": "Name",
              "displayName": "Name",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": true
            },
            {
              "id": "Description",
              "displayName": "Description",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": true
            },
            {
              "id": "Email",
              "displayName": "Email",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Emails Count",
              "displayName": "Emails Count",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheetsTool",
      "typeVersion": 4.7,
      "position": [
        -144,
        32
      ],
      "id": "7eb547ad-fb7f-41e7-b05b-efa91e9fbc1c",
      "name": "Append or update row in sheet in Google Sheets",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "When clicking \u2018Execute workflow\u2019": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "DeepSeek Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet in Google Sheets": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Send a message in Gmail": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Append or update row in sheet in Google Sheets": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "cea241ec-0dd5-42c3-8b1d-de75f81da3d0",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "zGkC3sViqul4rs5b",
  "tags": []
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Quote emailer. Uses manualTrigger, agent, lmChatDeepSeek, googleSheetsTool. Event-driven trigger; 7 nodes.

Source: https://github.com/aidamian/n8n-workshop/blob/main/examples/quote-email-record.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This automation flow is designed to proactively monitor email, calendar, and Slack communications, analyze priorities across all channels, and generate a comprehensive daily briefing with actionable t

Gmail Tool, Anthropic Chat, Memory Buffer Window +7
AI & RAG

This assistant is designed for people who don't have time to write and send emails to suppliers. With just one request, it drafts and sends clear, professional messages automatically.

Mcp Trigger, Gmail Tool, Chat Trigger +6
AI & RAG

Transform your Telegram into a powerful AI-powered personal assistant that manages your calendar, sends daily schedules, searches the web, and accesses your contacts - all through simple text messages

Telegram Trigger, Agent, Telegram +7
AI & RAG

💡 What It Is

Telegram Trigger, Google Gemini Chat, Google Sheets Tool +5
AI & RAG

Innovation Manager. Uses formTrigger, agent, lmChatOpenAi, googleSheetsTool. Event-driven trigger; 9 nodes.

Form Trigger, Agent, OpenAI Chat +4