Workflow: Emailreadimap Manual Send

Workflow Details

Download Workflow
{
    "id": "nkPjDxMrrkKbgHaV",
    "meta": {
        "instanceId": "a4bfc93e975ca233ac45ed7c9227d84cf5a2329310525917adaf3312e10d5462",
        "templateCredsSetupCompleted": true
    },
    "name": "Effortless Email Management with AI",
    "tags": [],
    "nodes": [
        {
            "id": "9d77e26f-de2b-4bd4-b0f0-9924a8f459a6",
            "name": "Email Trigger (IMAP)",
            "type": "n8n-nodes-base.emailReadImap",
            "position": [
                -2000,
                -180
            ],
            "parameters": {
                "options": []
            },
            "credentials": {
                "imap": {
                    "id": "k31W9oGddl9pMDy4",
                    "name": "IMAP info@n3witalia.com"
                }
            },
            "typeVersion": 2
        },
        {
            "id": "cf2d020b-b125-4a20-8694-8ed0f7acf755",
            "name": "Markdown",
            "type": "n8n-nodes-base.markdown",
            "position": [
                -1740,
                -180
            ],
            "parameters": {
                "html": "={{ $json.textHtml }}",
                "options": []
            },
            "typeVersion": 1
        },
        {
            "id": "41bfceff-0155-4643-be60-ee301e2d69e1",
            "name": "Send Email",
            "type": "n8n-nodes-base.emailSend",
            "position": [
                400,
                -320
            ],
            "webhookId": "a79ae1b4-648c-4cb4-b6cd-04ea3c1d9314",
            "parameters": {
                "html": "={{ $('Edit Fields').item.json.email }}",
                "options": [],
                "subject": "=Re: {{ $('Email Trigger (IMAP)').item.json.subject }}",
                "toEmail": "={{ $('Email Trigger (IMAP)').item.json.from }}",
                "fromEmail": "={{ $('Email Trigger (IMAP)').item.json.to }}"
            },
            "credentials": {
                "smtp": {
                    "id": "hRjP3XbDiIQqvi7x",
                    "name": "SMTP info@n3witalia.com"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "2aff581a-8b64-405c-b62f-74bf189fd7b1",
            "name": "Qdrant Vector Store",
            "type": "@n8n\/n8n-nodes-langchain.vectorStoreQdrant",
            "position": [
                -320,
                600
            ],
            "parameters": {
                "mode": "retrieve-as-tool",
                "options": [],
                "toolName": "company_knowladge_base",
                "toolDescription": "Extracts information regarding the request made.",
                "qdrantCollection": {
                    "__rl": true,
                    "mode": "id",
                    "value": "=COLLECTION"
                },
                "includeDocumentMetadata": false
            },
            "credentials": {
                "qdrantApi": {
                    "id": "iyQ6MQiVaF3VMBmt",
                    "name": "QdrantApi account"
                }
            },
            "typeVersion": 1
        },
        {
            "id": "6e3f6df0-8924-47d9-855c-51205d19e86d",
            "name": "Embeddings OpenAI",
            "type": "@n8n\/n8n-nodes-langchain.embeddingsOpenAi",
            "position": [
                -440,
                800
            ],
            "parameters": {
                "options": []
            },
            "credentials": {
                "openAiApi": {
                    "id": "CDX6QM4gLYanh0P4",
                    "name": "OpenAi account"
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "37ac411b-4a74-44d1-917e-b07d1c9ca221",
            "name": "Email Summarization Chain",
            "type": "@n8n\/n8n-nodes-langchain.chainSummarization",
            "position": [
                -1480,
                -180
            ],
            "parameters": {
                "options": {
                    "binaryDataKey": "={{ $json.data }}",
                    "summarizationMethodAndPrompts": {
                        "values": {
                            "prompt": "=Write a concise summary of the following in max 100 words:\n\n\"{{ $json.data }}\"\n\nDo not enter the total number of words used.",
                            "combineMapPrompt": "=Write a concise summary of the following in max 100 words:\n\n\"{{ $json.data }}\"\n\nDo not enter the total number of words used."
                        }
                    }
                },
                "operationMode": "nodeInputBinary"
            },
            "typeVersion": 2
        },
        {
            "id": "91edbac9-847b-4f31-a8dd-09418bd93642",
            "name": "Write email",
            "type": "@n8n\/n8n-nodes-langchain.agent",
            "position": [
                -1040,
                -180
            ],
            "parameters": {
                "text": "=Write the text to reply to the following email:\n\n{{ $json.response.text }}",
                "options": {
                    "systemMessage": "You are an expert at answering emails. You need to answer them professionally based on the information you have. This is a business email. Be concise and never exceed 100 words. Only the body of the email, not create the subject"
                },
                "promptType": "define",
                "hasOutputParser": true
            },
            "typeVersion": 1.6999999999999999555910790149937383830547332763671875
        },
        {
            "id": "1da0e72a-db97-4216-a1a5-038cebaf7e10",
            "name": "OpenAI",
            "type": "@n8n\/n8n-nodes-langchain.lmChatOpenAi",
            "position": [
                -180,
                280
            ],
            "parameters": {
                "model": {
                    "__rl": true,
                    "mode": "list",
                    "value": "gpt-4o-mini",
                    "cachedResultName": "gpt-4o-mini"
                },
                "options": []
            },
            "credentials": {
                "openAiApi": {
                    "id": "CDX6QM4gLYanh0P4",
                    "name": "OpenAi account"
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "af2d6284-4c8f-4a07-b689-d0f55aaabd26",
            "name": "Gmail",
            "type": "n8n-nodes-base.gmail",
            "position": [
                -300,
                -180
            ],
            "webhookId": "d6dd2e7c-90ea-4b65-9c64-523d2541a054",
            "parameters": {
                "sendTo": "info@n3w.it",
                "message": "=<h3>MESSAGE<\/h3>\n{{ $('Email Trigger (IMAP)').item.json.textHtml }}\n\n<h3>AI RESPONSE<\/h3>\n{{ $json.email }}",
                "options": [],
                "subject": "=[Approval Required]  {{ $('Email Trigger (IMAP)').item.json.subject }}",
                "operation": "sendAndWait",
                "responseType": "freeText"
            },
            "credentials": {
                "gmailOAuth2": {
                    "id": "nyuHvSX5HuqfMPlW",
                    "name": "Gmail account (n3w.it)"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "aaccc4a6-ce53-4813-8247-65bd1a9d5639",
            "name": "Text Classifier",
            "type": "@n8n\/n8n-nodes-langchain.textClassifier",
            "position": [
                -60,
                -180
            ],
            "parameters": {
                "options": {
                    "systemPromptTemplate": "Please classify the text provided by the user into one of the following categories: {categories}, and use the provided formatting instructions below. Don't explain, and only output the json."
                },
                "inputText": "={{ $json.data.text }}",
                "categories": {
                    "categories": [
                        {
                            "category": "Approved",
                            "description": "The email has been reviewed and accepted as-is. The human explicitly or implicity express approva, indicating that no changes ar needed.\n\nExample:\n\"Ok\",\n\"Approvato\",\n\"Invia\""
                        },
                        {
                            "category": "Declined",
                            "description": "The email has been reviewd, but the human request modifications before it sent link tweaks, removing parts, rewording etc... This could include suggested edits, rewording or major revision."
                        }
                    ]
                }
            },
            "typeVersion": 1
        },
        {
            "id": "b46de5d9-1a2e-4d28-930b-e18fb1d7876e",
            "name": "Edit Fields",
            "type": "n8n-nodes-base.set",
            "position": [
                -580,
                -180
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "35d7c303-42f4-4dd1-b41e-6eb087c23c3d",
                            "name": "email",
                            "type": "string",
                            "value": "={{ $json.output }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "36ce51c6-8ee1-4230-84c0-40e259eafb1a",
            "name": "When clicking \u2018Test workflow\u2019",
            "type": "n8n-nodes-base.manualTrigger",
            "position": [
                -1340,
                -1300
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "id": "21a0c991-65dc-483e-9b98-5cedaba7ae13",
            "name": "Create collection",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                -1040,
                -1440
            ],
            "parameters": {
                "url": "https:\/\/QDRANTURL\/collections\/COLLECTION",
                "method": "POST",
                "options": [],
                "jsonBody": "{\n  \"filter\": {}\n}",
                "sendBody": true,
                "sendHeaders": true,
                "specifyBody": "json",
                "authentication": "genericCredentialType",
                "genericAuthType": "httpHeaderAuth",
                "headerParameters": {
                    "parameters": [
                        {
                            "name": "Content-Type",
                            "value": "application\/json"
                        }
                    ]
                }
            },
            "credentials": {
                "httpHeaderAuth": {
                    "id": "qhny6r5ql9wwotpn",
                    "name": "Qdrant API (Hetzner)"
                }
            },
            "typeVersion": 4.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "9a048d7d-bcdf-40b7-b33a-94b811083eac",
            "name": "Refresh collection",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                -1040,
                -1180
            ],
            "parameters": {
                "url": "https:\/\/QDRANTURL\/collections\/COLLECTION\/points\/delete",
                "method": "POST",
                "options": [],
                "jsonBody": "{\n  \"filter\": {}\n}",
                "sendBody": true,
                "sendHeaders": true,
                "specifyBody": "json",
                "authentication": "genericCredentialType",
                "genericAuthType": "httpHeaderAuth",
                "headerParameters": {
                    "parameters": [
                        {
                            "name": "Content-Type",
                            "value": "application\/json"
                        }
                    ]
                }
            },
            "credentials": {
                "httpHeaderAuth": {
                    "id": "qhny6r5ql9wwotpn",
                    "name": "Qdrant API (Hetzner)"
                }
            },
            "typeVersion": 4.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "db494d2d-5390-4f83-9b87-3409fef31a7d",
            "name": "Get folder",
            "type": "n8n-nodes-base.googleDrive",
            "position": [
                -820,
                -1180
            ],
            "parameters": {
                "filter": {
                    "driveId": {
                        "__rl": true,
                        "mode": "list",
                        "value": "My Drive",
                        "cachedResultUrl": "https:\/\/drive.google.com\/drive\/my-drive",
                        "cachedResultName": "My Drive"
                    },
                    "folderId": {
                        "__rl": true,
                        "mode": "id",
                        "value": "=test-whatsapp"
                    }
                },
                "options": [],
                "resource": "fileFolder"
            },
            "credentials": {
                "googleDriveOAuth2Api": {
                    "id": "HEy5EuZkgPZVEa9w",
                    "name": "Google Drive account"
                }
            },
            "typeVersion": 3
        },
        {
            "id": "e30dbe6f-482e-47f9-b5b8-62c1113e6c8b",
            "name": "Download Files",
            "type": "n8n-nodes-base.googleDrive",
            "position": [
                -600,
                -1180
            ],
            "parameters": {
                "fileId": {
                    "__rl": true,
                    "mode": "id",
                    "value": "={{ $json.id }}"
                },
                "options": {
                    "googleFileConversion": {
                        "conversion": {
                            "docsToFormat": "text\/plain"
                        }
                    }
                },
                "operation": "download"
            },
            "credentials": {
                "googleDriveOAuth2Api": {
                    "id": "HEy5EuZkgPZVEa9w",
                    "name": "Google Drive account"
                }
            },
            "typeVersion": 3
        },
        {
            "id": "492d48d8-4997-4f04-902b-041da3210417",
            "name": "Default Data Loader",
            "type": "@n8n\/n8n-nodes-langchain.documentDefaultDataLoader",
            "position": [
                -200,
                -980
            ],
            "parameters": {
                "options": [],
                "dataType": "binary"
            },
            "typeVersion": 1
        },
        {
            "id": "0cf45d10-3cbf-4eb6-ab30-11f264b3aa8d",
            "name": "Token Splitter",
            "type": "@n8n\/n8n-nodes-langchain.textSplitterTokenSplitter",
            "position": [
                -240,
                -820
            ],
            "parameters": {
                "chunkSize": 300,
                "chunkOverlap": 30
            },
            "typeVersion": 1
        },
        {
            "id": "7d60f569-c34e-49a8-ba9a-88cf33083136",
            "name": "Sticky Note3",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -840,
                -1500
            ],
            "parameters": {
                "color": 6,
                "width": 880,
                "height": 220,
                "content": "# STEP 1\n\n## Create Qdrant Collection\nChange:\n- QDRANTURL\n- COLLECTION"
            },
            "typeVersion": 1
        },
        {
            "id": "e86b18c4-d7e8-4e81-b520-dbd8125edf38",
            "name": "Sticky Note4",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -1060,
                -1240
            ],
            "parameters": {
                "color": 4,
                "width": 620,
                "height": 400,
                "content": "# STEP 2\n\n\n\n\n\n\n\n\n\n\n\n\n## Documents vectorization with Qdrant and Google Drive\nChange:\n- QDRANTURL\n- COLLECTION"
            },
            "typeVersion": 1
        },
        {
            "id": "05f65120-ef31-4c67-ac18-e68a8353909c",
            "name": "Qdrant Vector Store1",
            "type": "@n8n\/n8n-nodes-langchain.vectorStoreQdrant",
            "position": [
                -360,
                -1180
            ],
            "parameters": {
                "mode": "insert",
                "options": [],
                "qdrantCollection": {
                    "__rl": true,
                    "mode": "id",
                    "value": "=COLLECTION"
                }
            },
            "credentials": {
                "qdrantApi": {
                    "id": "iyQ6MQiVaF3VMBmt",
                    "name": "QdrantApi account"
                }
            },
            "typeVersion": 1
        },
        {
            "id": "c15fd52f-b142-408e-af06-aeed10a1cf85",
            "name": "Embeddings OpenAI1",
            "type": "@n8n\/n8n-nodes-langchain.embeddingsOpenAi",
            "position": [
                -380,
                -980
            ],
            "parameters": {
                "options": []
            },
            "credentials": {
                "openAiApi": {
                    "id": "CDX6QM4gLYanh0P4",
                    "name": "OpenAi account"
                }
            },
            "typeVersion": 1.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "3e47224f-3deb-450b-b825-f16c5f860f28",
            "name": "Sticky Note",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -2020,
                -600
            ],
            "parameters": {
                "color": 3,
                "width": 580,
                "height": 260,
                "content": "# STEP 3 - MAIN FLOW\n\n\n## How it works\nThis workflow automates the handling of incoming emails, summarizes their content, generates appropriate responses using a retrieval-augmented generation (RAG) approach, and obtains approval or suggestions before sending replies. \n\nYou can quickly integrate Gmail and Outlook via the appropriate trigger nodes"
            },
            "typeVersion": 1
        },
        {
            "id": "63097039-58cb-4e0f-9fb6-6bf868275519",
            "name": "DeepSeek Chat Model",
            "type": "@n8n\/n8n-nodes-langchain.lmChatDeepSeek",
            "position": [
                -1560,
                40
            ],
            "parameters": {
                "options": []
            },
            "credentials": {
                "deepSeekApi": {
                    "id": "sxh1rfZxonXV83hS",
                    "name": "DeepSeek account"
                }
            },
            "typeVersion": 1
        },
        {
            "id": "c86d6eeb-cf08-429f-b5b4-60b317071035",
            "name": "Sticky Note2",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -1500,
                -260
            ],
            "parameters": {
                "width": 320,
                "height": 240,
                "content": "Chain that summarizes the received email"
            },
            "typeVersion": 1
        },
        {
            "id": "4afc8b00-d1e5-473c-a71e-1299c84c546e",
            "name": "Sticky Note5",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -1060,
                -260
            ],
            "parameters": {
                "width": 340,
                "height": 240,
                "content": "Agent that retrieves business information from a vector database and processes the response"
            },
            "typeVersion": 1
        },
        {
            "id": "be1762ff-729b-4b83-9139-16f835b748f2",
            "name": "Sticky Note1",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -1800,
                -260
            ],
            "parameters": {
                "height": 240,
                "content": "Convert email to Markdown format for better understanding of LLM models"
            },
            "typeVersion": 1
        },
        {
            "id": "f818ede7-895a-4860-91d3-f08cc32ec0e3",
            "name": "Sticky Note6",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -380,
                -380
            ],
            "parameters": {
                "color": 4,
                "height": 360,
                "content": "## IMPORTANT\n\nFor the \"Send Draft\" node, you need to send the draft email to a Gmail address because it is the only one that allows the \"Send and wait for response\" function."
            },
            "typeVersion": 1
        },
        {
            "id": "929b525a-912b-4f7b-a6e7-dfeb88a446c8",
            "name": "Sticky Note7",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -100,
                -260
            ],
            "parameters": {
                "width": 360,
                "height": 240,
                "content": "Based on the suggestion received, the text classifier can understand whether the feedback received approves the generated email or not."
            },
            "typeVersion": 1
        },
        {
            "id": "2468e643-013f-4925-ab35-c8ef4ee6eed2",
            "name": "Email Reviewer",
            "type": "@n8n\/n8n-nodes-langchain.agent",
            "position": [
                380,
                -40
            ],
            "parameters": {
                "text": "=Review at the following email:\n{{ $('Edit Fields').item.json.email }}\n\nFeedback from human:\n{{ $json.data.text }}",
                "options": {
                    "systemMessage": "If you are an expert in reviewing emails before sending them. You need to review and structure them in such a way that you can send them. It must be in HTML format and you can insert (if you think it is appropriate) only HTML characters such as <br>, <b>, <i>, <p> where necessary. Be concise and never exceed 100 words. Only the body of the email"
                },
                "promptType": "define",
                "hasOutputParser": true
            },
            "typeVersion": 1.6999999999999999555910790149937383830547332763671875
        },
        {
            "id": "ecd9d3f8-2e79-4e5f-a73d-48de60441376",
            "name": "Sticky Note8",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                340,
                -120
            ],
            "parameters": {
                "width": 340,
                "height": 220,
                "content": "The Email Reviewer agent, taking inspiration from human feedback, rewrites the email"
            },
            "typeVersion": 1
        }
    ],
    "active": false,
    "pinData": [],
    "settings": {
        "executionOrder": "v1"
    },
    "versionId": "de11da52-1513-4797-8070-b64e84b84158",
    "connections": {
        "Gmail": {
            "main": [
                [
                    {
                        "node": "Text Classifier",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "OpenAI": {
            "ai_languageModel": [
                [
                    {
                        "node": "Write email",
                        "type": "ai_languageModel",
                        "index": 0
                    },
                    {
                        "node": "Email Reviewer",
                        "type": "ai_languageModel",
                        "index": 0
                    },
                    {
                        "node": "Text Classifier",
                        "type": "ai_languageModel",
                        "index": 0
                    }
                ]
            ]
        },
        "Markdown": {
            "main": [
                [
                    {
                        "node": "Email Summarization Chain",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get folder": {
            "main": [
                [
                    {
                        "node": "Download Files",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Edit Fields": {
            "main": [
                [
                    {
                        "node": "Gmail",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Write email": {
            "main": [
                [
                    {
                        "node": "Edit Fields",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Download Files": {
            "main": [
                [
                    {
                        "node": "Qdrant Vector Store1",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Email Reviewer": {
            "main": [
                [
                    {
                        "node": "Edit Fields",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Token Splitter": {
            "ai_textSplitter": [
                [
                    {
                        "node": "Default Data Loader",
                        "type": "ai_textSplitter",
                        "index": 0
                    }
                ]
            ]
        },
        "Text Classifier": {
            "main": [
                [
                    {
                        "node": "Send Email",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Email Reviewer",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Embeddings OpenAI": {
            "ai_embedding": [
                [
                    {
                        "node": "Qdrant Vector Store",
                        "type": "ai_embedding",
                        "index": 0
                    }
                ]
            ]
        },
        "Embeddings OpenAI1": {
            "ai_embedding": [
                [
                    {
                        "node": "Qdrant Vector Store1",
                        "type": "ai_embedding",
                        "index": 0
                    }
                ]
            ]
        },
        "Refresh collection": {
            "main": [
                [
                    {
                        "node": "Get folder",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "DeepSeek Chat Model": {
            "ai_languageModel": [
                [
                    {
                        "node": "Email Summarization Chain",
                        "type": "ai_languageModel",
                        "index": 0
                    }
                ]
            ]
        },
        "Default Data Loader": {
            "ai_document": [
                [
                    {
                        "node": "Qdrant Vector Store1",
                        "type": "ai_document",
                        "index": 0
                    }
                ]
            ]
        },
        "Qdrant Vector Store": {
            "ai_tool": [
                [
                    {
                        "node": "Write email",
                        "type": "ai_tool",
                        "index": 0
                    },
                    {
                        "node": "Email Reviewer",
                        "type": "ai_tool",
                        "index": 0
                    }
                ]
            ]
        },
        "Email Trigger (IMAP)": {
            "main": [
                [
                    {
                        "node": "Markdown",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Email Summarization Chain": {
            "main": [
                [
                    {
                        "node": "Write email",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "When clicking \u2018Test workflow\u2019": {
            "main": [
                [
                    {
                        "node": "Create collection",
                        "type": "main",
                        "index": 0
                    },
                    {
                        "node": "Refresh collection",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Rssfeedread Telegram Create Scheduled
View
Build an MCP Server with Google Calendar
View
🌐 Confluence Page AI Powered Chatbot
View
Manual HTTP Update Webhook
View
🔥📈🤖 AI Agent for n8n Creators Leaderboard - Find Popular Workflows
View
Wait Splitout Send Webhook
View
Workflow stats
View
Splitout Limit Automation Webhook
View
Manual Stickynote Import Webhook
View
Code Schedule Automate Scheduled
View