AI提案生成システム
中級
これはAI, Marketing分野の自動化ワークフローで、15個のノードを含みます。主にGmail, FormTrigger, GoogleDrive, HttpRequest, GoogleSlidesなどのノードを使用、AI技術を活用したスマート自動化を実現。 AI高度提案ジェネレーター:OpenAI、Googleスライド、PandaDocを統合
前提条件
- •Googleアカウント + Gmail API認証情報
- •Google Drive API認証情報
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "x6UbWXr0iMgy1TEB",
"meta": {
"instanceId": "d7661a849ead114a9aa6d9ceaf4160465aeb79532a35bde62160c840ffba9fc8"
},
"name": "AI Proposal Generator System",
"tags": [
{
"id": "l8MPK4ZirgwFWMno",
"name": "N8N Course",
"createdAt": "2025-01-23T18:12:52.273Z",
"updatedAt": "2025-01-23T18:12:52.273Z"
}
],
"nodes": [
{
"id": "sticky-note-1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-60,
-200
],
"parameters": {
"width": 350,
"height": 160,
"content": "## 🚀 STEP 1: Sales Call Form\n\nCaptures essential deal information in under 30 seconds:\n\n**Form Fields:** Company details, problem description, proposed solution, project scope, timeline, and budget\n\n**Use Case:** Fill out during live sales calls for instant proposal generation\n\n**Result:** Structured data ready for AI processing"
},
"typeVersion": 1,
"name": ""
},
{
"id": "sticky-note-2",
"type": "n8n-nodes-base.stickyNote",
"position": [
120,
-280
],
"parameters": {
"width": 380,
"height": 180,
"content": "## 🧠 STEP 2: AI Content Generation\n\nTransforms basic form inputs into professional proposal content:\n\n**OpenAI Processing:** Uses sophisticated GPT-4 prompting with example-based training\n**Output:** 20+ proposal sections including titles, problem analysis, solutions, scope, and timelines\n**Quality:** Professional business language with consistent tone and formatting\n\n**Key:** AI converts 30-second inputs into comprehensive proposals"
},
"typeVersion": 1,
"name": ""
},
{
"id": "sticky-note-3",
"type": "n8n-nodes-base.stickyNote",
"position": [
450,
-300
],
"parameters": {
"width": 400,
"height": 200,
"content": "## 📄 STEP 3: Document Generation\n\n**Google Slides Path (Free):**\n1. **Google Drive:** Copies proposal template\n2. **Replace Text:** Populates template with AI-generated content\n3. **Gmail:** Sends proposal link via email\n\n**PandaDoc Path (Premium):**\n1. **HTTP Request:** Creates PandaDoc with payment integration\n2. **Gmail:** Sends proposal with signature + payment capabilities\n\n**Result:** Professional proposals ready for client review"
},
"typeVersion": 1,
"name": ""
},
{
"id": "sticky-note-4",
"type": "n8n-nodes-base.stickyNote",
"position": [
800,
-200
],
"parameters": {
"width": 350,
"height": 160,
"content": "## ⚡ WORKFLOW ADVANTAGES\n\n**Speed:** Generate proposals in under 30 seconds during live calls\n**Quality:** AI ensures consistent, professional presentation\n**Dual Options:** Free Google Slides or premium PandaDoc with payments\n**Revenue:** Proven $1,500-$5,000 per implementation\n\n**Business Impact:** Send proposals before competitors even schedule follow-ups"
},
"typeVersion": 1,
"name": ""
},
{
"id": "65eec1e0-5e75-4544-b1d2-ee686d419edd",
"name": "テキストの置換",
"type": "n8n-nodes-base.googleSlides",
"position": [
700,
0
],
"parameters": {
"textUi": {
"textValues": [
{
"text": "{{proposalTitle}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.proposalTitle }}"
},
{
"text": "{{descriptionName}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.descriptionName }}"
},
{
"text": "{{oneParagraphProblemSummary}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.oneParagraphProblemSummary }}"
},
{
"text": "{{solutionHeadingOne}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionHeadingOne }}"
},
{
"text": "{{solutionHeadingTwo}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionHeadingTwo }}"
},
{
"text": "{{solutionHeadingThree}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionHeadingThree }}"
},
{
"text": "{{solutionDescriptionOne}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionDescriptionOne }}"
},
{
"text": "{{solutionDescriptionTwo}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionDescriptionTwo }}"
},
{
"text": "{{solutionDescriptionThree}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.solutionDescriptionThree }}"
},
{
"text": "{{shortScopeTitleOne}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeTitleOne }}"
},
{
"text": "{{shortScopeTitleTwo}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeTitleTwo }}"
},
{
"text": "{{shortScopeTitleThree}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeTitleThree }}"
},
{
"text": "{{shortScopeDescriptionOne}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeDescriptionOne }}"
},
{
"text": "{{shortScopeDescriptionTwo}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeDescriptionTwo }}"
},
{
"text": "{{shortScopeDescriptionThree}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.shortScopeDescriptionThree }}"
},
{
"text": "{{milestoneOneDay}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneOneDay }}"
},
{
"text": "{{milestoneTwoDay}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneTwoDay }}"
},
{
"text": "{{milestoneThreeDay}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneThreeDay }}"
},
{
"text": "{{milestoneFourDay}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneFourDay }}"
},
{
"text": "{{milestoneDescriptionOne}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneDescriptionOne }}"
},
{
"text": "{{milestoneDescriptionTwo}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneDescriptionTwo }}"
},
{
"text": "{{milestoneDescriptionThree}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneDescriptionThree }}"
},
{
"text": "{{milestoneDescriptionFour}}",
"replaceText": "={{ $('OpenAI').item.json.message.content.milestoneDescriptionFour }}"
},
{
"text": "{{cost}}",
"replaceText": "$1,850"
}
]
},
"options": {},
"operation": "replaceText",
"presentationId": "={{ $json.id }}"
},
"credentials": {
"googleSlidesOAuth2Api": {
"id": "ie4yCWIQ8AYXFVxa",
"name": "YouTube"
}
},
"typeVersion": 2
},
{
"id": "618c4452-06f4-4f95-8777-a6e6f204bf33",
"name": "OpenAI",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
160,
0
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "You are a helpful, intelligent writing assistant."
},
{
"content": "Your task is to generate a proposal using input data from a form. This proposal should be highly customized, specific, and high-quality, considering we're going to be sending it immediately after you're done.\n\nContext: we are an automation/no-code agency that develops systems revolving around growth, revenue ops, etc.\n\nThe proposal template we're using has many fields. You must return these fields in one JSON object.\n\nUse this format:\n\n{\n \"proposalTitle\": \"\",\n \"descriptionName\": \"\",\n \"oneParagraphProblemSummary\": \"\",\n \"solutionHeadingOne\": \"\",\n \"solutionDescriptionOne\": \"\",\n \"solutionHeadingTwo\": \"\",\n \"solutionDescriptionTwo\": \"\",\n \"solutionHeadingThree\": \"\",\n \"solutionDescriptionThree\":\"\",\n \"shortScopeTitleOne\": \"\",\n \"shortScopeTitleTwo\": \"\",\n \"shortScopeTitleThree\": \"\",\n \"shortScopeDescriptionOne\": \"\",\n \"shortScopeDescriptionTwo\": \"\",\n \"shortScopeDescriptionThree\": \"\",\n \"milestoneOneDay\": \"\",\n \"milestoneTwoDay\": \"\",\n \"milestoneThreeDay\": \"\",\n \"milestoneFourDay\": \"\",\n \"milestoneDescriptionOne\": \"\",\n \"milestoneDescriptionTwo\": \"\",\n \"milestoneDescriptionThree\": \"\",\n \"milestoneDescriptionFour\": \"\"\n}\n\nRules:\n1. Use a spartan, casual tone of voice.\n2. Be to-the-point but professional—assume you're writing to a sophisticated audience.\n3. Ensure that all fields are filled out. Do not miss a field or leave any variables empty.\n4. Keep things short. If a field contains the term \"Description\" it should be no more than fourteen words. For \"descriptionName\" do not use title case."
},
{
"content": "{\n \"companyName\":\"1SecondCopy\",\n \"problem\": \"they can't generate leads. everything is referral based rn.\",\n \"solution\": \"cold email lead gen system, client reactivation system, and best in class sales training for closing\",\n \"scope\": \"1k/day cold email infra, 30k email leads, 4 weekly zoom sessions for sales training\",\n \"currentDate\":\"Feb 4 2025\",\n \"howSoon\": \"two months\",\n \"depositCost\": \"$1,845\",\n}"
},
{
"role": "assistant",
"content": "{\n \"proposalTitle\": \"Lead Gen System for 1SecondCopy\n\",\n \"descriptionName\": \"A simple, scalable lead generation system built to help grow your content efforts & connect you with the right people.\n\",\n \"oneParagraphProblemSummary\": \"Right now, 1SecondCopy is struggling with an inability to generate qualified leads. The majority of your new clients are referral-based, which, while always nice to have, is not scalable nor is it reliable. Building an alternative strategy—one that allows you to take leads from cold -> close—is vital to the health and longevity of the company, and it’s what we’re going to help you with.\n\",\n \"solutionHeadingOne\": \"Cold Outbound Lead Gen\",\n \"solutionDescriptionOne\": \"We’ll put in place a robust cold-email-based system for you using best practices.\",\n \"solutionHeadingTwo\": \"Client Reactivation System\",\n \"solutionDescriptionTwo\": \"We’ll build a simple, but high-ROI reactivation system to let you extract value from pre-existing clients.\",\n \"solutionHeadingThree\": \"Best-In-Class Sales Training\",\n \"solutionDescriptionThree\": \"We’ll train your team with world-class setting & closing mechanisms.\",\n \"shortScopeTitleOne\": Cold email infrastructure that sends ~1K emails/day\",\n \"shortScopeTitleTwo\": \"30K high-quality scraped email leads (included)\",\n \"shortScopeTitleThree\": \"Four weekly one-hour sales training sessions over Zoom\",\n \"shortScopeDescriptionOne\": \"12 domains, 36 mailboxes, DNS optimization, and warmups included.\",\n \"shortScopeDescriptionTwo\": \"30,000 leads in your target market, delivered by CSV.\",\n \"shortScopeDescriptionThree\": \"We’ll take your sales team from 0->1.\",\n \"milestoneOneDay\": \"February 8th, 2025\",\n \"milestoneTwoDay\": \"February 28th, 2025\",\n \"milestoneThreeDay\": \"March 10th, 2025\",\n \"milestoneFourDay\":\"March 17th-April 1st, 2025\",\n \"milestoneDescriptionOne\": \"Cold email system done & ready for warmup.\",\n \"milestoneDescriptionTwo\": \"Cold email system fully warmed up & operational.\",\n \"milestoneDescriptionThree\": \"10,000 outbound emails sent; analysis & training #1.\"\n \"milestoneDescriptionFour\":\"One sales training per week alongside iteration & handoff.\"\n}"
},
{
"content": "={\n \"companyName\":\"{{ $json['Company Name'] }}\",\n \"problem\": \"{{ $json.Problem }}\",\n \"solution\": \"{{ $json.Solution}}\",\n \"scope\": \"{{ $json.Scope }}\",\n \"currentDate\":\"{{ $now.toLocaleString({ dateStyle: 'medium' }) }}\",\n \"howSoon\": \"{{ $json['How soon?'] }}\",\n \"depositCost\": \"{{ $json.Cost }}\",\n}"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "oLLACDYfGm4C4ouV",
"name": "YouTube "
}
},
"typeVersion": 1.6
},
{
"id": "850e7d84-2001-421f-a8a2-aa9aa64f06b9",
"name": "Google ドライブ",
"type": "n8n-nodes-base.googleDrive",
"position": [
500,
0
],
"parameters": {
"name": "={{ $json.message.content.proposalTitle }}",
"fileId": {
"__rl": true,
"mode": "id",
"value": "1fHzjDQtZouAwfv4kn5uvgpTWqwhTAlPrGkdtkbYBkNE"
},
"options": {
"copyRequiresWriterPermission": false
},
"operation": "copy"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "8R2NiLt8owCA0E2O",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "dda7e0fa-e8cc-40a8-8af5-9f22b70f4752",
"name": "Gmail",
"type": "n8n-nodes-base.gmail",
"position": [
900,
0
],
"webhookId": "b989215e-e975-44a7-9dc7-fd51e7310cba",
"parameters": {
"sendTo": "={{ $('On form submission').item.json.Email }}",
"message": "=Hey Nick,\n\nThanks for the great call earlier. I had a moment after our chat to put together a detailed proposal for you—please take a look at your earliest convenience and let me know your thoughts.\n\nYou'll find it here: https://docs.google.com/presentation/d/{{ $json.presentationId }}/edit\n\nIf you have any questions, just shout. I've also sent over an invoice for the project (just to keep things convenient) and can get started anytime that's sorted.\n\nThanks,\nNick",
"options": {
"appendAttribution": false
},
"subject": "Re: Proposal for LeftClick",
"emailType": "text"
},
"credentials": {
"gmailOAuth2": {
"id": "YqmvyP5s2u0IHOHB",
"name": "Gmail account 3"
}
},
"typeVersion": 2.1
},
{
"id": "2d9e8695-d112-40a7-810a-94f3b3919382",
"name": "フォーム送信時",
"type": "n8n-nodes-base.formTrigger",
"position": [
-20,
0
],
"webhookId": "24fd835d-9132-4faf-b715-755e75aee9be",
"parameters": {
"options": {
"appendAttribution": false
},
"formTitle": "Sales Call Logging Form",
"formFields": {
"values": [
{
"fieldLabel": "First Name",
"requiredField": true
},
{
"fieldLabel": "Last Name",
"requiredField": true
},
{
"fieldLabel": "Company Name",
"requiredField": true
},
{
"fieldType": "email",
"fieldLabel": "Email"
},
{
"fieldLabel": "Website",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Problem",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Solution",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Scope",
"requiredField": true
},
{
"fieldLabel": "Cost",
"requiredField": true
},
{
"fieldLabel": "How soon?",
"requiredField": true
}
]
},
"formDescription": "This form logs a sales call & automatically generates a proposal."
},
"typeVersion": 2.2
},
{
"id": "bc1bf3dd-7261-4f56-a71b-236fbde109ff",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-60,
-100
],
"parameters": {
"width": 1220,
"height": 280,
"content": "## Google Slides AI Proposal Generator\n**This flow generates proposals using the free Google Slides solution**."
},
"typeVersion": 1
},
{
"id": "d59a6b99-e112-424c-b6e5-3eeb92a1c784",
"name": "OpenAI1",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
160,
460
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "You are a helpful, intelligent writing assistant."
},
{
"content": "=Your task is to generate a proposal using input data from a form. This proposal should be highly customized, specific, and high-quality, considering we're going to be sending it immediately after you're done.\n\nContext: we are an automation/no-code agency that develops systems revolving around growth, revenue ops, etc.\n\nThe proposal template we're using has many fields. You must return these fields in one JSON object.\n\nUse this format:\n\n{\n \"proposalTitle\": \"\",\n \"descriptionName\": \"\",\n \"problemTitle\": \"\",\n \"oneParagraphProblemSummary\": \"\",\n \"solutionTitle\": \"\",\n \"solutionText\": \"\",\n \"scopeOne\": \"\",\n \"scopeTwo\": \"\",\n \"scopeThree\": \"\",\n \"scopeFour\": \"\",\n \"scopeFive\": \"\",\n \"timelineOne\": \"\",\n \"timelineTwo\": \"\",\n \"timelineThree\": \"\",\n \"timelineFour\": \"\"\n}\n\nRules:\n1. Use a spartan, casual tone of voice.\n2. Be to-the-point but professional—assume you're writing to a sophisticated audience.\n3. Ensure that all fields are filled out. Do not miss a field or leave any variables empty.\n4. For oneParagraphProblemSummary and solutionText, make sure to number the responses (usually 3, make sure they're inside of the string)."
},
{
"content": "={\n \"companyName\":\"1SecondCopy\",\n \"problem\": \"they can't generate leads. everything is referral based rn.\",\n \"solution\": \"cold email lead gen system, client reactivation system, and best in class sales training for closing\",\n \"scope\": \"1k/day cold email infra, 30k email leads, 4 weekly zoom sessions for sales training\",\n \"currentDate\":\"Feb 4 2025\",\n \"howSoon\": \"two months\",\n \"depositCost\": \"$1,845\",\n}"
},
{
"role": "assistant",
"content": "={\n \"proposalTitle\": \"Lead Gen System for 1SecondCopy\n\",\n \"descriptionName\": \"A simple, scalable lead generation system built to help grow your content efforts & connect you with the right people.\n\",\n \"problemTitle\":\"Inability to generate leads\"\n \"oneParagraphProblemSummary\": \"Right now, 1SecondCopy is struggling with:\\n\\n 1. An inability to generate qualified leads.\\nThe majority of your new clients are referral-based, which, while always nice to have, is not scalable nor is it reliable. Building an alternative strategy—one that allows you to take leads from cold -> close—is vital to the health and longevity of the company, and it’s what we’re going to help you with.\\n\\n 2. No standardized followup mechanism.\\nWithout a way to follow up with leads, you're leaving the majority of the money that one of those leads could produce for you on the table.\n\",\n \"solutionTitle\": \"Sales & Lead Generation Solutions\",\n \"solutionText\": \"1. Cold Outbound Lead Gen\\nIn order to generate leads efficiently, we’ll put in place a robust cold-email-based system for you using best practices.\\n\\n2. Client Reactivation System\\nIn order to extract value from pre-existing clients, we’ll build a simple but high-ROI reactivation system.\\n\\n3. Best-In-Class Sales Training\\nIn order to improve conversion rates, we’ll train your team with world-class setting & closing mechanisms.\"\n \"scopeOne\":\"We'll create a database to store both videos and competitors.\",\n \"scopeTwo\":\"We'll create a simple form to quickly add competitors to your database.\",\n \"scopeThree\":\"We'll build a daily flow that automatically generates video outlines based on the scrapes.\",\n \"scopeFour\":\"We'll record documentation showing you how to manage and update the system.\",\n \"scopeFive\":\"We'll provide one, two-hour team training session to teach your company how to use the system.\",\n \"timelineOne\": \"Cold email system done & ready for warmup: February 8th, 2025\",\n \"timelineTwo\": \"Cold email system fully warmed up & operational: February 28th, 2025\",\n \"timelineThree\": \"10,000 outbound emails sent; analysis & training #1: March 10th, 2025\",\n \"timelineFour\":\"One sales training per week alongside iteration & handoff: March 17th-April 1st, 2025\",\n}"
},
{
"content": "={\n \"companyName\":\"{{ $json['Company Name'] }}\",\n \"problem\": \"{{ $json.Problem }}\",\n \"solution\": \"{{ $json.Solution}}\",\n \"scope\": \"{{ $json.Scope }}\",\n \"currentDate\":\"{{ $now.toLocaleString({ dateStyle: 'medium' }) }}\",\n \"howSoon\": \"{{ $json['How soon?'] }}\",\n \"depositCost\": \"{{ $json.Cost }}\",\n}"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "oLLACDYfGm4C4ouV",
"name": "YouTube "
}
},
"typeVersion": 1.6
},
{
"id": "66ec15ea-ba46-4aad-993a-e0b9cefde871",
"name": "Gmail1",
"type": "n8n-nodes-base.gmail",
"position": [
740,
460
],
"webhookId": "470caaaa-62ff-4468-973d-4b1082cfe57a",
"parameters": {
"sendTo": "={{ $('On form submission1').item.json.Email }}",
"message": "=Hey Nick,\n\nThanks for the great call earlier. I had a moment after our chat to put together a detailed proposal for you—please take a look at your earliest convenience and let me know your thoughts.\n\nYou'll find it here: https://docs.google.com/presentation/d/{{ $json.presentationId }}/edit\n\nIf you have any questions, just shout. I've also sent over an invoice for the project (just to keep things convenient) and can get started anytime that's sorted.\n\nThanks,\nNick",
"options": {
"appendAttribution": false
},
"subject": "Re: Proposal for LeftClick",
"emailType": "text"
},
"credentials": {
"gmailOAuth2": {
"id": "YqmvyP5s2u0IHOHB",
"name": "Gmail account 3"
}
},
"typeVersion": 2.1
},
{
"id": "89833949-672b-4120-94fe-2f5b9b8b21de",
"name": "フォーム送信時1",
"type": "n8n-nodes-base.formTrigger",
"position": [
-20,
460
],
"webhookId": "f0e8d4a0-8002-4804-aa90-4566fef26283",
"parameters": {
"options": {
"appendAttribution": false
},
"formTitle": "Sales Call Logging Form",
"formFields": {
"values": [
{
"fieldLabel": "First Name",
"requiredField": true
},
{
"fieldLabel": "Last Name",
"requiredField": true
},
{
"fieldLabel": "Company Name",
"requiredField": true
},
{
"fieldType": "email",
"fieldLabel": "Email"
},
{
"fieldLabel": "Website",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Problem",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Solution",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Scope",
"requiredField": true
},
{
"fieldLabel": "Cost",
"requiredField": true
},
{
"fieldLabel": "How soon?",
"requiredField": true
}
]
},
"formDescription": "This form logs a sales call & automatically generates a proposal."
},
"typeVersion": 2.2
},
{
"id": "5cf9ca5e-2ffa-492f-899f-4668786dabbd",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-60,
360
],
"parameters": {
"width": 1220,
"height": 280,
"content": "## PandaDoc AI Proposal Generator\n**This flow generates proposals using the paid PandaDoc solution, and also sends an invoice alongside it**."
},
"typeVersion": 1
},
{
"id": "6b8e90ef-c520-40b6-9ec6-a7d422763d8a",
"name": "HTTP リクエスト",
"type": "n8n-nodes-base.httpRequest",
"position": [
520,
460
],
"parameters": {
"url": "https://api.pandadoc.com/public/v1/documents/",
"method": "POST",
"options": {},
"jsonBody": "={\n \"name\": \"{{ $json.message.content.proposalTitle }}\",\n \"fields\": {\n \"Initials\": {\n \"value\": \"EI\"\n }\n },\n \"tokens\": [\n {\n \"name\": \"Client.Email\",\n \"value\": \"{{ $('On form submission1').item.json.Email }}\"\n },\n {\n \"name\": \"Sender.Email\",\n \"value\": \"nick@leftclick.ai\"\n },\n {\n \"name\": \"Client.Scope1\",\n \"value\": \"{{ $json.message.content.scopeOne }}\"\n },\n {\n \"name\": \"Client.Scope2\",\n \"value\": \"{{ $json.message.content.scopeTwo }}\"\n },\n {\n \"name\": \"Client.Scope3\",\n \"value\": \"{{ $json.message.content.scopeThree }}\"\n },\n {\n \"name\": \"Client.Scope4\",\n \"value\": \"{{ $json.message.content.scopeFour }}\"\n },\n {\n \"name\": \"Client.Scope5\",\n \"value\": \"{{ $json.message.content.scopeFive }}\"\n },\n {\n \"name\": \"Client.Company\",\n \"value\": \"{{ $('On form submission1').item.json['Company Name'] }}\"\n },\n {\n \"name\": \"Sender.Company\",\n \"value\": \"WorkflowLoop\"\n },\n {\n \"name\": \"Client.LastName\",\n \"value\": \"{{ $('On form submission1').item.json['Last Name'] }}\"\n },\n {\n \"name\": \"Sender.LastName\",\n \"value\": \"Saraev\"\n },\n {\n \"name\": \"Client.FirstName\",\n \"value\": \"{{ $('On form submission1').item.json['First Name'] }}\"\n },\n {\n \"name\": \"Client.Timeline1\",\n \"value\": \"{{ $json.message.content.timelineOne }}\"\n },\n {\n \"name\": \"Client.Timeline2\",\n \"value\": \"{{ $json.message.content.timelineTwo }}\"\n },\n {\n \"name\": \"Client.Timeline3\",\n \"value\": \"{{ $json.message.content.timelineThree }}\"\n },\n {\n \"name\": \"Client.Timeline4\",\n \"value\": \"{{ $json.message.content.timelineFour }}\"\n },\n {\n \"name\": \"Sender.FirstName\",\n \"value\": \"Nick\"\n },\n {\n \"name\": \"Client.ProblemText\",\n \"value\": \"{{ $json.message.content.oneParagraphProblemSummary }}\"\n },\n {\n \"name\": \"Client.ProblemTitle\",\n \"value\": \"{{ $json.message.content.problemTitle }}\"\n },\n {\n \"name\": \"Client.SolutionText\",\n \"value\": {{ JSON.stringify($json.message.content.solutionText) }}\n },\n {\n \"name\": \"Client.ProposalTitle\",\n \"value\": \"{{ $json.message.content.proposalTitle }}\"\n },\n {\n \"name\": \"Client.SolutionTitle\",\n \"value\": \"{{ $json.message.content.solutionTitle }}\"\n }\n ],\n \"metadata\": {},\n \"recipients\": [\n {\n \"email\": \"{{ $('On form submission1').item.json.Email }}\",\n \"role\": \"Client\"\n },\n {\n \"email\": \"nick@leftclick.ai\",\n \"company\": \"WorkflowLoop\",\n \"last_name\": \"Saraev\",\n \"first_name\": \"Nick\",\n \"role\": \"Sender\"\n }\n ],\n \"template_uuid\": \"yxge9HxfgWhvqKjFXwWEpS\",\n \"pricing_tables\": [\n {\n \"name\": \"Pricing Table 1\",\n \"options\": {\n \"currency\": \"USD\"\n },\n \"sections\": [\n {\n \"rows\": [\n {\n \"data\": {\n \"qty\": 1,\n \"name\": \"{{ $json.message.content.proposalTitle }}\",\n \"price\": {{ $('On form submission1').item.json.Cost.replace(\"$\",\"\").replace(\",\",\"\").toNumber() }}\n },\n \"options\": {\n \"optional\": false,\n \"qty_editable\": false,\n \"optional_selected\": false\n }\n }\n ],\n \"title\": \"Pricing Section\",\n \"default\": true\n }\n ]\n }\n ]\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "API-Key {yourApiKeyGoesHere}"
},
{
"name": "accept",
"value": "application/json"
}
]
}
},
"typeVersion": 4.2
}
],
"active": false,
"pinData": {
"On form submission1": [
{
"json": {
"Cost": "$3,525",
"Email": "nickolassaraev@gmail.com",
"Scope": "form you can fill out with competitors, that adds them to a db. once per day db is scraped and you get however many people are in the Sheet x however many vids they put out",
"Problem": "they're struggling making YouTube vids. Everything is really time intensive rn, mostly because they don't have scripts.",
"Website": "https://leftclick.ai",
"Solution": "AI script writing system, scrapes competitor youtube vids for ideas and rephrases best performing titles, then writes outlines",
"formMode": "test",
"How soon?": "two weeks",
"Last Name": "Saraev",
"First Name": "Peter",
"submittedAt": "2025-02-04T16:18:45.810-07:00",
"Company Name": "LeftCLick"
}
}
]
},
"settings": {
"executionOrder": "v1"
},
"versionId": "2452f9ed-c796-4e03-89c6-f7c735b77966",
"connections": {
"618c4452-06f4-4f95-8777-a6e6f204bf33": {
"main": [
[
{
"node": "850e7d84-2001-421f-a8a2-aa9aa64f06b9",
"type": "main",
"index": 0
}
]
]
},
"d59a6b99-e112-424c-b6e5-3eeb92a1c784": {
"main": [
[
{
"node": "6b8e90ef-c520-40b6-9ec6-a7d422763d8a",
"type": "main",
"index": 0
}
]
]
},
"850e7d84-2001-421f-a8a2-aa9aa64f06b9": {
"main": [
[
{
"node": "65eec1e0-5e75-4544-b1d2-ee686d419edd",
"type": "main",
"index": 0
}
]
]
},
"6b8e90ef-c520-40b6-9ec6-a7d422763d8a": {
"main": [
[
{
"node": "66ec15ea-ba46-4aad-993a-e0b9cefde871",
"type": "main",
"index": 0
}
]
]
},
"65eec1e0-5e75-4544-b1d2-ee686d419edd": {
"main": [
[
{
"node": "dda7e0fa-e8cc-40a8-8af5-9f22b70f4752",
"type": "main",
"index": 0
}
]
]
},
"2d9e8695-d112-40a7-810a-94f3b3919382": {
"main": [
[]
]
},
"89833949-672b-4120-94fe-2f5b9b8b21de": {
"main": [
[
{
"node": "d59a6b99-e112-424c-b6e5-3eeb92a1c784",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 人工知能, マーケティング
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Apifyによる新しいInstagram Reelsのスクレイピング -> 要約 -> 表への追加
Instagramのコンテンツ発見と再利用の自動化にはApify、GPT-4o、Perplexityを使用
Limit
Merge
Http Request
+
Limit
Merge
Http Request
16 ノードNick Saraev
人工知能
Facebook広告の競合クリエイティブ分析と自動メールレポート
GPT-4とGeminiを使って競合対象のFacebook広告を分析し、メールでのレポート生成
Set
Wait
Gmail
+
Set
Wait
Gmail
31 ノードSamirLiu
人工知能
AI、ElevenLabs、マルチプラットフォーム公開を使ってPOVビデオの作成と承認
AI、ElevenLabs、そしてマルチプラットフォーム公開を使ったPOVビデオの作成と承認(TikTok/IG/YT)
If
Set
Code
+
If
Set
Code
60 ノードImmanuel
デザイン
✨🤖X + Facebook + Instagram + LinkedIn向けの自動化AI駆動型ソーシャルメディアコンテンツファクトリー
✨🤖 AIを使用してマルチプラットフォームでソーシャルメディアコンテンツ作成を自動化
If
Set
Code
+
If
Set
Code
57 ノードJoseph LePage
人工知能
AI提案生成システム
営業フォローアップ電話に基づくAI駆動の自動提案書生成ツール
Gmail
Form Trigger
Google Drive
+
Gmail
Form Trigger
Google Drive
6 ノードGerald Denor
営業
自動化提案ジェネレーター
Googleスライドを基盤としたAI駆動の提案書自動生成
Gmail
Form Trigger
Google Drive
+
Gmail
Form Trigger
Google Drive
6 ノードDavid Olusola
人工知能