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 →
{
"id": "NPGAfBzz4nv8lTpl",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Save New Sales Opportunities",
"tags": [],
"nodes": [
{
"id": "64b02b70-e7f2-4df0-852f-b6959af8d8c5",
"name": "Received Emails with Sales Label",
"type": "n8n-nodes-base.gmailTrigger",
"position": [
760,
540
],
"parameters": {
"simple": false,
"filters": {
"labelIds": [
"Label_8035866011660570111"
]
},
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyHour"
}
]
}
},
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "6dca3c61-98ba-4d18-bc5c-9c762e12f13b",
"name": "Odoo - Create Opportunity",
"type": "n8n-nodes-base.odoo",
"position": [
1500,
540
],
"parameters": {
"resource": "opportunity",
"opportunityName": "={{ $('Received Emails with Sales Label').item.json.headers.subject }}",
"additionalFields": {
"email_from": "={{ $('Received Emails with Sales Label').item.json.from.value[0].address }}",
"description": "={{ $json.response.text }}"
}
},
"credentials": {
"odooApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "a57e0e51-50d3-49de-8dc6-6fe592604765",
"name": "OpenAI Model",
"type": "@n8n/n8n-nodes-langchain.lmOpenAi",
"position": [
1040,
720
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-3.5-turbo-instruct"
},
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "a6de25a3-3967-4957-bc98-4cb774a53dda",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
700,
220
],
"parameters": {
"width": 446.44549763033154,
"height": 261.8821936357484,
"content": "## Summarize emails and save them as notes on sales opportunity in Odoo\n\nSet up steps:\n* Configure Google Cloud credentials with Gmail access\n* Configure OpenAI credentials\n* Configure Odoo credentials\n "
},
"typeVersion": 1
},
{
"id": "8705b4de-1334-4ff2-8d5d-60ec96cfb8cd",
"name": "Summarize Email Content",
"type": "@n8n/n8n-nodes-langchain.chainSummarization",
"position": [
1060,
540
],
"parameters": {
"options": {
"summarizationMethodAndPrompts": {
"values": {
"prompt": "=Write a concise summary of the following sales inquiry:\n\" {{ $json.text }}\"\nInclude structured information such as project budget, timelines, industry and a general summary\n\nCONCISE SUMMARY: \n",
"combineMapPrompt": "=Write a concise summary of the following sales inquiry:\n\"{{ $json.text }}\"\nExtract information such as project budget, timelines and a general summary.\n\nCONCISE SUMMARY: \n"
}
}
}
},
"typeVersion": 2
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "8c905538-5613-464b-b5a0-87e266a507c7",
"connections": {
"OpenAI Model": {
"ai_languageModel": [
[
{
"node": "Summarize Email Content",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Summarize Email Content": {
"main": [
[
{
"node": "Odoo - Create Opportunity",
"type": "main",
"index": 0
}
]
]
},
"Received Emails with Sales Label": {
"main": [
[
{
"node": "Summarize Email Content",
"type": "main",
"index": 0
}
]
]
}
}
}
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.
gmailOAuth2odooApiopenAiApi
About this workflow
Save New Sales Opportunities. Uses gmailTrigger, odoo, lmOpenAi, stickyNote. Event-driven trigger; 5 nodes.
Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →