N
n8n Store
Workflow Market
Turn YouTube Transcripts into Newsletter Drafts using Dumpling AI + GPT-4o

Turn YouTube Transcripts into Newsletter Drafts using Dumpling AI + GPT-4o

by yang0 views

説明

Categories

🤖 AI & Machine Learning

Nodes Used

n8n-nodes-base.gmailn8n-nodes-base.stickyNoten8n-nodes-base.httpRequestn8n-nodes-base.googleSheetsn8n-nodes-base.googleSheetsn8n-nodes-base.manualTriggern8n-nodes-base.splitInBatches@n8n/n8n-nodes-langchain.openAi
Price無料
Views0
最終更新11/28/2025
workflow.json
{
  "id": "zjl4xwZIDr6Ks1Zv",
  "meta": {
    "instanceId": "a1ae5c8dc6c65e674f9c3947d083abcc749ef2546dff9f4ff01de4d6a36ebfe6",
    "templateCredsSetupCompleted": true
  },
  "name": "Turn YouTube Transcripts into Newsletter Drafts using Dumpling AI + GPT-4o",
  "tags": [],
  "nodes": [
    {
      "id": "1088af3c-161d-40ff-b69e-32cf609f214f",
      "name": " Manual Trigger: Start Workflow",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -80,
        -20
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "5a8863d7-d13b-471e-900f-acdfa320fa42",
      "name": "Read YouTube Links from Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        140,
        -20
      ],
      "parameters": {
        "options": {
          "returnFirstMatch": true
        },
        "filtersUI": {
          "values": [
            {
              "lookupColumn": "blog post"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/182LztuSnqcPeYLtUOIG4LjDs2Nj7sDYS-sjMY90O3PM/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/182LztuSnqcPeYLtUOIG4LjDs2Nj7sDYS-sjMY90O3PM/edit?usp=drivesdk",
          "cachedResultName": "Youtube"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "GaJqJHuS5mQxap7q",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "81804ea4-ad1c-4c57-ad40-28645967da32",
      "name": "Loop: Process Each YouTube Link",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        360,
        -20
      ],
      "parameters": {
        "options": {
          "reset": false
        }
      },
      "typeVersion": 3
    },
    {
      "id": "5ec6ef71-4ca0-4ebc-b878-084337cafc3f",
      "name": " Dumpling AI: Get YouTube Transcript",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        580,
        -20
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/get-youtube-transcript",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "videoUrl",
              "value": "={{ $json.link }}"
            }
          ]
        },
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "RLFzAcGRepr5eXZB",
          "name": "Dumpling AI-n8n"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "facdab3c-bbca-4acb-862a-5179708d90e8",
      "name": "GPT-4o: Write Newsletter Draft from Transcript",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        800,
        -20
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "\"Here is a transcript from a YouTube video. Please write a clear and engaging newsletter based on this transcript. Summarize the key ideas, insights, and tips shared in the video. Start with a short and catchy introduction that grabs attention. Structure the body of the newsletter with short, readable paragraphs that highlight the most valuable points. End with a simple call to action related to the video topic. Keep the tone friendly and professional, and make sure the content flows naturally for email readers. Do not include time stamps or speaker labels from the transcript. Focus on clarity and value.\"\n\nLet me know if you'd like the prompt tailored to a specific audience or niche."
            },
            {
              "content": "=Transcript: {{ $json.transcript }}"
            }
          ]
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "dd8NvMC6rvx8RITo",
          "name": "OpenAi account 2"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "07b75a54-ceef-4ff7-8187-5fa49ecc84e4",
      "name": "Log Newsletter Draft to Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1176,
        55
      ],
      "parameters": {
        "columns": {
          "value": {
            "link": "={{ $('Read YouTube Links from Google Sheets').item.json.link }}",
            "blog post": "={{ $json.message.content }}"
          },
          "schema": [
            {
              "id": "link",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "link",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "blog post",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "blog post",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "link"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/182LztuSnqcPeYLtUOIG4LjDs2Nj7sDYS-sjMY90O3PM/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/182LztuSnqcPeYLtUOIG4LjDs2Nj7sDYS-sjMY90O3PM/edit?usp=drivesdk",
          "cachedResultName": "Youtube"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "GaJqJHuS5mQxap7q",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "b7062444-db63-4e20-ae47-adea20a49289",
      "name": " Send Email Notification When Draft is Ready",
      "type": "n8n-nodes-base.gmail",
      "position": [
        580,
        -220
      ],
      "webhookId": "e1f729ca-f0ef-4b1e-9399-7cd7993baff3",
      "parameters": {
        "sendTo": "[email protected]",
        "message": "=Hello,  \nThe newsletter based on the latest YouTube transcript has just been created successfully. You can now review, edit, or schedule it for distribution.  Please check the draft and let me know if anything needs to be adjusted before it goes live.",
        "options": {},
        "subject": "Newsletter Draft Created from YouTube Transcript",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "j70r3RTMED1pgN3R",
          "name": "Gmail account 2"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "2e8320d4-655b-4dc1-afb7-47ff88c3cb19",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -560,
        -340
      ],
      "parameters": {
        "width": 560,
        "height": 580,
        "content": "### 📨 YouTube → Newsletter Automation\n\nThis workflow turns YouTube videos into newsletter drafts using Dumpling AI and GPT-4o.\n\n**Here’s what it does:**\n1. Reads new YouTube video links from Google Sheets\n2. Fetches the transcript of each video via Dumpling AI\n3. Uses GPT-4o to generate a well-structured, email-friendly newsletter draft\n4. Saves the draft back to Google Sheets next to the original video link\n5. Sends an email notification when the newsletter is ready\n\n🛠️ Tools Used:\n- Dumpling AI (transcript)\n- GPT-4o (newsletter copy)\n- Google Sheets (input + output)\n- Gmail (notification)\n\n✅ Make sure your credentials are securely configured for:\n- Google Sheets\n- Dumpling AI (via header auth)\n- OpenAI GPT\n- Gmail OAuth2\n\n🗒️ Sheet columns required:\n- `link` (YouTube video URL)\n- `blog post` (Newsletter output field)\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "7910aaf8-f177-4b3a-af80-56c03d9a987b",
  "connections": {
    " Manual Trigger: Start Workflow": {
      "main": [
        [
          {
            "node": "Read YouTube Links from Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop: Process Each YouTube Link": {
      "main": [
        [
          {
            "node": " Send Email Notification When Draft is Ready",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": " Dumpling AI: Get YouTube Transcript",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    " Dumpling AI: Get YouTube Transcript": {
      "main": [
        [
          {
            "node": "GPT-4o: Write Newsletter Draft from Transcript",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Log Newsletter Draft to Google Sheets": {
      "main": [
        [
          {
            "node": "Loop: Process Each YouTube Link",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read YouTube Links from Google Sheets": {
      "main": [
        [
          {
            "node": "Loop: Process Each YouTube Link",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT-4o: Write Newsletter Draft from Transcript": {
      "main": [
        [
          {
            "node": "Log Newsletter Draft to Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

相关工作流