Gmail Assistant with Full Gmail history RAG using OpenAI
đ§ RAG with Full Gmail history + Real time email updates in RAG using OpenAI & Qdrant
> Summary:
> This workflow listens for new Gmail messages, extracts and cleans email content, generates embeddings via OpenAI, stores them in a Qdrant vector database, and then enables a RetrievalâAugmentedâGeneration (RAG) agent to answer user queries against those stored emails. Itâs designed for teams or bots that need conversational access to past emails.
đ§âđ¤âđ§ Whoâs it for
Support teams** who want to surface past customer emails in chatbots or helpâdesk portals
Sales ops** that need AIâpowered summaries and quick lookup of email histories
Developers** building RAG agents over email archives
âď¸ How it works / What it does
Trigger
Gmail Trigger polls every minute for new messages.
Fetch & Clean
Get Mail Data pulls full message metadata and body.
Code node normalizes the body (removes line breaks, collapses spaces).
Embed & Store
Embeddings OpenAI node computes vector embeddings.
Qdrant Vector Store inserts embeddings + metadata into the emails_history collection.
Batch Processing
SplitInBatches handles large inbox loads in chunks of 50.
RAG Interaction
When chat message received â RAG Agent â uses Qdrant Email Vector Store as a tool to retrieve relevant email snippets before responding.
Memory
Simple Memory buffer ensures the agent retains recent context.
đ ď¸ How to set up
n8n Instance
Deploy n8n (selfâhosted or via Coolify/Docker).
Credentials
Create an OAuth2 credential in n8n for Gmail (with Gmail API scopes).
Add your OpenAI API key in n8n credentials.
Qdrant
Stand up a Qdrant instance (selfâhosted or Qdrant Cloud).
Note your host, port, and API key (if any).
Import Workflow
In n8n, go to Workflows â Import â paste the JSON you provided.
Ensure each credential reference (Gmail & OpenAI) matches your n8n credential IDs.
Test
Click Execute Workflow or send a test email to your Gmail.
Monitor n8n logs: you should see new points in Qdrant and RAG responses.
đ Requirements
n8n** (Self-hosted or Cloud)
Gmail API** enabled on a Google Cloud project
OpenAI API** access (with Embedding & Chat endpoints)
Qdrant** (hosted or cloud) with a collection named emails_history
đ¨ How to customize the workflow
Change Collection Name**
Update the qdrantCollection.value in all Qdrant nodes if you prefer a different collection.
Adjust Polling Frequency**
In the Gmail Trigger node, switch from everyMinute to everyFiveMinutes or a webhookâstyle trigger.
Metadata Tags**
In Enhanced Default Data Loader, tweak the metadataValues to tag by folder, label, or sender domain.
Batch Size**
In SplitInBatches, change batchSize to suit your inbox volume.
RAG Agent Prompt**
Customize the systemMessage in the RAG Agent node to set the assistantâs tone, instruct on date handling, or add additional tools.
Additional Tools**
Chain other n8n nodes (e.g., Slack, Discord) after the RAG Agent to broadcast AI answers to team channels.
Tags
Related Templates
Instagram Full Profile Scraper with Apify and Google Sheets
đ¸ Instagram Full Profile Scraper with Apify and Google Sheets This n8n workflow automates the process of scraping ful...
Auto-classify Gmail emails with AI and apply labels for inbox organization
Who is this for? Professionals and individuals who receive high volumes of emails, those who want to automatically organ...
Compare Lists and Identify Common Items & Differences Using Custom Keys
This workflow compares two lists of objects (List A and List B) using a user-specified key (e.g. email, id, domain) and ...
đ Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments