8
n8n 中文网amn8n.com

使用 Google Slides 和 Flux 将会议转录转换为 AI 生成演示文稿

高级

这是一个Content Creation, Multimodal AI领域的自动化工作流,包含 107 个节点。主要使用 Set, Code, Wait, Merge, GoogleDocs 等节点。 使用 Google Slides 和 Flux 将会议转录转换为 AI 生成演示文稿

前置要求
  • Google Drive API 凭证
  • 可能需要目标 API 的认证凭证
  • Google Sheets API 凭证
  • OpenAI API Key
  • Google Gemini API Key
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "meta": {
    "instanceId": "b3c467df4053d13fe31cc98f3c66fa1d16300ba750506bfd019a0913cec71ea3",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "e12b59e2-a155-4ec6-bc24-47da94741d15",
      "name": "表单提交时",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -752,
        320
      ],
      "webhookId": "a9a9aa71-e760-4d27-a859-a55a7d868d54",
      "parameters": {
        "options": {},
        "formTitle": "Nimbus Soft Presentation AI",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Client Name",
              "requiredField": true
            },
            {
              "fieldLabel": "Meeting transcript URL"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "aa1ba983-6b2b-4fed-bb0e-d810b17ef860",
      "name": "创建演示文稿",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -528,
        320
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/drive/v3/files/1B5KbL9qPKzFgQZFwHqs43RDQITNwCKlZu_lHVQWQSJs/copy",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"name\": \"{{ $('On form submission').item.json['Client Name'] }} Sales Presentation\",\n  \"parents\": [\"1iGzAFfARYeysYSTz7hdA05ndKCeictZd\"]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "=application/json"
            }
          ]
        },
        "nodeCredentialType": "googleDriveOAuth2Api"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "4ce0eec6-4840-4cd0-a046-5cb00c214a90",
      "name": "在主表格中追加",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -304,
        320
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "PPT Plan Pending",
            "Decription": "={{ $json.name }}",
            "Presentation ID": "={{ $json.id }}",
            "Presentation URL": "=https://docs.google.com/presentation/d/{{ $json.id }}/view",
            "Meeting Date Time": "={{ $now }}",
            "Meeting Transcript": "={{ $('On form submission').item.json['Meeting transcript URL'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Decription",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Decription",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Date Time",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Meeting Date Time",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Transcript",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Meeting Transcript",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation Plan",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation Plan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Presentation URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "49ee62ff-3263-46f0-882b-a50ce922705f",
      "name": "在图片表格中追加",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -80,
        320
      ],
      "parameters": {
        "columns": {
          "value": {
            "Presentation ID": "={{ $json['Presentation ID'] }}",
            "Generation Status": "Pending"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "95d8cc0a-7dd0-4fd4-bf4a-9dc337c42b17",
      "name": "在客户表格中追加",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        144,
        320
      ],
      "parameters": {
        "columns": {
          "value": {
            "Presentation ID": "={{ $json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Client Logo",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Client Logo",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Logo Update Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Logo Update Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 569546984,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=569546984",
          "cachedResultName": "Client Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "5f0db0a8-d069-4a22-8f60-bee474febff5",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        160
      ],
      "parameters": {
        "color": 4,
        "width": 1200,
        "height": 480,
        "content": "## 1. 创建PPT并设置数据库"
      },
      "typeVersion": 1
    },
    {
      "id": "84e6ee2d-0e60-4528-a42a-5cd5f28dfaf5",
      "name": "OpenAI 聊天模型",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1104,
        480
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "5UniF8cNOayWi0zD",
          "name": "My Open AI Account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "d037b9d6-3191-4f73-bc2c-05464a7df395",
      "name": "获取待处理行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        592,
        320
      ],
      "parameters": {
        "options": {
          "returnFirstMatch": true
        },
        "filtersUI": {
          "values": [
            {
              "lookupValue": "PPT Plan Pending",
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "a107c2bc-3b34-412d-b922-392637096851",
      "name": "获取转录文本",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        816,
        320
      ],
      "parameters": {
        "operation": "get",
        "documentURL": "={{ $json['Meeting Transcript'] }}"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "7d06b89e-a638-4791-90c5-3460c11e20a1",
      "name": "生成演示文稿计划",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1040,
        320
      ],
      "parameters": {
        "text": "={{ $json.content }}",
        "options": {
          "systemMessage": "=# N8N AI Agent System Message: Sales Presentation Generator\n\nYou are an AI agent specialized in creating detailed sales presentation plans from meeting transcription notes for **NimbusSoft**, an all-in-one SaaS platform. Your role is to generate comprehensive, structured presentation blueprints that sales teams can immediately execute.\n\n---\n\n## 🎯 Primary Objective\n\nTransform meeting transcripts into actionable, detailed presentation plans that personalize the client’s problems with NimbusSoft’s solution fit, position NimbusSoft as the optimal choice, and outline clear next steps.\n\n---\n\n## 🏢 NimbusSoft Company Profile\n\n**Core Product:** All-in-one SaaS platform that centralizes operational tools (CRM, project management, finance, ERP, marketing) into a unified hub.\n\n**Key Capabilities:**\n\n* Real-time dashboards eliminating reporting delays\n* 60+ native integrations + open API connectors\n* Automated cross-system workflows\n* Enterprise-grade security (SOC 2, ISO 27001, GDPR)\n* Non-technical user adoption with full support\n\n**Value Delivered:**\n\n* 70% faster reporting (days → minutes)\n* 20% operational overhead reduction\n* Improved decision-making with live data\n* Scalable 30-day pilot → <90-day full implementation\n\n---\n\n## 📑 Required Output Structure\n\n### SLIDE 1: COVER SLIDE\n\n**Purpose:** Professional branded opening\n**Content Requirements:**\n\n* Meeting date, attendees, and company names\n* Company logos (NimbusSoft + client)\n* Professional headshots if available\n* Title: “Partnership Proposal”\n\n**Visual Description:**\n\n* Split-screen layout with NimbusSoft logo (left), client logo (right)\n* Centered title text: *Partnership Proposal*\n* Corporate blue and white theme\n\n**Image Requirements:**\n\n* High-resolution logos\n* Clean corporate design template\n* Professional headshots if available\n\n🚫 **No Notes Reference here**\n\n---\n\n### SLIDE 2: TABLE OF CONTENTS\n\n**Purpose:** Provide clear roadmap for the presentation\n**Content Requirements:**\n\n* List 5–7 sections:\n\n  * Client Situation Summary\n  * Cost of Inaction\n  * NimbusSoft Solution Overview\n  * Quantified Value Proposition\n  * Why NimbusSoft Wins\n  * Implementation Roadmap\n  * Next Steps & Call to Action\n\n**Visual Description:**\n\n* Simple list format\n* NimbusSoft branding footer/header\n\n**Image Requirements:**\n\n* Clean corporate design with subtle dividers\n\n🚫 **No Notes Reference here**\n\n---\n\n### SLIDE 3: CLIENT SITUATION SUMMARY\n\n**Objective:** Demonstrate deep understanding of current challenges\n**Content Bullets:**\n\n* Extract specific pain points mentioned in transcript\n* Quantify impacts where possible\n* Reference tools/systems currently used\n* Include direct stakeholder quotes\n\n**Visual Description:**\n\n* Flow diagram of disconnected systems\n* Red X marks between tools\n* Frustrated employee icon with metrics (e.g., “3–4 day delay”)\n\n**Image Requirements:**\n\n* Tool icons (Salesforce, Asana, QuickBooks, etc.)\n* Pain point callouts\n\n**Notes Reference:**\nConcise, third-person factual digest summarizing client situation (e.g., *“Operations manager noted 3–4 day delays due to manual exports; CEO emphasized 20% overhead reduction mandate.”*)\n\n---\n\n### SLIDE 4: THE COST OF INACTION\n\n**Objective:** Create urgency by showing risks of doing nothing\n**Content Bullets:**\n\n* Missed opportunities mentioned\n* Time/cost waste calculations\n* Strategic goal misalignments\n* Competitive disadvantage risks\n\n**Visual Description:**\n\n* Split “Current vs Future” state layout\n* Declining vs growing graphs\n\n**Image Requirements:**\n\n* Timeline of missed opportunities\n* Cost/waste graphics\n\n**Notes Reference:**\nThird-person digest connecting delays, lost revenue, and risk to strategic goals.\n\n---\n\n### SLIDE 5: NIMBUSOFT SOLUTION OVERVIEW\n\n**Objective:** Present NimbusSoft as the perfect fit\n**Content Bullets:**\n\n* Map pain points → NimbusSoft features\n* Highlight integrations with their exact tools\n* Security/compliance assurances\n* Automation workflow examples\n\n**Visual Description:**\n\n* Central NimbusSoft hub connected to all tools\n* Real-time dashboard mockup\n\n**Image Requirements:**\n\n* Integration diagram\n* Dashboard visuals\n\n**Notes Reference:**\nSummary highlighting how NimbusSoft features align directly with client challenges and integrations.\n\n---\n\n### SLIDE 6: QUANTIFIED VALUE PROPOSITION\n\n**Objective:** Show measurable business outcomes\n**Content Bullets:**\n\n* 70% faster reporting applied to their delays\n* 20% overhead reduction mapped to goals\n* ROI estimates\n* FTE or cost savings\n\n**Visual Description:**\n\n* ROI dashboard\n* Before/after timeline comparison\n\n**Image Requirements:**\n\n* Upward trending graphs\n* ROI calculators\n\n**Notes Reference:**\nThird-person summary of quantifiable outcomes (e.g., *“With NimbusSoft, reporting would shift from 4 days to <1 hour, aligning with CEO’s mandate for efficiency.”*).\n\n---\n\n### SLIDE 7: WHY NIMBUSOFT WINS\n\n**Objective:** Differentiate from competitors\n**Content Bullets:**\n\n* Address specific concerns (complexity, security, rollout)\n* Show case studies from similar industries\n* Emphasize unique advantages (integrations, API, support, certifications)\n\n**Visual Description:**\n\n* Competitor comparison chart\n* Client testimonial quotes\n\n**Image Requirements:**\n\n* Success metrics from similar clients\n* Security badges (SOC 2, ISO 27001)\n\n**Notes Reference:**\nDigest highlighting competitor weaknesses and NimbusSoft’s proven strengths.\n\n---\n\n### SLIDE 8: IMPLEMENTATION ROADMAP\n\n**Objective:** Show achievable path forward\n**Content Bullets:**\n\n* 30-day pilot scope\n* 90-day rollout timeline\n* Milestones and deliverables\n* Support & risk mitigation\n\n**Visual Description:**\n\n* Timeline or Gantt chart\n* Support team diagram\n\n**Image Requirements:**\n\n* Phase breakdown visuals\n* Icons for training/support\n\n**Notes Reference:**\nSummary of rollout feasibility, pilot scope, and risk mitigation.\n\n---\n\n### SLIDE 9: NEXT STEPS & CALL TO ACTION\n\n**Objective:** Secure commitment and momentum\n**Content Bullets:**\n\n* Immediate action items\n* Proposal delivery timeline\n* Technical deep-dive scheduling\n* Decision-making timeline\n* Contact info\n\n**Visual Description:**\n\n* Action items checklist\n* Calendar/timeline\n\n**Image Requirements:**\n\n* Contact cards with names/photos\n\n**Notes Reference:**\nDigest of agreed next steps, owners, and deadlines.\n\n---\n\n## 📊 Content Extraction Instructions\n\nFrom each transcript, extract and organize:\n\n1. **Client Company Details:** Company name, size, industry, attendees, tools, pain points\n2. **Quantifiable Challenges:** Time delays, costs, missed opportunities, strategic goals\n3. **Technical Requirements:** Integrations, security, user skill, constraints\n4. **Decision Context:** Stakeholders, timeline, budget, success criteria\n\n---\n\n## ✍️ Formatting Requirements\n\nFor each slide, provide:\n\n1. Slide number & title\n2. Objective statement\n3. Content bullets\n4. Visual description\n5. Image requirements\n6. Notes Reference (third-person factual digest, no scripts)\n\n---\n\n## ✅ Quality Checklist\n\n* [ ] Every pain point addressed\n* [ ] NimbusSoft mapped directly to needs\n* [ ] Metrics prominently featured\n* [ ] Implementation feels low-risk\n* [ ] Next steps crystal clear\n* [ ] Visuals support narrative\n* [ ] Notes Reference adds factual clarity\n\n---\n\n⚡ **Remember:** The presentation must be detailed enough that any sales rep can deliver it effectively with minimal prep. The **Notes Reference** is for factual double-checking, not for direct reading.\n"
        },
        "promptType": "define",
        "needsFallback": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "82241553-b9dd-40b4-b766-7c28c2d6cc04",
      "name": "更新PPT计划文档",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        1616,
        320
      ],
      "parameters": {
        "actionsUi": {
          "actionFields": [
            {
              "text": "={{ $('Generate Presentation Plan').item.json.output }}",
              "action": "insert"
            }
          ]
        },
        "operation": "update",
        "documentURL": "={{ $json.id }}"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "de1bf4ba-857a-4164-8835-4338783ead12",
      "name": "创建PPT计划文档",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        1392,
        320
      ],
      "parameters": {
        "title": "={{ $('Get Pending Row').item.json.Decription }} Plan",
        "folderId": "1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "0a42a281-f4a2-425b-8c31-f20e6efb30e1",
      "name": "在主表格中更新行 + 触发图片生成",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1840,
        320
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Images Pending",
            "Presentation ID": "={{ $('Get Pending Row').item.json['Presentation ID'] }}",
            "Presentation Plan": "=https://docs.google.com/document/d/{{ $json.documentId }}/view"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Decription",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Decription",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Date Time",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Date Time",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Transcript",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Transcript",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation Plan",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Presentation Plan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation URL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "f3c772af-6f13-4f8d-b7bc-d823e96a7aaf",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        352,
        160
      ],
      "parameters": {
        "width": 1648,
        "height": 480,
        "content": "## 2. 生成演示文稿计划"
      },
      "typeVersion": 1
    },
    {
      "id": "65aa70a2-f096-4ac6-895e-be3cf971bf8e",
      "name": "获取文档",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        -384,
        1312
      ],
      "parameters": {
        "operation": "get",
        "documentURL": "={{ $json['Presentation Plan'] }}"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "3465f458-2bad-44e4-85a3-a415ca716e82",
      "name": "转换为文件",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        832
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "66f2ed16-946e-4e82-8aa8-d0bdfd525b22",
      "name": "编辑字段",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        832
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "69f3496a-3a29-489b-bfd5-f827a00bb76d",
      "name": "HTTP 请求 1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        832
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_1 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "0d9c4601-19f2-4094-94e7-9ec647189f44",
      "name": "上传文件",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        832
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "2f7146ef-b0f8-4847-9d6b-822ed3a3c29e",
      "name": "结构化输出解析器",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -16,
        1536
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"image_prompts\": {\n    \"image_prompt_1\": \"text for slide 3 image\",\n    \"image_prompt_2\": \"text for slide 4 image\",\n    \"image_prompt_3\": \"text for slide 5 image\",\n    \"image_prompt_4\": \"text for slide 6 image\",\n    \"image_prompt_5\": \"text for slide 7 image\",\n    \"image_prompt_6\": \"text for slide 8 image\",\n    \"image_prompt_7\": \"text for slide 9 image\"\n  }\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "891cb280-054c-4776-8f88-f71c6a88bac5",
      "name": "Google Gemini 聊天模型",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -288,
        1536
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "zT4YaNflEp2E6S3m",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "909e705e-77f4-482d-a668-b0bc82aebea6",
      "name": "获取表格中的行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -608,
        1312
      ],
      "parameters": {
        "options": {
          "returnFirstMatch": true
        },
        "filtersUI": {
          "values": [
            {
              "lookupValue": "Images Pending",
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "247d897f-3c23-4d5b-8ae4-0c1529e7e909",
      "name": "在表格中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        832
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 1": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "a4c167f0-3fc1-4748-b6ad-4a12ae7f8c45",
      "name": "转换为文件1",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        1024
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "7709a288-6a0a-47ad-8c52-2e39eb67bfc9",
      "name": "编辑字段1",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        1024
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "1a768958-2fc6-431e-8db2-0598b3c358c9",
      "name": "HTTP 请求 2",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        1024
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_2 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e41d7317-5a27-4c2d-aefa-77a7fe6d8aaf",
      "name": "上传文件1",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        1024
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "45639d92-16e0-43d5-b794-902ce0c21f89",
      "name": "在sheet1中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        1024
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 2": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "2e29c1b6-d6a7-4182-9f11-69aa6abd0400",
      "name": "转换为文件2",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        1216
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "9d9ca531-4c50-46a5-8bf0-09b1e7ba594c",
      "name": "编辑字段2",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        1216
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "cf9ee8f3-4b0c-4aea-9b26-82bae9219798",
      "name": "HTTP 请求",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        1216
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_1 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "3f5fe1e5-9549-4234-b2d2-2b767f803ce9",
      "name": "上传文件2",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        1216
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "d0c93e49-5545-403c-af53-816a8271f012",
      "name": "在sheet2中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        1216
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 3": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "8b8b2408-bf6a-4d57-917d-250a93ed0ee5",
      "name": "转换为文件3",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        1408
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "24b40aa6-88e0-4833-8345-33b1f3493372",
      "name": "编辑字段3",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        1408
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b83246db-6c50-4c0f-8163-ae425288c0d0",
      "name": "HTTP 请求3",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        1408
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_1 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "87dfbbd7-3dde-41a1-b12f-e0837f355804",
      "name": "上传文件3",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        1408
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "91248d6c-864b-4849-954e-4ebe1cd1adcf",
      "name": "在sheet3中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        1408
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 4": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "1873f09f-e99e-4fe5-acb4-53b75114eb9d",
      "name": "转换为文件4",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        1600
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "31bb96a2-b286-4536-9d8a-edd374e0d950",
      "name": "编辑字段4",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        1600
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "181b1d97-3653-4754-90f1-3d7e3626a9fb",
      "name": "HTTP 请求 4",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        1600
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_1 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "7f630ab7-8c3b-477d-ab76-77d8e45b1e0c",
      "name": "上传文件4",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        1600
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "54ff593c-0541-4339-b6c0-1c3673242210",
      "name": "在sheet4中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        1600
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 5": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "40bea801-7f03-4da3-a896-9a2cfe7e5ad8",
      "name": "转换为文件5",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        640,
        1792
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base"
      },
      "typeVersion": 1.1
    },
    {
      "id": "859be556-0824-4a64-ad67-6c8bcd8aca77",
      "name": "编辑字段5",
      "type": "n8n-nodes-base.set",
      "position": [
        416,
        1792
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7ea4a3fa-a7a5-4ad4-ae66-25297a500e70",
              "name": "data",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"] }}"
            },
            {
              "id": "51031a77-b859-4234-87df-a8fd0f1f2a21",
              "name": "base",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].split(\",\")[1] }}"
            },
            {
              "id": "ad7435da-670b-4aef-8c97-e7d5e5b3a56e",
              "name": "mime",
              "type": "string",
              "value": "={{ $json[\"choices\"][0][\"message\"][\"images\"][0][\"image_url\"][\"url\"].match(/data:(.*?);/)[1] }}"
            },
            {
              "id": "97edf5a8-de0d-4781-9b65-cb793ce0e07a",
              "name": "fileName",
              "type": "string",
              "value": ".png"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "ed721dc0-2f50-4551-ad7a-29a833cf9041",
      "name": "HTTP 请求 5",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        192,
        1792
      ],
      "parameters": {
        "url": "https://openrouter.ai/api/v1/chat/completions",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"model\": \"google/gemini-2.5-flash-image-preview\",\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\": [\n        {\n          \"type\": \"text\",\n          \"text\": \"Generate a {{ $json.output.image_prompts.image_prompt_1 }}\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer [api_key]"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e6b9d1c5-cca9-40b1-8b8f-6a8c9f71074b",
      "name": "上传文件5",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        864,
        1792
      ],
      "parameters": {
        "name": "slide3 illustration",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "url",
          "value": "https://drive.google.com/drive/folders/1iGzAFfARYeysYSTz7hdA05ndKCeictZd"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "36dbbfc1-63c1-44ae-8f9e-26a9998a664f",
      "name": "在sheet5中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        1792
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image 6": "=https://drive.google.com/file/d/{{ $json.id }}/view",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "37abe01e-2f52-45fc-814c-bee3bda6a2b2",
      "name": "合并",
      "type": "n8n-nodes-base.merge",
      "position": [
        1312,
        1312
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.2
    },
    {
      "id": "99c7f5b1-0d0c-43a9-8c7a-97a3490a6f98",
      "name": "更新演示文稿详情行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1536,
        1312
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Editing Pending",
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Decription",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Decription",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Date Time",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Date Time",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Transcript",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Transcript",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation Plan",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation Plan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation URL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "executeOnce": true,
      "typeVersion": 4.7
    },
    {
      "id": "70dfb7ac-65bf-4337-a98a-b7e63a8a64fb",
      "name": "在图片表格中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1760,
        1312
      ],
      "parameters": {
        "columns": {
          "value": {
            "Presentation ID": "={{ $('Get row(s) in sheet').item.json['Presentation ID'] }}",
            "Generation Status": "Generation Completed"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image 7",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Image 7",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Generation Status",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Generation Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "executeOnce": true,
      "typeVersion": 4.7
    },
    {
      "id": "2a9a221c-d215-4504-ba13-71a86867a142",
      "name": "便签2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        688
      ],
      "parameters": {
        "color": 5,
        "width": 2880,
        "height": 1392,
        "content": "## 3. 插图生成器"
      },
      "typeVersion": 1
    },
    {
      "id": "7ff65f2e-6fe3-49ef-bdc6-d0e36b897b37",
      "name": "在sheet2中获取行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2320,
        368
      ],
      "parameters": {
        "options": {
          "returnFirstMatch": true
        },
        "filtersUI": {
          "values": [
            {
              "lookupValue": "Editing Pending",
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "ebdbfe84-20f5-410d-b5ac-2153f73c521d",
      "name": "获取演示文稿1",
      "type": "n8n-nodes-base.googleSlides",
      "position": [
        2992,
        368
      ],
      "parameters": {
        "operation": "get",
        "presentationId": "={{ $('Get row(s) in sheet2').item.json['Presentation ID'] }}"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "3467bb48-8a7a-4669-aa8d-9e1403bb05bd",
      "name": "获取文档1",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        2768,
        368
      ],
      "parameters": {
        "operation": "get",
        "documentURL": "={{ $('Get row(s) in sheet2').item.json['Presentation Plan'] }}"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "d564c604-3cd3-4872-a978-8143726ee297",
      "name": "在sheet3中获取行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2544,
        368
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupValue": "={{ $json['Presentation ID'] }}",
              "lookupColumn": "Presentation ID"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "5dbf22d4-3cdc-414d-8b2e-408cfb0533dc",
      "name": "OpenAI 聊天模型 1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        3280,
        592
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "5UniF8cNOayWi0zD",
          "name": "My Open AI Account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "55dcc7f0-9f10-4226-89d3-36772e8353e5",
      "name": "代码",
      "type": "n8n-nodes-base.code",
      "position": [
        3568,
        368
      ],
      "parameters": {
        "jsCode": "function organizePresentationData(input) {\n  try {\n    // Get the raw output from n8n input\n    let rawOutput = input;\n    \n    // If the input is wrapped in ```json blocks, clean it\n    if (typeof rawOutput === 'string') {\n      rawOutput = rawOutput.replace(/```json\\s*/, '').replace(/```\\s*$/, '').trim();\n    }\n    \n    // Parse the JSON if it's a string\n    const parsedData = typeof rawOutput === 'string' ? JSON.parse(rawOutput) : rawOutput;\n    \n    if (!parsedData.slides || !Array.isArray(parsedData.slides)) {\n      throw new Error('Invalid input: slides array not found');\n    }\n    \n    // Organize the data into structured format\n    const organizedData = {\n      metadata: {\n        totalSlides: parsedData.slides.length,\n        generatedAt: new Date().toISOString(),\n        presentationType: 'business_proposal'\n      },\n      titleSlide: null,\n      contentSlides: [],\n      nextStepsSlide: null\n    };\n    \n    // Process each slide\n    parsedData.slides.forEach(slide => {\n      const slideNumber = slide.slide_number || 0;\n      \n      if (slideNumber === 1) {\n        // Title slide (slide 1)\n        organizedData.titleSlide = {\n          slideNumber: slideNumber,\n          title: slide.title || '',\n          subtitle: slide.subtitle || '',\n          date: slide.date || '',\n          meetingDetails: slide.meetingDetails || '',\n          type: 'title'\n        };\n      } else if (slideNumber === 9 || slide.nextSteps) {\n        // Next steps slide (slide 9)\n        organizedData.nextStepsSlide = {\n          slideNumber: slideNumber,\n          title: slide.title || '',\n          nextSteps: slide.nextSteps ? slide.nextSteps.map(step => ({\n            stepNumber: step.step_number || 0,\n            subtitle: step.subtitle || '',\n            description: step.description || ''\n          })) : [],\n          type: 'next_steps'\n        };\n      } else {\n        // Content slides (slides 2-8)\n        organizedData.contentSlides.push({\n          slideNumber: slideNumber,\n          title: slide.title || '',\n          body: slide.body || [],\n          bodyCount: (slide.body || []).length,\n          type: slideNumber === 2 ? 'agenda' : 'content'\n        });\n      }\n    });\n    \n    // Sort content slides by slide number\n    organizedData.contentSlides.sort((a, b) => a.slideNumber - b.slideNumber);\n    \n    // Add summary statistics\n    organizedData.summary = {\n      hasTitleSlide: !!organizedData.titleSlide,\n      contentSlidesCount: organizedData.contentSlides.length,\n      hasNextStepsSlide: !!organizedData.nextStepsSlide,\n      totalBulletPoints: organizedData.contentSlides.reduce((sum, slide) => sum + slide.bodyCount, 0),\n      agendaItems: organizedData.contentSlides.find(slide => slide.type === 'agenda')?.bodyCount || 0\n    };\n    \n    // Create flat arrays for easy n8n processing\n    organizedData.allSlides = [];\n    \n    if (organizedData.titleSlide) {\n      organizedData.allSlides.push(organizedData.titleSlide);\n    }\n    \n    organizedData.allSlides.push(...organizedData.contentSlides);\n    \n    if (organizedData.nextStepsSlide) {\n      organizedData.allSlides.push(organizedData.nextStepsSlide);\n    }\n    \n    // Create bullet points array for processing\n    organizedData.allBulletPoints = [];\n    organizedData.contentSlides.forEach(slide => {\n      slide.body.forEach((bullet, index) => {\n        organizedData.allBulletPoints.push({\n          slideNumber: slide.slideNumber,\n          slideTitle: slide.title,\n          bulletIndex: index + 1,\n          bulletText: bullet\n        });\n      });\n    });\n    \n    // Create next steps array for processing\n    organizedData.allNextSteps = [];\n    if (organizedData.nextStepsSlide && organizedData.nextStepsSlide.nextSteps) {\n      organizedData.allNextSteps = organizedData.nextStepsSlide.nextSteps.map(step => ({\n        slideNumber: organizedData.nextStepsSlide.slideNumber,\n        slideTitle: organizedData.nextStepsSlide.title,\n        ...step\n      }));\n    }\n    \n    return organizedData;\n    \n  } catch (error) {\n    return {\n      error: true,\n      message: `Failed to organize presentation data: ${error.message}`,\n      originalInput: input,\n      timestamp: new Date().toISOString()\n    };\n  }\n}\n\n// Usage in n8n Code Node:\nconst organizedData = organizePresentationData($input.first().json.output);\n\n// Return as array of objects for n8n\nreturn [\n  {\n    json: organizedData\n  }\n];\n\n// Export for testing\nif (typeof module !== 'undefined' && module.exports) {\n  module.exports = organizePresentationData;\n}"
      },
      "typeVersion": 2
    },
    {
      "id": "28d7deed-bf88-423c-bec5-31adc7de6566",
      "name": "在演示文稿中替换文本",
      "type": "n8n-nodes-base.googleSlides",
      "position": [
        3792,
        368
      ],
      "parameters": {
        "textUi": {
          "textValues": [
            {
              "text": "={{ $('Get a presentation1').item.json.slides[0].pageElements[0].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.titleSlide.title }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[0].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[0].pageElements[1].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.titleSlide.subtitle }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[0].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[0].pageElements[1].shape.text.textElements[3].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.titleSlide.date }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[0].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[2].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[1].body[0] }}\n{{ $json.contentSlides[1].body[1] }}\n{{ $json.contentSlides[1].body[2] }}\n{{ $json.contentSlides[1].body[3] }}\n{{ $json.contentSlides[1].body[4] }}\n{{ $json.contentSlides[1].body[5] }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[2].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[3].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[2].body[0] }}\n{{ $json.contentSlides[2].body[1] }}\n{{ $json.contentSlides[2].body[2] }}\n{{ $json.contentSlides[2].body[3] }}\n{{ $json.contentSlides[2].body[4] }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[3].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[4].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[3].body[0] }}\n{{ $json.contentSlides[3].body[1] }}\n{{ $json.contentSlides[3].body[2] }}\n{{ $json.contentSlides[3].body[3] }}\n{{ $json.contentSlides[3].body[4] }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[4].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[5].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[4].body[0] }}\n{{ $json.contentSlides[4].body[1] }}\n{{ $json.contentSlides[4].body[2] }}\n{{ $json.contentSlides[4].body[3] }}\n{{ $json.contentSlides[4].body[4] }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[5].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[6].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[5].body[0] }}\n{{ $json.contentSlides[5].body[1] }}\n{{ $json.contentSlides[5].body[2] }}\n{{ $json.contentSlides[5].body[3] }}\n{{ $json.contentSlides[5].body[4] }}\n\n\n",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[6].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[7].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.contentSlides[6].body[0] }}\n{{ $json.contentSlides[6].body[1] }}\n{{ $json.contentSlides[6].body[2] }}\n{{ $json.contentSlides[6].body[3] }}\n{{ $json.contentSlides[6].body[4] }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[7].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[0].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[0].description }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[1].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[1].description }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[2].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[2].description }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[3].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[0].subtitle }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[5].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[1].subtitle }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            },
            {
              "text": "={{ $('Get a presentation1').item.json.slides[8].pageElements[4].shape.text.textElements[1].textRun.content }}",
              "matchCase": true,
              "replaceText": "={{ $json.nextStepsSlide.nextSteps[2].subtitle }}",
              "pageObjectIds": "={{ $('Get a presentation1').item.json.slides[8].objectId }}"
            }
          ]
        },
        "options": {},
        "operation": "replaceText",
        "presentationId": "={{ $('Get a presentation1').item.json.presentationId }}"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "149c38de-7e64-466e-bfa1-44f94ededd11",
      "name": "在sheet6中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4016,
        368
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Image Update Pending",
            "Presentation ID": "={{ $('Get row(s) in sheet3').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Decription",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Decription",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Date Time",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Date Time",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Transcript",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Transcript",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation Plan",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation Plan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation URL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "429b625f-857d-4b7d-88b1-e580295be7eb",
      "name": "便签3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2048,
        160
      ],
      "parameters": {
        "color": 2,
        "width": 2192,
        "height": 576,
        "content": "## 4. 编辑幻灯片(文本)"
      },
      "typeVersion": 1
    },
    {
      "id": "d52aa439-8630-46a6-9888-2ba572475b69",
      "name": "上传到Imgbb",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        848
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5efd36f8-99e4-4775-864e-97cfa88f2617",
      "name": "替换图片",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        848
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[2].pageElements[1].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "d49abba1-71e1-4096-b3c5-4e3f532b3972",
      "name": "上传到Imgbb1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        1040
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "d8b6f34c-da7c-4fd6-b48b-100c972d2130",
      "name": "替换图片1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        1040
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[3].pageElements[1].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "bab684d2-fc48-42f5-8d54-5f7ef979cb22",
      "name": "上传到Imgbb2",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        1232
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "67cbb820-3734-4c83-93c4-db14ffc59505",
      "name": "替换图片2",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        1232
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[4].pageElements[0].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "771766b7-9643-46df-8460-01ccc749c704",
      "name": "上传到Imgbb3",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        1424
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "59b6af19-25a8-45c8-aa9e-a5bd632f92be",
      "name": "替换图片3",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        1424
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[5].pageElements[0].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "3c87eabe-99a3-42d0-8e07-b3165d11c7eb",
      "name": "上传到Imgbb4",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        1616
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "1ab5542a-fd1b-4250-bb58-a6e1189197a2",
      "name": "替换图片4",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        1616
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[6].pageElements[1].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5ed9b5b5-48a9-4dcc-b16d-c1ce34f2688c",
      "name": "上传到Imgbb5",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        1808
      ],
      "parameters": {
        "url": "https://api.imgbb.com/1/upload",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendQuery": true,
        "contentType": "form-urlencoded",
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        },
        "queryParameters": {
          "parameters": [
            {
              "name": "expiration",
              "value": "600"
            },
            {
              "name": "key",
              "value": "5d9a67e186ab37eff4d33f5ee6e83926"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "383b104d-5550-4f8a-9e66-8aabcd78ceab",
      "name": "替换图片5",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3584,
        1808
      ],
      "parameters": {
        "url": "=https://slides.googleapis.com/v1/presentations/{{ $('Get a presentation').item.json.presentationId }}:batchUpdate",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"requests\": [\n    {\n      \"replaceImage\": {\n        \"imageObjectId\": \"{{ $('Get a presentation').item.json.slides[7].pageElements[0].objectId }}\",\n        \"imageReplaceMethod\": \"CENTER_INSIDE\",\n        \"url\": \"{{ $json.data.image.url }}\"\n      }\n    }\n  ]\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "nodeCredentialType": "googleSlidesOAuth2Api"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "170b3461-deb6-4ac5-8378-b3828fddd048",
      "name": "下载文件1",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        848
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 1'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "cc15362a-394b-47d6-911b-5234ab8626c3",
      "name": "下载文件2",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        1040
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 2'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "7fe25e3f-c7c2-4bff-800e-668dbfafdcab",
      "name": "下载文件3",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        1232
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 3'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "93774d63-b8fa-4b7b-ba65-dd02e8fa402f",
      "name": "下载文件4",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        1424
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 4'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "af86da1c-ac6c-4fb2-be03-6f8568fca667",
      "name": "下载文件5",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        1616
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 5'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "3aec6d13-6140-490b-a718-4d5c93a1b9d5",
      "name": "下载文件6",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2912,
        1808
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Get row(s) in sheet5').item.json['Image 6'] }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "IXQ92Qoie1csLNVO",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "0f44bac0-4a41-449a-9968-a85c884fc294",
      "name": "转换为Base64",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        848
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "799db638-3937-4331-b4a7-f94d651539a1",
      "name": "转换为Base641",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        1040
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "1e9fb3d1-bfc4-434d-9ecc-2a7f4715d54c",
      "name": "转换为Base642",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        1232
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "4b06bcac-d7d9-4a12-b8f1-02dce2fa1d8e",
      "name": "转换为Base643",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        1424
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "3bd47434-5423-46fa-94c7-9589b0634800",
      "name": "转换为Base644",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        1616
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "584ac3d9-a8b0-4965-852f-38e7f66cfb93",
      "name": "转换为Base645",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        3136,
        1808
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "33d674d3-4f4d-412c-8ab9-cc81cc03a98a",
      "name": "在sheet4中获取行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2272,
        1360
      ],
      "parameters": {
        "options": {
          "returnFirstMatch": true
        },
        "filtersUI": {
          "values": [
            {
              "lookupValue": "Image Update Pending",
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "a81d6b7e-9968-479c-9e5e-2888ca5cd794",
      "name": "获取演示文稿",
      "type": "n8n-nodes-base.googleSlides",
      "position": [
        2752,
        1360
      ],
      "parameters": {
        "operation": "get",
        "presentationId": "={{ $('Get row(s) in sheet4').item.json['Presentation ID'] }}"
      },
      "credentials": {
        "googleSlidesOAuth2Api": {
          "id": "nWebjEsdxqgVSSyH",
          "name": "Google Slides account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "390531cb-caab-4963-92b4-9e2016829531",
      "name": "获取文档2",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        2608,
        1360
      ],
      "parameters": {
        "operation": "get",
        "documentURL": "={{ $('Get row(s) in sheet4').item.json['Presentation Plan'] }}"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "baygwGl4ZvJ1JANz",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "6f387b1d-7ad0-4d68-8f1e-5b2df9b2d881",
      "name": "在sheet5中获取行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2432,
        1360
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupValue": "={{ $json['Presentation ID'] }}",
              "lookupColumn": "Presentation ID"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 481376340,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=481376340",
          "cachedResultName": "Images & Illustrations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "9320f25d-6403-43e1-be06-71464fa07e72",
      "name": "在sheet7中更新行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4032,
        1328
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Completed",
            "Presentation ID": "={{ $('Get row(s) in sheet5').item.json['Presentation ID'] }}"
          },
          "schema": [
            {
              "id": "Presentation ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Presentation ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Decription",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Decription",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Date Time",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Date Time",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Meeting Transcript",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Meeting Transcript",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation Plan",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation Plan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Presentation URL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Presentation URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Presentation ID"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit#gid=0",
          "cachedResultName": "Presentation Details"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1Jacq1P_z9XSAR7YNz0SiaMqwZ0oQ4qy-vbAiP5FcHNs/edit?usp=drivesdk",
          "cachedResultName": "n8n Slides Generator"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "d0qeLhShx9sGXalR",
          "name": "Google Sheets"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "c6474aa9-bb12-4ba8-ae0d-9b14cc4ec4df",
      "name": "合并1",
      "type": "n8n-nodes-base.merge",
      "position": [
        3808,
        1328
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.2
    },
    {
      "id": "c2d4e578-c3c4-4343-80af-4acce5b23900",
      "name": "便签4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2048,
        784
      ],
      "parameters": {
        "color": 3,
        "width": 2192,
        "height": 1296,
        "content": "## 5. 更新PPT(图片)"
      },
      "typeVersion": 1
    },
    {
      "id": "fc645e3b-ae5b-4c3a-be49-f23e03f67254",
      "name": "等待",
      "type": "n8n-nodes-base.wait",
      "position": [
        368,
        320
      ],
      "webhookId": "e4690b86-62ee-4d5b-986a-27ae9ef8f725",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "413c2137-1188-4d86-8f8b-5effa3b99cf4",
      "name": "等待1",
      "type": "n8n-nodes-base.wait",
      "position": [
        -832,
        1312
      ],
      "webhookId": "350e0e26-77c5-4fe7-917c-03eb76f17bbc",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "b6f61169-69a2-4378-a1f3-b1556b232570",
      "name": "等待2",
      "type": "n8n-nodes-base.wait",
      "position": [
        2112,
        1360
      ],
      "webhookId": "ef1ebff5-10c0-4bb5-9896-9d1e8d6cfe21",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "6a222019-5b33-4590-8570-32d91b1dc579",
      "name": "等待3",
      "type": "n8n-nodes-base.wait",
      "position": [
        2096,
        368
      ],
      "webhookId": "76b05d5b-d5b0-435e-8b0f-df2cc03b890b",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "503ee716-1dc3-4dd5-84d7-8d84fc6afb36",
      "name": "最终文本内容格式化",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        3216,
        368
      ],
      "parameters": {
        "text": "={{ $('Get a document1').item.json.content }}",
        "options": {
          "systemMessage": "=**System Message for AI Agent:**\n\nYou are an AI agent that generates a **structured JSON presentation plan** from a slide prompt. Your output must be strictly in JSON, no extra text. The JSON must be concise, neat, and professional.\n\n### Formatting Rules:\n\n1. Each slide is represented as an object inside a `\"slides\"` array.\n2. **Slide 1** must contain:\n\n   * `title` (concise, professional)\n   * `subtitle` (short supporting line)\n   * `date` (meeting date)\n   * `meetingDetails` (one short line summarizing purpose and attendees)\n3. **Slides 2–8** must contain:\n\n   * `title` (refined to be intentional, short, professional)\n   * `body` (array of bullet points, **max 5 items** unless Table of Contents, which can have more)\n4. **Slide 9** must contain:\n\n   * `title` (refined, clear)\n   * `nextSteps` (array of exactly 3 objects, each with `step_number`, `subtitle`, and `description` with one concise line)\n5. Always use **bullet points in arrays** (strings).\n6. Titles must be refined to fit **client-facing professional presentation standards**.\n7. Content must be **concise**, not verbose, and must highlight client use case needs.\n8. Never exceed 5 points in any `body` apart from Slide 2 (Table of Contents).\n\n### JSON Schema Example:\n\n```json\n{\n  \"slides\": [\n    {\n      \"slide_number\": 1,\n      \"title\": \"Partnership Proposal\",\n      \"subtitle\": \"NimbusSoft & Acme Corp Collaboration\",\n      \"date\": \"Sept 10, 2025\",\n      \"meetingDetails\": \"Meeting about partnership opportunities with attendees: John (NimbusSoft), Sarah (IT Director, Acme Corp.), David (Operations Manager, Acme Corp.)\"\n    },\n    {\n      \"slide_number\": 2,\n      \"title\": \"Agenda\",\n      \"body\": [\n        \"Client Situation Summary\",\n        \"Cost of Inaction\",\n        \"NimbusSoft Solution Overview\",\n        \"Quantified Value Proposition\",\n        \"Why NimbusSoft Wins\",\n        \"Implementation Roadmap\",\n        \"Next Steps & Call to Action\"\n      ]\n    },\n    {\n      \"slide_number\": 3,\n      \"title\": \"Client Challenges\",\n      \"body\": [\n        \"Salesforce, Asana, QuickBooks lack integration\",\n        \"Manual CSV exports create 3–4 day reporting delays\",\n        \"Leadership lacks timely data for decisions\",\n        \"20% cost reduction target not achieved\",\n        \"Missed East Africa expansion due to stale data\"\n      ]\n    },\n    {\n      \"slide_number\": 4,\n      \"title\": \"Cost of Inaction\",\n      \"body\": [\n        \"Delayed reports lead to poor decisions\",\n        \"Lost strategic opportunities (e.g., East Africa)\",\n        \"Rising operational overheads\",\n        \"Risk of non-compliance with regulations\",\n        \"Competitive disadvantage vs. real-time peers\"\n      ]\n    },\n    {\n      \"slide_number\": 5,\n      \"title\": \"NimbusSoft Solution\",\n      \"body\": [\n        \"Centralized SaaS hub with 60+ integrations\",\n        \"Real-time dashboards eliminate manual exports\",\n        \"Automated workflows connect CRM, Finance, Projects\",\n        \"Enterprise-grade security & compliance\",\n        \"Simple UI with training and dedicated support\"\n      ]\n    },\n    {\n      \"slide_number\": 6,\n      \"title\": \"Value Proposition\",\n      \"body\": [\n        \"Reports reduced from 3–4 days to <1 hour\",\n        \"20% operational cost reduction possible\",\n        \"Significant time savings via automation\",\n        \"Improved decision speed & opportunity capture\"\n      ]\n    },\n    {\n      \"slide_number\": 7,\n      \"title\": \"Why NimbusSoft Wins\",\n      \"body\": [\n        \"Easy-to-use for non-technical staff\",\n        \"ISO 27001, SOC 2, GDPR compliant\",\n        \"60+ integrations plus open API\",\n        \"Dedicated training & success manager\",\n        \"Proven fast rollout within 90 days\"\n      ]\n    },\n    {\n      \"slide_number\": 8,\n      \"title\": \"Implementation Roadmap\",\n      \"body\": [\n        \"30-day pilot in Sales & Finance\",\n        \"Integration setup & training sessions\",\n        \"Success metrics review post-pilot\",\n        \"90-day full rollout upon ROI validation\",\n        \"Continuous support & adoption program\"\n      ]\n    },\n    {\n      \"slide_number\": 9,\n      \"title\": \"Next Steps\",\n      \"nextSteps\": [\n        {\n          \"step_number\": 1,\n          \"subtitle\": \"Proposal Delivery\",\n          \"description\": \"NimbusSoft sends pilot rollout plan by Friday\"\n        },\n        {\n          \"step_number\": 2,\n          \"subtitle\": \"Pilot Confirmation\",\n          \"description\": \"Acme confirms Sales & Finance as pilot scope\"\n        },\n        {\n          \"step_number\": 3,\n          \"subtitle\": \"Technical Deep Dive\",\n          \"description\": \"Schedule IT workshop to finalize integrations\"\n        }\n      ]\n    }\n  ]\n}\n```\n\n---"
        },
        "promptType": "define",
        "needsFallback": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "e2ad4a8c-8de7-4181-86c0-e3930169305b",
      "name": "插图和图片提示代理",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -160,
        1312
      ],
      "parameters": {
        "text": "={{ $json.content }}",
        "options": {
          "systemMessage": "=You are an AI agent that generates structured image prompts from a presentation slide plan. \n\nInstructions:\n- Only generate image prompts for slides 3 through 8. Slides 1, 2 and 9 should be ignored. [Very Important]\n- Create exactly 6 image prompts in total. \n- Each prompt must summarize the visual description and image requirements of its respective slide in a concise, descriptive way that can be used for image generation.\n- Each prompt should be aligned to the slide objective and contents.\n- Do not include line breaks, quotation marks, apostrophes, colons, or semicolons in the text. \n- Use plain descriptive text only. \n- Respond strictly in JSON format with the following structure:\n\n{\n  \"image_prompts\": {\n    \"image_prompt_1\": \"text for slide 3 image\",\n    \"image_prompt_2\": \"text for slide 4 image\",\n    \"image_prompt_3\": \"text for slide 5 image\",\n    \"image_prompt_4\": \"text for slide 6 image\",\n    \"image_prompt_5\": \"text for slide 7 image\",\n    \"image_prompt_6\": \"text for slide 8 image\"\n  }\n}\n"
        },
        "promptType": "define",
        "needsFallback": true,
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "4f206e55-b5c2-4b2f-a162-965ab8dcc1fa",
      "name": "Google Gemini 聊天模型1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        3088,
        592
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "zT4YaNflEp2E6S3m",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "68df9a41-9e7b-47f6-8774-76d788e47f96",
      "name": "OpenAI 聊天模型 2",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -176,
        1664
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "5UniF8cNOayWi0zD",
          "name": "My Open AI Account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "73a38770-34f5-4e56-9098-f08d2dc24e25",
      "name": "Google Gemini 聊天模型2",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        944,
        480
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "zT4YaNflEp2E6S3m",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "f1e243be-8d99-4de2-aaf7-f2cb79bfb6ec",
      "name": "便签5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1280,
        160
      ],
      "parameters": {
        "width": 368,
        "height": 1920,
        "content": "## 🎨 自定义选项"
      },
      "typeVersion": 1
    },
    {
      "id": "9a70286d-17a7-4936-84b5-a74682418db4",
      "name": "便签 6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        -16
      ],
      "parameters": {
        "width": 944,
        "height": 144,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b555e4ee-8571-4fb4-a278-8a50d848ab22",
      "name": "便签7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        352,
        -16
      ],
      "parameters": {
        "width": 944,
        "height": 144,
        "content": "- 从Google Sheets数据库检索会议转录"
      },
      "typeVersion": 1
    },
    {
      "id": "150f8b52-7f6e-4182-9d40-98d2b1b77f3d",
      "name": "便签8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        2112
      ],
      "parameters": {
        "width": 944,
        "content": "- AI代理根据演示文稿计划创建具体的插图提示"
      },
      "typeVersion": 1
    },
    {
      "id": "0a4501bb-2078-4b46-96df-9a4abfcb9efd",
      "name": "便签 9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2048,
        -16
      ],
      "parameters": {
        "width": 944,
        "height": 144,
        "content": "- 模板必须为每个文本元素(标题、副标题、正文文本)具有唯一的\"对象ID\""
      },
      "typeVersion": 1
    },
    {
      "id": "16b4c85b-c471-476b-876b-779e60fea6a8",
      "name": "便利贴 10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2048,
        2112
      ],
      "parameters": {
        "width": 944,
        "content": "- 检索待处理演示文稿并提取图片占位符的对象ID"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {
    "On form submission": [
      {
        "formMode": "test",
        "Client Name": "Acme Group",
        "submittedAt": "2025-09-16T14:19:02.317+03:00",
        "Meeting transcript URL": "https://docs.google.com/document/d/14-jV8CYie47u3kbWpEYcYIBW4TClB7lIy5GkSv7dPeI/view"
      }
    ]
  },
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "Replace text in a presentation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "Get Pending Row",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Update row Presentation Details",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait1": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait2": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait3": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge1": {
      "main": [
        [
          {
            "node": "Update row in sheet7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Convert to File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file": {
      "main": [
        [
          {
            "node": "Update row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields1": {
      "main": [
        [
          {
            "node": "Convert to File1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields2": {
      "main": [
        [
          {
            "node": "Convert to File2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields3": {
      "main": [
        [
          {
            "node": "Convert to File3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields4": {
      "main": [
        [
          {
            "node": "Convert to File4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields5": {
      "main": [
        [
          {
            "node": "Convert to File5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "main": [
        [
          {
            "node": "Edit Fields2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file1": {
      "main": [
        [
          {
            "node": "Update row in sheet1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file2": {
      "main": [
        [
          {
            "node": "Update row in sheet2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file3": {
      "main": [
        [
          {
            "node": "Update row in sheet3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file4": {
      "main": [
        [
          {
            "node": "Update row in sheet4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file5": {
      "main": [
        [
          {
            "node": "Update row in sheet5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request1": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request2": {
      "main": [
        [
          {
            "node": "Edit Fields1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request3": {
      "main": [
        [
          {
            "node": "Edit Fields3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request4": {
      "main": [
        [
          {
            "node": "Edit Fields4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request5": {
      "main": [
        [
          {
            "node": "Edit Fields5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Replace Image": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Transcript": {
      "main": [
        [
          {
            "node": "Generate Presentation Plan",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a document": {
      "main": [
        [
          {
            "node": "Illustrations & Image Prompt Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Replace Image1": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Replace Image2": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Replace Image3": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Replace Image4": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Replace Image5": {
      "main": [
        [
          {
            "node": "Merge1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Convert to File": {
      "main": [
        [
          {
            "node": "Upload file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 1": {
      "main": [
        [
          {
            "node": "Convert to Base64",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 2": {
      "main": [
        [
          {
            "node": "Convert to Base641",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 3": {
      "main": [
        [
          {
            "node": "Convert to Base642",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 4": {
      "main": [
        [
          {
            "node": "Convert to Base643",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 5": {
      "main": [
        [
          {
            "node": "Convert to Base644",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file 6": {
      "main": [
        [
          {
            "node": "Convert to Base645",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Pending Row": {
      "main": [
        [
          {
            "node": "Get Transcript",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a document1": {
      "main": [
        [
          {
            "node": "Get a presentation1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a document2": {
      "main": [
        [
          {
            "node": "Get a presentation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb": {
      "main": [
        [
          {
            "node": "Replace Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File1": {
      "main": [
        [
          {
            "node": "Upload file1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File2": {
      "main": [
        [
          {
            "node": "Upload file2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File3": {
      "main": [
        [
          {
            "node": "Upload file3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File4": {
      "main": [
        [
          {
            "node": "Upload file4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File5": {
      "main": [
        [
          {
            "node": "Upload file5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb1": {
      "main": [
        [
          {
            "node": "Replace Image1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb2": {
      "main": [
        [
          {
            "node": "Replace Image2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb3": {
      "main": [
        [
          {
            "node": "Replace Image3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb4": {
      "main": [
        [
          {
            "node": "Replace Image4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Imgbb5": {
      "main": [
        [
          {
            "node": "Replace Image5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Base64": {
      "main": [
        [
          {
            "node": "Upload to Imgbb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Generate Presentation Plan",
            "type": "ai_languageModel",
            "index": 1
          }
        ]
      ]
    },
    "Convert to Base641": {
      "main": [
        [
          {
            "node": "Upload to Imgbb1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Base642": {
      "main": [
        [
          {
            "node": "Upload to Imgbb2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Base643": {
      "main": [
        [
          {
            "node": "Upload to Imgbb3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Base644": {
      "main": [
        [
          {
            "node": "Upload to Imgbb4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Base645": {
      "main": [
        [
          {
            "node": "Upload to Imgbb5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a presentation": {
      "main": [
        [
          {
            "node": "Download file 2",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download file 3",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download file 4",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download file 5",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download file 6",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download file 1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On form submission": {
      "main": [
        [
          {
            "node": "Create Presentation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Final Text Content Formatting",
            "type": "ai_languageModel",
            "index": 1
          }
        ]
      ]
    },
    "OpenAI Chat Model2": {
      "ai_languageModel": [
        [
          {
            "node": "Illustrations & Image Prompt Agent",
            "type": "ai_languageModel",
            "index": 1
          }
        ]
      ]
    },
    "Create PPT Plan Doc": {
      "main": [
        [
          {
            "node": "Update PPT Plan Doc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Presentation": {
      "main": [
        [
          {
            "node": "Append in Main Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a presentation1": {
      "main": [
        [
          {
            "node": "Final Text Content Formatting",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet": {
      "main": [
        [
          {
            "node": "Get a document",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update PPT Plan Doc": {
      "main": [
        [
          {
            "node": "Update row in Main Sheet + Trigger Image Gen",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append in Main Sheet": {
      "main": [
        [
          {
            "node": "Append in Images Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet2": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet3": {
      "main": [
        [
          {
            "node": "Get a document1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet4": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet5": {
      "main": [
        [
          {
            "node": "Get a document2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet1": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet2": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet3": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet4": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Update row in sheet5": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Update row in sheet6": {
      "main": [
        [
          {
            "node": "Wait2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in sheet7": {
      "main": [
        []
      ]
    },
    "Append in Client Sheet": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append in Images Sheet": {
      "main": [
        [
          {
            "node": "Append in Client Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Illustrations & Image Prompt Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Illustrations & Image Prompt Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Final Text Content Formatting",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model2": {
      "ai_languageModel": [
        [
          {
            "node": "Generate Presentation Plan",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Generate Presentation Plan": {
      "main": [
        [
          {
            "node": "Create PPT Plan Doc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in Images Sheet": {
      "main": [
        [
          {
            "node": "Wait3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Final Text Content Formatting": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Replace text in a presentation": {
      "main": [
        [
          {
            "node": "Update row in sheet6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row Presentation Details": {
      "main": [
        [
          {
            "node": "Update row in Images Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Illustrations & Image Prompt Agent": {
      "main": [
        [
          {
            "node": "HTTP Request1",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request2",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request3",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request4",
            "type": "main",
            "index": 0
          },
          {
            "node": "HTTP Request5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row in Main Sheet + Trigger Image Gen": {
      "main": [
        [
          {
            "node": "Wait1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

高级 - 内容创作, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
高级
节点数量107
分类2
节点类型17
难度说明

适合高级用户,包含 16+ 个节点的复杂工作流

作者
Joseph

Joseph

@mjomba

Automation expert specializing in building smart, scalable workflows using tools like n8n, Make, and Airtable. I help businesses save time, reduce manual work, and grow faster with tailored automation solutions. Feel free to reach out at joseph@uppfy.com to discuss your project. I am also on x.com/juppfy

外部链接
在 n8n.io 查看

分享此工作流