This workflow follows the Chainllm → Documentdefaultdataloader 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 →
{
"name": "meeting_notes",
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "propsect-notes-to-closer",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2,
"position": [
0,
0
],
"id": "d7ddca65-d83d-4ae6-b265-81fc4bfe8771",
"name": "Prospect Notes Maker"
},
{
"parameters": {
"authentication": "serviceAccount",
"folderId": "default",
"title": "Doc Name"
},
"type": "n8n-nodes-base.googleDocs",
"typeVersion": 2,
"position": [
624,
0
],
"id": "cc48c14e-9ae9-4730-b51b-06988fab6324",
"name": "create doc",
"credentials": {
"googleApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"authentication": "serviceAccount",
"operation": "update",
"documentURL": "={{ $json.id }}",
"actionsUi": {
"actionFields": [
{
"action": "insert",
"text": "={{ $('generate text1').item.json.text }}"
}
]
}
},
"type": "n8n-nodes-base.googleDocs",
"typeVersion": 2,
"position": [
848,
0
],
"id": "9be2113f-cbad-4298-9182-272187012cd1",
"name": "update doc text",
"credentials": {
"googleApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"authentication": "oAuth2",
"select": "channel",
"channelId": {
"__rl": true,
"value": "C08DLUQ7S85",
"mode": "list",
"cachedResultName": "YOUR_SLACK_CHANNEL"
},
"text": "=Here you go with the prospect's doc: https://docs.google.com/document/d/{{ $json.documentId }}",
"otherOptions": {}
},
"type": "n8n-nodes-base.slack",
"typeVersion": 2.3,
"position": [
1728,
0
],
"id": "06f602c9-9fbe-4a34-86b1-11850b1fde47",
"name": "Slack",
"credentials": {
"slackOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=# Down below is a call transcript and a call Summary of a Call sent by Acme Corop to one of their prospects.\n\nYou have to perfectly create a highly detailed document for these things, and in the end output a properly formatted and organized document.\n\nHere is the call transcript:\n\n{{ $json['call transcript'] }}\n\n\nAnd here is the call summary:\n\n{{ $json['call summary'] }}\n\n\n# In the final output, do not give lines like: here is your document / understood, I will now create a detailed document, etc. lines telling me that here is the document n=or that whatever you're doing or have done !\n\nJust output the text of the document properly formatted in your final output, NO OTHER TEXT !",
"batching": {}
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.7,
"position": [
272,
0
],
"id": "1239b890-789f-4530-bc80-9a72a4414828",
"name": "generate text1"
},
{
"parameters": {
"mode": "insert",
"pineconeIndex": {
"__rl": true,
"value": "content-wf-copy-guide",
"mode": "list",
"cachedResultName": "content-wf-copy-guide"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"typeVersion": 1.2,
"position": [
1168,
0
],
"id": "880d7f32-538f-4573-9ff2-f40091b528e7",
"name": "Pinecone Vector Store",
"credentials": {
"pineconeApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"typeVersion": 1,
"position": [
1392,
240
],
"id": "a544bb75-ca6f-4179-8577-22ccaa61816c",
"name": "Default Data Loader"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"typeVersion": 1,
"position": [
1488,
464
],
"id": "5847329d-9728-45ad-9b52-f6c5ce7eee79",
"name": "Recursive Character Text Splitter"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.2,
"position": [
1152,
224
],
"id": "9b90725e-2795-416e-ac3b-267b7b68837c",
"name": "Embeddings OpenAI",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-5",
"mode": "list",
"cachedResultName": "gpt-5"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
448,
192
],
"id": "c92e199d-eded-4de3-85d8-69a5a73094ec",
"name": "OpenAI Chat Model",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Prospect Notes Maker": {
"main": [
[
{
"node": "generate text1",
"type": "main",
"index": 0
}
]
]
},
"create doc": {
"main": [
[
{
"node": "update doc text",
"type": "main",
"index": 0
}
]
]
},
"update doc text": {
"main": [
[
{
"node": "Pinecone Vector Store",
"type": "main",
"index": 0
}
]
]
},
"generate text1": {
"main": [
[
{
"node": "create doc",
"type": "main",
"index": 0
}
]
]
},
"Pinecone Vector Store": {
"main": [
[
{
"node": "Slack",
"type": "main",
"index": 0
}
]
]
},
"Default Data Loader": {
"ai_document": [
[
{
"node": "Pinecone Vector Store",
"type": "ai_document",
"index": 0
}
]
]
},
"Recursive Character Text Splitter": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"Embeddings OpenAI": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "generate text1",
"type": "ai_languageModel",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "6402e0aa-1d64-4c7c-a64e-cd2e7e9d6ce0",
"id": "AXD0O4yEyW7mTKVU",
"tags": [
{
"createdAt": "2025-06-08T14:41:22.944Z",
"updatedAt": "2025-06-08T14:41:22.944Z",
"id": "nK13yz0RxwNTem32",
"name": "Lead Magnet"
}
]
}
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.
googleApiopenAiApipineconeApislackOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
meeting_notes. Uses googleDocs, slack, chainLlm, vectorStorePinecone. Webhook trigger; 10 nodes.
Source: https://github.com/shreyofficial/claude-ai-sales-system/blob/737f3df47efe00de269f7e419358dd0cb1f2b87e/workflows/json/meeting_notes(1).json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow automates customer support across multiple channels (Email, Live Chat, WhatsApp, Slack, Discord) using AI-powered responses enhanced with Retrieval Augmented Generation (RAG) and your pr
Hi! I’m Amanda, a creator of intelligent automations using n8n and Make. I’ve been building AI-powered workflows for over 2 years, always focused on usability and innovation. This one here is very spe
This workflow automates patient communication for medical clinics using the WhatsApp Business API. It supports appointment booking, rescheduling, service inquiries, follow-ups, and document submission
WooriFisa 최종. Uses memoryMongoDbChat, agent, httpRequest, documentDefaultDataLoader. Scheduled trigger; 68 nodes.
AI Multi-Document Analyzer with Smart Recommendations & Reporting