This workflow follows the Agent → Google Sheets 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": "Sales Assistant Build",
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
160,
0
],
"id": "4a38c2dd-3d35-441d-86a9-6ba81ce191e5",
"name": "When clicking \u2018Test workflow\u2019"
},
{
"parameters": {
"promptType": "define",
"text": "=Please research these sales call attendees\n\nName: {{ $json.Name }}\nEmail: {{ $json.Email }}\nCompany Name: {{ $json['Company Name'] }}\nWebsite: {{ $json.Website }}\nBusiness Type: {{ $json['Business Type'] }}\nProject: {{ $json.Project }}",
"hasOutputParser": true,
"options": {
"systemMessage": "# Overview \nYou are an AI agent responsible for gathering company data and updating a Google Sheet with structured output. \n\n## Context \n- After generating output, you must call the **Update Sheet** tool with six specific fields. \n- Do not skip this step or simply return JSON. The tool must be called explicitly to trigger the Google Sheet update. \n\n## Instructions \n1. Accept and parse the input fields. \n2. Use the **Tavily** tool to gather and summarize: \n - `company_overview` \n - `tech_stack` \n - `company_updates` \n3. Use the **Product List** tool to identify: \n - `primary_solution` \n - `solution_2` \n - `solution_3` \n4. Format all results as valid JSON with exactly six fields. \n5. Immediately call the **Update Sheet** tool using the structure shown below. \n\n## Tools \n- **Tavily**: Use to research company background, tech stack, and updates. \n- **Product List**: Use to find relevant products based on business type and project. \n- **Update Sheet**: Required to write the six outputs into Google Sheets. \n\n## Examples \n### Example Input \n```json\n{\n \"Name\": \"Acme Inc.\",\n \"Website\": \"https://www.acme.com\",\n \"Business Type\": \"E-commerce\",\n \"Project\": \"Streamlining logistics with automation\"\n}\n``` \n\n### Example Tavily Summary \n```json\n{\n \"company_overview\": \"Acme Inc. is a fast-scaling e-commerce company focused on home goods and lifestyle products.\",\n \"tech_stack\": \"Shopify, Klaviyo, ShipBob, Gorgias\",\n \"company_updates\": \"Recently launched a same-day delivery program in select cities and expanded product categories in Q2.\"\n}\n``` \n\n### Example Product List Result \n```json\n{\n \"primary_solution\": \"Logistics Automation Suite\",\n \"solution_2\": \"Customer Retention AI\",\n \"solution_3\": \"Real-Time Order Tracking\"\n}\n``` \n\n### Example Tool Call \n```json\n{\n \"tool_call\": {\n \"tool\": \"Update Sheet\",\n \"parameters\": {\n \"company_overview\": \"Acme Inc. is a fast-scaling e-commerce company focused on home goods and lifestyle products.\",\n \"tech_stack\": \"Shopify, Klaviyo, ShipBob, Gorgias\",\n \"company_updates\": \"Recently launched a same-day delivery program in select cities and expanded product categories in Q2.\",\n \"primary_solution\": \"Logistics Automation Suite\",\n \"solution_2\": \"Customer Retention AI\",\n \"solution_3\": \"Real-Time Order Tracking\"\n }\n }\n}\n``` \n\n## SOP (Standard Operating Procedure) \n1. Parse and validate input fields. \n2. Use Tavily to collect: \n - company_overview \n - tech_stack \n - company_updates \n3. Use Product List to determine: \n - primary_solution \n - solution_2 \n - solution_3 \n4. Combine results into a valid JSON object using exact field names. \n5. Call the Update Sheet tool using that object. \n\n## Final Notes \n- Return only valid JSON \u2014 no extra text or descriptions. \n- Always include all six fields, even if data is limited. \n- Use of the Update Sheet tool is mandatory to complete the task. \n---\n"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.9,
"position": [
592,
0
],
"id": "4af5de2c-fcc0-4cad-87e3-1b3899ed8bda",
"name": "AI Agent"
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4.1",
"mode": "list",
"cachedResultName": "gpt-4.1"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
440,
220
],
"id": "ab61b66a-e664-493f-8d15-ac560457e85f",
"name": "OpenAI Chat Model",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"toolDescription": "Use this tool to search the internet",
"method": "POST",
"url": "https://api.tavily.com/search",
"sendBody": true,
"specifyBody": "json",
"jsonBody": "{\n \"api_key\": \"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\",\n \"query\": \"{searchTerm}\",\n \"search_depth\": \"basic\",\n \"include_answer\": true,\n \"topic\": \"news\",\n \"include_raw_content\": true,\n \"max_results\": 3\n} ",
"placeholderDefinitions": {
"values": [
{
"name": "searchTerm",
"description": "What the user has requested to search the internet for",
"type": "string"
}
]
}
},
"type": "@n8n/n8n-nodes-langchain.toolHttpRequest",
"typeVersion": 1.1,
"position": [
560,
220
],
"id": "3df51abb-d8f0-4d76-882f-a1bac5978c75",
"name": "Tavily"
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4",
"mode": "list",
"cachedResultName": "Mock Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 1986928329,
"mode": "list",
"cachedResultName": "Products",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit#gid=1986928329"
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
660,
360
],
"id": "79b3a1dc-41bf-4529-8f5b-cf2ddedfb636",
"name": "Product List",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4",
"mode": "list",
"cachedResultName": "Mock Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 236449331,
"mode": "list",
"cachedResultName": "Meeting Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit#gid=236449331"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Email": "={{ $json.Email }}",
"company_overview": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('company_overview', ``, 'string') }}",
"tech_stack": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('tech_stack', ``, 'string') }}",
"company_updates": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('company_updates', ``, 'string') }}",
"primary_solution": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('primary_solution', ``, 'string') }}",
"solution_2": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('solution_2', ``, 'string') }}",
"solution_3": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('solution_3', ``, 'string') }}"
},
"matchingColumns": [
"Email"
],
"schema": [
{
"id": "Call Date",
"displayName": "Call Date",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Name",
"displayName": "Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Email",
"displayName": "Email",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Company Name",
"displayName": "Company Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Website",
"displayName": "Website",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Business Type",
"displayName": "Business Type",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Project",
"displayName": "Project",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "company_overview",
"displayName": "company_overview",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "tech_stack",
"displayName": "tech_stack",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "company_updates",
"displayName": "company_updates",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "primary_solution",
"displayName": "primary_solution",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "solution_2",
"displayName": "solution_2",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "solution_3",
"displayName": "solution_3",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "email_subject",
"displayName": "email_subject",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "email_text",
"displayName": "email_text",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "sms",
"displayName": "sms",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "row_number",
"displayName": "row_number",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"readOnly": true,
"removed": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
780,
300
],
"id": "70e6f3da-f84f-4b0e-b54f-b7d65204e118",
"name": "Update Sheet",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"jsonSchemaExample": "{\n \"company_overview\": \"string (max 100 tokens)\",\n \"tech_stack\": [\"string\", \"string\", \"...\"],\n \"company_updates\": \"string (max 150 tokens)\",\n \"primary_solution\": \"string\",\n \"solution_2\": \"string\",\n \"solution_3\": \"string\"\n}\n"
},
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"typeVersion": 1.2,
"position": [
880,
200
],
"id": "6fb79298-d2e4-4697-9b4d-e233b37edbb8",
"name": "Structured Output Parser"
},
{
"parameters": {
"promptType": "define",
"text": "=Name: {{ $('Review Calls').item.json.Name }}\nEmail: {{ $('Review Calls').item.json.Email }}\nCompany Name: {{ $('Review Calls').item.json['Company Name'] }}\nWebsite: {{ $('Review Calls').item.json.Website }}\nBusiness Type: {{ $('Review Calls').item.json['Business Type'] }}\nProject: {{ $('Review Calls').item.json.Project }}\ncompany_overview: {{ $json.output.company_overview }}\ntech_stack: {{ $json.output.tech_stack }}\ncompany_updates: {{ $json.output.company_updates }}\nprimary_solution: {{ $json.output.primary_solution }}\nsolution_2: {{ $json.output.solution_2 }}\nsolution_3: {{ $json.output.solution_3 }}\n",
"hasOutputParser": true,
"options": {
"systemMessage": "# Overview \nYou are a Sales Writing Assistant AI agent responsible for generating a short, personal, and persuasive email, subject line, and SMS right after a prospect books a call. The format must feel handcrafted and human, while integrating strong personalization and a sharp testimonial to build conviction fast. \n\n## Context \n- The prospect should feel like the message was written specifically for them\u2014not templated or generic. \n- The core structure focuses on one key problem they face, followed by immediate proof that we\u2019ve solved that problem for someone just like them. \n- Messaging must be short, clean, confident, and natural\u2014written like a thoughtful sales rep, not a marketer. \n- SMS should be simple, friendly, and casual. \n- Final output must also be logged in a Google Sheet. \n\n## Instructions \n1. Analyze the input fields to identify: \n - Prospect\u2019s first name, company, business type, and project \n - Their specific pain point or goal \n - Tech stack or approach they\u2019re using to solve it \n2. Use the Testimonials Tool to find a success story with a company similar in size, industry, or problem. Pull: \n - Company name \n - Business type \n - Specific result \n - Outcome \n - Solution used \n3. Draft a subject line like: \n - \u201cExcited to connect, (first name)\u201d \n4. Write the email using the following exact structure and voice: \n ```\n Subject: Excited to connect, (first name)\n\n Hey (first name),\n\n Saw your booking\u2014excited to dive in on (meeting date).\n\n Automating (problem/project) is right in our wheelhouse. We actually just helped (testimonial first name) who owns (testimonial business name/type) [achieve similar outcome] and (outcome)\u2014just by (solution).\n\n Looking forward to showing you what\u2019s possible.\n\n \u2013 Nolan\n ```\n5. Draft the SMS message using this format: \n - \u201cHey (first name)! Nolan from Agent Stack here\u2014just saw your appointment come through. Pumped to hear more about (project details). See you on (meeting day/date)!\u201d \n6. Output must include: \n - Subject \n - Email \n - Text Message \n\n## Tools \n- Testimonials Tool: For pulling relevant proof points \n- Email Agent: For formatting and polishing \n- Update Sheets 2: To store outputs \n\n## Examples \n- **Output Subject:** \n Excited to connect, Jason \n\n- **Output Email:** \n Hey Jason, \n\n Saw your booking\u2014excited to dive in on Thursday. \n\n Automating custom proposal workflows is right in our wheelhouse. We actually just helped Vibe Studios who runs a creative agency cut 12+ hrs/week of manual drafting and boost proposal output by 4x\u2014just by automating creative packaging from content requests. \n\n Looking forward to showing you what\u2019s possible. \n\n \u2013 Nolan \n\n- **Output Text Message:** \n Hey Jason! Nolan from Agent Stack here\u2014just saw your appointment come through. Pumped to hear more about your proposal automation plans. See you on Thursday! \n\n## SOP (Standard Operating Procedure) \n1. Parse all inputs and identify: \n - Name \n - Specific problem or goal \n - Relevant testimonial \n2. Draft: \n - Subject line using first name \n - Email using the provided structure and tone \n - SMS with natural tone \n3. Output fields: \n - Output Subject \n - Output Email \n - Output Text Message \n4. Use Update Sheets 2 to store the following: \n - Name \n - Email \n - Company Name \n - Subject \n - Email Body \n - SMS Message \n\n## Final Notes \n- Use clean, minimal formatting\u2014no fluff, no pitchy language. \n- The testimonial is central\u2014tie it directly to the prospect\u2019s challenge. \n- The tone should sound like a proactive, thoughtful rep who did their homework. \n---\n\n"
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.9,
"position": [
1080,
0
],
"id": "f13b04eb-0a0e-4a65-8ff6-a2a1e155a057",
"name": "Sales Writing Assistant"
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4",
"mode": "list",
"cachedResultName": "Mock Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 236449331,
"mode": "list",
"cachedResultName": "Meeting Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit#gid=236449331"
},
"filtersUI": {
"values": [
{
"lookupColumn": "company_overview",
"lookupValue": "FILL"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.5,
"position": [
380,
0
],
"id": "6c7bada9-e494-42ef-850b-8025b8c7ec08",
"name": "Review Calls",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4.1",
"mode": "list",
"cachedResultName": "gpt-4.1"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
1040,
240
],
"id": "0a5de4fe-2c19-4c52-8f0b-f9e128ef9a82",
"name": "OpenAI Chat Model1",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4",
"mode": "list",
"cachedResultName": "Mock Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 2060485763,
"mode": "list",
"cachedResultName": "Success Stories",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit#gid=2060485763"
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
1160,
400
],
"id": "1f7864bd-b03b-422b-b674-eb172816670b",
"name": "Testimonials Tool",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"schemaType": "manual",
"inputSchema": "{\n \"type\": \"object\",\n \"properties\": {\n \"subject\": {\n \"type\": \"string\",\n \"description\": \"The subject line of the confirmation email\"\n },\n \"email\": {\n \"type\": \"string\",\n \"description\": \"The full content of the confirmation email\"\n },\n \"text_message\": {\n \"type\": \"string\",\n \"description\": \"The full content of the confirmation SMS message\"\n }\n },\n \"required\": [\"subject\", \"email\", \"text_message\"]\n}\n"
},
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"typeVersion": 1.2,
"position": [
1380,
200
],
"id": "c1b4b76e-b2cc-4ccc-893f-427e9665ccd9",
"name": "Structured Output Parser1"
},
{
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4",
"mode": "list",
"cachedResultName": "Mock Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 236449331,
"mode": "list",
"cachedResultName": "Meeting Data",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1u3WMJwYGwZewW1IztY8dfbEf5yBQxVh8oH7LQp4rAk4/edit#gid=236449331"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Email": "={{ $('Review Calls').item.json.Email }}",
"email_subject": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('email_subject', ``, 'string') }}",
"email_text": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('email_text', ``, 'string') }}",
"sms": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('sms', ``, 'string') }}"
},
"matchingColumns": [
"Email"
],
"schema": [
{
"id": "Call Date",
"displayName": "Call Date",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Name",
"displayName": "Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Email",
"displayName": "Email",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Company Name",
"displayName": "Company Name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Website",
"displayName": "Website",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Business Type",
"displayName": "Business Type",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "Project",
"displayName": "Project",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "company_overview",
"displayName": "company_overview",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "tech_stack",
"displayName": "tech_stack",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "company_updates",
"displayName": "company_updates",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "primary_solution",
"displayName": "primary_solution",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "solution_2",
"displayName": "solution_2",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "solution_3",
"displayName": "solution_3",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "email_subject",
"displayName": "email_subject",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "email_text",
"displayName": "email_text",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "sms",
"displayName": "sms",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "row_number",
"displayName": "row_number",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"readOnly": true,
"removed": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheetsTool",
"typeVersion": 4.5,
"position": [
1300,
340
],
"id": "abda2ec3-9d55-4284-a95b-cdbe5ad84012",
"name": "Update Sheets 2",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
}
],
"connections": {
"When clicking \u2018Test workflow\u2019": {
"main": [
[
{
"node": "Review Calls",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Tavily": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Product List": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Update Sheet": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "AI Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "Sales Writing Assistant",
"type": "main",
"index": 0
}
]
]
},
"Review Calls": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "Sales Writing Assistant",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Testimonials Tool": {
"ai_tool": [
[
{
"node": "Sales Writing Assistant",
"type": "ai_tool",
"index": 0
}
]
]
},
"Structured Output Parser1": {
"ai_outputParser": [
[
{
"node": "Sales Writing Assistant",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Update Sheets 2": {
"ai_tool": [
[
{
"node": "Sales Writing Assistant",
"type": "ai_tool",
"index": 0
}
]
]
},
"Sales Writing Assistant": {
"main": [
[]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "f5d53a9b-71ee-49e1-86c0-e6ed35adc6a0",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "7cd6GfXAxGwxWadd",
"tags": []
}
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.
googleSheetsOAuth2ApiopenAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Sales Assistant Build. Uses manualTrigger, agent, lmChatOpenAi, toolHttpRequest. Event-driven trigger; 13 nodes.
Source: https://github.com/Zie619/n8n-workflows — 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 n8n template automates prospect research and personalized follow-up writing right after a sales call is booked.
Google Sheets Setup Connect your Google account via OAuth2 in the "Review Calls", "Product List", "Testimonials Tool", "Update Sheet", and "Update Sheets 2" nodes. Duplicate the mock Google Sheet (ID:
Automated Research Report Generation with OpenAI, Wikipedia, Google Search, and Gmail/Telegram. Uses lmChatOpenAi, memoryBufferWindow, toolHttpRequest, agent. Event-driven trigger; 26 nodes.
This workflow automates the process of generating professional research reports for researchers, students, and professionals. It eliminates manual research and report formatting by aggregating data, g
Streamline your HR recruitment process with this intelligent automation that reads candidate emails and resumes, analyzes them using GPT-4, and automatically shortlists or rejects applicants based on