Workflow: Stickynote Emailreadimap

Workflow Details

Download Workflow
{
    "nodes": [
        {
            "id": "9f2dc93f-bae5-4419-8411-d2fff4b31f5e",
            "name": "Creates an email engagement",
            "type": "n8n-nodes-base.hubspot",
            "position": [
                916,
                -260
            ],
            "parameters": {
                "type": "email",
                "metadata": {
                    "html": "={{ $('When an email is received').item.json.textHtml || $('When an email is received').item.json.textPlain}}",
                    "subject": "={{ $('When an email is received').item.json.subject }}",
                    "toEmail": [
                        "={{ $('When an email is received').item.json.to }}"
                    ],
                    "fromEmail": "={{ $('When an email is received').item.json.from }}"
                },
                "resource": "engagement",
                "authentication": "oAuth2",
                "additionalFields": {
                    "associations": {
                        "contactIds": "={{ $json.vid }}"
                    }
                }
            },
            "credentials": {
                "hubspotOAuth2Api": {
                    "id": "JxzF93M0SJ00jDD9",
                    "name": "HubSpot account"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "0a56ec28-afc6-40a9-bf42-4d8742e48eb4",
            "name": "OpenAI Chat Model",
            "type": "@n8n\/n8n-nodes-langchain.lmChatOpenAi",
            "position": [
                -140,
                -40
            ],
            "parameters": {
                "model": {
                    "__rl": true,
                    "mode": "list",
                    "value": "gpt-4o-mini"
                },
                "options": []
            },
            "credentials": {
                "openAiApi": {
                    "id": "1IOLtYX7aTspCAN8",
                    "name": "OpenAI Pollup"
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "8e53aeb6-7d84-4739-b482-b8cd844b89ac",
            "name": "Search for the contact via email",
            "type": "n8n-nodes-base.hubspot",
            "position": [
                256,
                -260
            ],
            "parameters": {
                "operation": "search",
                "authentication": "oAuth2",
                "filterGroupsUi": {
                    "filterGroupsValues": [
                        {
                            "filtersUi": {
                                "filterValues": [
                                    {
                                        "value": "={{ $json.output.contact_info.email }}",
                                        "propertyName": "email|string"
                                    }
                                ]
                            }
                        }
                    ]
                },
                "additionalFields": []
            },
            "credentials": {
                "hubspotOAuth2Api": {
                    "id": "JxzF93M0SJ00jDD9",
                    "name": "HubSpot account"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625,
            "alwaysOutputData": true
        },
        {
            "id": "19e54445-d0cb-40f2-a11f-5e4cb22ad7ec",
            "name": "Parse the mail with AI",
            "type": "@n8n\/n8n-nodes-langchain.chainLlm",
            "position": [
                -120,
                -260
            ],
            "parameters": {
                "text": "=Get all important info from this email like first name, last name, email, phone number, name of the company, country, Postal code, city, etc. Return it as a json.  The email content:  {{ $json.textHtml || $json.textPlain}} \nFrom: {{ $json.from }} \nSubject: {{ $json.subject }}\nDate sent:  {{ $json.date }}",
                "messages": {
                    "messageValues": [
                        {
                            "message": "=You are a professional Email parser"
                        }
                    ]
                },
                "promptType": "define",
                "hasOutputParser": true
            },
            "typeVersion": 1.600000000000000088817841970012523233890533447265625
        },
        {
            "id": "8b257214-0001-46aa-84df-cad844e3130b",
            "name": "When an email is received",
            "type": "n8n-nodes-base.emailReadImap",
            "position": [
                -340,
                -260
            ],
            "parameters": {
                "options": {
                    "forceReconnect": 3
                }
            },
            "credentials": {
                "imap": {
                    "id": "g7C5Z9V9vQUbsLIw",
                    "name": "IMAP account"
                }
            },
            "typeVersion": 2
        },
        {
            "id": "32820b69-3918-4951-9ddc-45bdbcb60aca",
            "name": "Sticky Note",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -440,
                -400
            ],
            "parameters": {
                "color": 4,
                "width": 280,
                "height": 300,
                "content": "## Set receiving email account\n- Ddefaults to an IMAP account node, but you can put a gmail account or any  email trigger"
            },
            "typeVersion": 1
        },
        {
            "id": "adbed044-08ae-4744-9b0c-09a225860267",
            "name": "Set the output Json",
            "type": "@n8n\/n8n-nodes-langchain.outputParserStructured",
            "position": [
                80,
                -40
            ],
            "parameters": {
                "jsonSchemaExample": "{\"contact_info\": \n{\n\"first name\": \n\"Thomas\",\n\"last name\": \"Vie\",\n\"position\": \n\"CTO\",\n\"company\": \n\"Pollup Data Services\",\n\"email\": \n\"Thomas@pollup.net\",\n\"phone\": \n\"+34 673626552\",\n\"website\": \n\"https:\/\/pollup.net\",\n\"address\": \n{\n\"street\": \n\"Oppelner Str. 32\",\n\"postal_code\": \n\"10997\",\n\"city\": \n\"Berlin\",\n\"country\": \n\"Germany\"\n}}}"
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "e58575ee-6ac8-4de1-b4db-8525146efd74",
            "name": "Sticky Note1",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -140,
                -400
            ],
            "parameters": {
                "color": 4,
                "width": 320,
                "height": 300,
                "content": "## Upgrade the prompt!\nThis is a very simple prompt but oit does the job. Improve it and send it to me!"
            },
            "typeVersion": 1
        },
        {
            "id": "23465910-0a89-45f7-9bbf-fb17abadc5de",
            "name": "Sticky Note2",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                200,
                -400
            ],
            "parameters": {
                "color": 4,
                "width": 840,
                "height": 400,
                "content": "## Hubspot integration\n- Search for the contact in hubspot\n- If it is present creates an egagement\n- It it is not, creates it and adds an engagement"
            },
            "typeVersion": 1
        },
        {
            "id": "f5573c22-85f3-4eda-ba5a-172567827991",
            "name": "contact exists?",
            "type": "n8n-nodes-base.if",
            "position": [
                476,
                -260
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "554c2aa3-dbdb-4955-8510-6b09bc762f63",
                            "operator": {
                                "type": "string",
                                "operation": "exists",
                                "singleValue": true
                            },
                            "leftValue": "={{ $json.id }}",
                            "rightValue": ""
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "914f2e6b-7a5f-4c9c-bd3b-4bfb2693728d",
            "name": "Edit Fields",
            "type": "n8n-nodes-base.set",
            "position": [
                696,
                -360
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "75c8fc2d-dc8e-4b6c-a853-1dbd8d72f779",
                            "name": "vid",
                            "type": "string",
                            "value": "={{ $json.id }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "4c8fa2d1-e3b4-4323-bdc8-3a4e2bbc706d",
            "name": "Creates contact",
            "type": "n8n-nodes-base.hubspot",
            "position": [
                696,
                -160
            ],
            "parameters": {
                "email": "={{ $('Parse the mail with AI').item.json.output.contact_info.email }}",
                "options": [],
                "authentication": "oAuth2",
                "additionalFields": {
                    "city": "={{ $('Parse the mail with AI').item.json.output.contact_info.address.city }}",
                    "country": "={{ $('Parse the mail with AI').item.json.output.contact_info.address.country }}",
                    "jobTitle": "={{ $('Parse the mail with AI').item.json.output.contact_info.position }}",
                    "lastName": "={{ $('Parse the mail with AI').item.json.output.contact_info['last name'] }}",
                    "postalCode": "={{ $('Parse the mail with AI').item.json.output.contact_info.address.postal_code }}",
                    "websiteUrl": "={{ $('Parse the mail with AI').item.json.output.contact_info.website }}",
                    "companyName": "={{ $('Parse the mail with AI').item.json.output.contact_info.company }}",
                    "phoneNumber": "={{ $('Parse the mail with AI').item.json.output.contact_info.phone }}",
                    "streetAddress": "={{ $('Parse the mail with AI').item.json.output.contact_info.address.street }}"
                }
            },
            "credentials": {
                "hubspotOAuth2Api": {
                    "id": "JxzF93M0SJ00jDD9",
                    "name": "HubSpot account"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "5f94ba18-49db-4bc0-9f0a-16a9d05ca6b0",
            "name": "Sticky Note7",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -440,
                -620
            ],
            "parameters": {
                "width": 460,
                "height": 200,
                "content": "## Contact me\n- If you need any modification to this workflow\n- if you need some help with this workflow\n- Or if you need any workflow in n8n, Make, or Langchain \/ Langgraph\n\nWrite to me: [thomas@pollup.net](mailto:thomas@pollup.net)"
            },
            "typeVersion": 1
        }
    ],
    "connections": {
        "Edit Fields": {
            "main": [
                [
                    {
                        "node": "Creates an email engagement",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Creates contact": {
            "main": [
                [
                    {
                        "node": "Creates an email engagement",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "contact exists?": {
            "main": [
                [
                    {
                        "node": "Edit Fields",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Creates contact",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "OpenAI Chat Model": {
            "ai_languageModel": [
                [
                    {
                        "node": "Parse the mail with AI",
                        "type": "ai_languageModel",
                        "index": 0
                    }
                ]
            ]
        },
        "Set the output Json": {
            "ai_outputParser": [
                [
                    {
                        "node": "Parse the mail with AI",
                        "type": "ai_outputParser",
                        "index": 0
                    }
                ]
            ]
        },
        "Parse the mail with AI": {
            "main": [
                [
                    {
                        "node": "Search for the contact via email",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "When an email is received": {
            "main": [
                [
                    {
                        "node": "Parse the mail with AI",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Search for the contact via email": {
            "main": [
                [
                    {
                        "node": "contact exists?",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Generate Exam Questions
View
Filter Slack Create Webhook
View
[n8n] - Shopify Orders to D365 Business Central Sales Orders / Sales Invoices
View
RAG on living data
View
HN Who is Hiring Scrape
View
Make OpenAI Citation for File Retrieval RAG
View
Automatically Send Daily Meeting List to Telegram
View
Splitout Code Automation Webhook
View
🤓 Conversion Rate Optimizer
View
Gmail GoogleDrive Create Triggered
View