YouTube-SEO-Automatisierung 1
Experte
Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 19 Nodes. Hauptsächlich werden If, Set, Code, HttpRequest, GoogleSheets und andere Nodes verwendet. Generieren von YouTube-SEO-Inhalten und Thumbnails aus Drehbüchern mit GPT-4o und Runway
Voraussetzungen
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
- •Google Sheets API-Anmeldedaten
- •OpenAI API Key
Verwendete Nodes (19)
Kategorie
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
"id": "D0sZR93pIfNqpzPN",
"meta": {
"instanceId": "b575ae39acc98e53d75e50d1b5147e8b0922704c4aeb3230092d8e2a78247bc3",
"templateCredsSetupCompleted": true
},
"name": "Youtube SEO Automation 1",
"tags": [],
"nodes": [
{
"id": "f268ec0d-7715-41bd-9e1a-7cc9285c5ec9",
"name": "Google Tabellen Trigger",
"type": "n8n-nodes-base.googleSheetsTrigger",
"position": [
-2976,
256
],
"parameters": {
"event": "rowAdded",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit?usp=drivesdk",
"cachedResultName": "Youtube Automation"
}
},
"typeVersion": 1
},
{
"id": "c27724ad-9f25-4e49-b9fb-2ca2bfa3e778",
"name": "Keine Operation, do nothing",
"type": "n8n-nodes-base.noOp",
"position": [
-2528,
416
],
"parameters": {},
"typeVersion": 1
},
{
"id": "f92a73f2-3901-4576-b1e8-9836672a5977",
"name": "If English script is available or not",
"type": "n8n-nodes-base.if",
"position": [
-2768,
256
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "9b712734-6cd3-43d3-911c-bca7ffa53263",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $json['Roman Hindi Script'] }}",
"rightValue": ""
},
{
"id": "18425a22-c745-45af-a354-d4bf43a73103",
"operator": {
"type": "string",
"operation": "empty",
"singleValue": true
},
"leftValue": "={{ $json['English script'] }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "064a7b70-e5a9-4e9a-b7ac-50ad3e1a7840",
"name": "Generating English Script",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
-2560,
192
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"options": {},
"messages": {
"values": [
{
"content": "={{ $json['Roman Hindi Script'] }}\n\nConvert this hindi roman script in to english script."
}
]
}
},
"typeVersion": 1.8
},
{
"id": "12157d7c-4dae-4a06-be7b-23f39584d3c5",
"name": "Creating field for english script",
"type": "n8n-nodes-base.set",
"position": [
-2208,
192
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "9b4b3282-e472-4729-b52f-2ec7178063f3",
"name": "message.content",
"type": "string",
"value": "={{ $json.message.content }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "bfc19dfc-5a3d-4235-a630-d12126afc3a7",
"name": "Adding English script to GSheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
-2000,
192
],
"parameters": {
"columns": {
"value": {
"Number": "={{ $('Google Sheets Trigger').item.json.Number }}",
"English script": "={{ $('Generating English Script').item.json.message.content }}",
"Roman Hindi Script": "={{ $('Google Sheets Trigger').item.json['Roman Hindi Script'] }}"
},
"schema": [
{
"id": "Number",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Number",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Roman Hindi Script",
"type": "string",
"display": true,
"required": false,
"displayName": "Roman Hindi Script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "English script",
"type": "string",
"display": true,
"required": false,
"displayName": "English script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Tags",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Keywords",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Keywords",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Description",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Brief",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Thumbnail Brief",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Tagline",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Thumbnail Tagline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Generated Thumbnail",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Youtube Generated Thumbnail",
"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": [
"Number"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit?usp=drivesdk",
"cachedResultName": "Youtube Automation"
}
},
"typeVersion": 4.6
},
{
"id": "3342ff7b-5622-4aaf-8f8a-781285e027d9",
"name": "Generating Youtube Tags, Keywords and more.",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
-1792,
192
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "chatgpt-4o-latest",
"cachedResultName": "CHATGPT-4O-LATEST"
},
"options": {},
"messages": {
"values": [
{
"content": "={{ $json['English script'] }}\n\nUse the provided English script and generate:\nGenerate the following:\n\n1️⃣ 10 Best Engaging YouTube Titles (≤ 70 characters each)\n\n2️⃣ Best Engaging YouTube Tags (comma-separated, up to 20)\n\n3️⃣ Best Engaging YouTube Keywords (comma-separated, up to 20)\n\n4️⃣ SEO-Friendly YouTube Video Description (optimized for 2025 algorithm, includes keywords, tags, hook, timestamps, engagement call-to-action, hashtags, and Google Search Keywords section)\n\n5️⃣ Thumbnail AI Prompt (realistic, describes main idea, bold clickable text, color scheme, visual elements, emotion, layout, realistic photography style, 1280×720, 16:9, suitable for MidJourney/DALL·E/Runware)\n\n6️⃣ Thumbnail Tagline (single catchy 3–5 word tagline)"
}
]
}
},
"credentials": {
"openAiApi": {
"id": "hTbhwONPbaFtA1LQ",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "a601a771-5858-43cf-aa6e-3c36e2a6033f",
"name": "JS Code for separating different topics",
"type": "n8n-nodes-base.code",
"position": [
-1328,
192
],
"parameters": {
"jsCode": "const raw = $input.first().json.message.content;\n\n// Helper function to extract section between markers\nfunction extractSection(regex, input) {\n const match = input.match(regex);\n return match ? match[1].trim() : \"\";\n}\n\n// 1️⃣ Titles\nlet titlesRaw = extractSection(/1️⃣.*?\\n([\\s\\S]*?)2️⃣/, raw);\nlet titles = titlesRaw\n .split(/\\n|-/)\n .map(t => t.replace(/^\\d+\\.?\\s*/, \"\").trim())\n .filter(t => t.length > 0);\n\n// 2️⃣ Tags\nlet tags = extractSection(/2️⃣.*?\\n([\\s\\S]*?)3️⃣/, raw).replace(/\\n/g, \"\").trim();\n\n// 3️⃣ Keywords\nlet keywords = extractSection(/3️⃣.*?\\n([\\s\\S]*?)4️⃣/, raw).replace(/\\n/g, \"\").trim();\n\n// 4️⃣ SEO Description\nlet description = extractSection(/4️⃣.*?\\n([\\s\\S]*?)5️⃣/, raw).trim();\n\n// 5️⃣ Thumbnail AI Prompt\nlet thumbnailPrompt = extractSection(/5️⃣.*?\\n([\\s\\S]*?)6️⃣/, raw).trim();\n\n// 6️⃣ Thumbnail Tagline\nlet tagline = extractSection(/6️⃣.*?\\n([\\s\\S]*)$/, raw).replace(/[\"\\n]/g, \"\").trim();\n\nreturn [\n {\n json: {\n \"YouTube Titles\": titles,\n \"YouTube Tags\": tags,\n \"YouTube Keywords\": keywords,\n \"SEO Description\": description,\n \"Thumbnail AI Prompt\": thumbnailPrompt,\n \"Thumbnail Tagline\": tagline\n }\n }\n];\n"
},
"typeVersion": 2
},
{
"id": "e6ae98e2-2599-4006-ac63-40f43198812e",
"name": "Updating row in GSheet with Tags, Description so on",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1168,
192
],
"parameters": {
"columns": {
"value": {
"Number": "={{ $('Google Sheets Trigger').item.json.Number }}",
"Youtube Tags": "={{ $json['YouTube Tags'] }}",
"Youtube Title": "={{ $json['YouTube Titles'] }}",
"Youtube Keywords": "={{ $json['YouTube Keywords'] }}",
"Youtube Description": "={{ $json['SEO Description'] }}",
"Youtube Thumbnail Brief": "={{ $json['Thumbnail AI Prompt'] }}",
"Youtube Thumbnail Tagline": "={{ $json['Thumbnail Tagline'] }}"
},
"schema": [
{
"id": "Number",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Number",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Roman Hindi Script",
"type": "string",
"display": true,
"required": false,
"displayName": "Roman Hindi Script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "English script",
"type": "string",
"display": true,
"required": false,
"displayName": "English script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Title",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Tags",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Keywords",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Keywords",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Description",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Brief",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Thumbnail Brief",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Tagline",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Thumbnail Tagline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Generated Thumbnail",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Generated Thumbnail",
"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": [
"Number"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit?usp=drivesdk",
"cachedResultName": "Youtube Automation"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "S5JvudyeIyaJADDa",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "f0a5ba4b-4dba-4acc-bc80-1e66f6181e32",
"name": "Python code for creating Dynamic Prompt",
"type": "n8n-nodes-base.code",
"position": [
-704,
320
],
"parameters": {
"language": "python",
"pythonCode": "import uuid\n\nthumbnail_brief = items[0][\"json\"].get(\"Youtube Thumbnail Brief\", \"\")\ntagline = items[0][\"json\"].get(\"Youtube Thumbnail Tagline\", \"\")\n\n# Final prompt for Runware AI\nprompt = (\n \"Generate a professional YouTube thumbnail.\\n\\n\"\n f\"Thumbnail Context:\\n{thumbnail_brief}\\n\\n\"\n f\"Main Tagline: '{tagline}'\\n\\n\"\n \"Thumbnail requirements:\\n\"\n \"- Bold, central tagline text\\n\"\n \"- Cinematic lighting, vibrant colors\\n\"\n \"- Highly clickable YouTube style\\n\"\n \"- 1280x720 resolution\"\n)\n\npayload = {\n \"taskType\": \"imageInference\",\n \"taskUUID\": str(uuid.uuid4()),\n \"positivePrompt\": prompt,\n \"width\": 1280,\n \"height\": 720,\n \"model\": \"bytedance:3@1\",\n \"numberResults\": 1,\n \"outputFileName\": \"thumbnail.png\"\n}\n\nreturn {\"data\": [payload]}\n"
},
"typeVersion": 2
},
{
"id": "4478f8d0-f766-42e9-9d8b-f9183539ab23",
"name": "HTTP-Anfrage calling Runware API for generating Thumbnail image",
"type": "n8n-nodes-base.httpRequest",
"position": [
-416,
-16
],
"parameters": {
"url": "https://api.runware.ai/v1/image",
"method": "POST",
"options": {},
"jsonBody": "={{ $json.data }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "Authorization"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "3e233517-bbca-420e-a081-6ce8ca14a77a",
"name": "Updating Gsheet with Thumbnail Image",
"type": "n8n-nodes-base.googleSheets",
"position": [
-240,
-16
],
"parameters": {
"columns": {
"value": {
"Number": "={{ $('Google Sheets Trigger').item.json.Number }}",
"Youtube Generated Thumbnail": "={{ $json.data[0].imageURL }}"
},
"schema": [
{
"id": "Number",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Number",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Roman Hindi Script",
"type": "string",
"display": true,
"required": false,
"displayName": "Roman Hindi Script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "English script",
"type": "string",
"display": true,
"required": false,
"displayName": "English script",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Title",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Tags",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Keywords",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Keywords",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Description",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Brief",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Thumbnail Brief",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Thumbnail Tagline",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Thumbnail Tagline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Youtube Generated Thumbnail",
"type": "string",
"display": true,
"required": false,
"displayName": "Youtube Generated Thumbnail",
"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": [
"Number"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1BMtXN3Wl_pqyHJQW9KfRaErjPmg5wrm9kfIYcnuUVAM/edit?usp=drivesdk",
"cachedResultName": "Youtube Automation"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "S5JvudyeIyaJADDa",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "fc5309f3-e498-4dd4-9e17-e89438661df0",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3072,
448
],
"parameters": {
"height": 224,
"content": "## Step-by-Step Tutorial YouTube Video \n\n## [Follow Video- Click here](https://youtu.be/R426d84slWY?si=Ecozf55ypxg6PnQz)"
},
"typeVersion": 1
},
{
"id": "4ebd0064-f716-4fc0-9c87-d5d4a3590b0f",
"name": "Haftnotiz1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1840,
-544
],
"parameters": {
"width": 352,
"height": 672,
"content": "## Prompt for Generating YouTue Tags, Description so on..\n\n{{ $json['English script'] }}\n\nUse the provided English script and generate:\nGenerate the following:\n\n1️⃣ 10 Best Engaging YouTube Titles (≤ 70 characters each)\n\n2️⃣ Best Engaging YouTube Tags (comma-separated, up to 20)\n\n3️⃣ Best Engaging YouTube Keywords (comma-separated, up to 20)\n\n4️⃣ SEO-Friendly YouTube Video Description (optimized for 2025 algorithm, includes keywords, tags, hook, timestamps, engagement call-to-action, hashtags, and Google Search Keywords section)\n\n5️⃣ Thumbnail AI Prompt (realistic, describes main idea, bold clickable text, color scheme, visual elements, emotion, layout, realistic photography style, 1280×720, 16:9, suitable for MidJourney/DALL·E/Runware)\n\n6️⃣ Thumbnail Tagline (single catchy 3–5 word tagline)"
},
"typeVersion": 1
},
{
"id": "287cad96-b7b8-4f90-a2f9-eab7672a1b9d",
"name": "Haftnotiz2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1408,
-544
],
"parameters": {
"width": 448,
"height": 672,
"content": "## Javascript code for separating the data\n\nconst raw = $input.first().json.message.content;\n\n// Helper function to extract section between markers\nfunction extractSection(regex, input) {\n const match = input.match(regex);\n return match ? match[1].trim() : \"\";\n}\n\n// 1️⃣ Titles\nlet titlesRaw = extractSection(/1️⃣.*?\\n([\\s\\S]*?)2️⃣/, raw);\nlet titles = titlesRaw\n .split(/\\n|-/)\n .map(t => t.replace(/^\\d+\\.?\\s*/, \"\").trim())\n .filter(t => t.length > 0);\n\n// 2️⃣ Tags\nlet tags = extractSection(/2️⃣.*?\\n([\\s\\S]*?)3️⃣/, raw).replace(/\\n/g, \"\").trim();\n\n// 3️⃣ Keywords\nlet keywords = extractSection(/3️⃣.*?\\n([\\s\\S]*?)4️⃣/, raw).replace(/\\n/g, \"\").trim();\n\n// 4️⃣ SEO Description\nlet description = extractSection(/4️⃣.*?\\n([\\s\\S]*?)5️⃣/, raw).trim();\n\n// 5️⃣ Thumbnail AI Prompt\nlet thumbnailPrompt = extractSection(/5️⃣.*?\\n([\\s\\S]*?)6️⃣/, raw).trim();\n\n// 6️⃣ Thumbnail Tagline\nlet tagline = extractSection(/6️⃣.*?\\n([\\s\\S]*)$/, raw).replace(/[\"\\n]/g, \"\").trim();\n\nreturn [\n {\n json: {\n \"YouTube Titles\": titles,\n \"YouTube Tags\": tags,\n \"YouTube Keywords\": keywords,\n \"SEO Description\": description,\n \"Thumbnail AI Prompt\": thumbnailPrompt,\n \"Thumbnail Tagline\": tagline\n }\n }\n];\n"
},
"typeVersion": 1
},
{
"id": "8ac19d3d-486e-4772-8871-64e0246b4ca5",
"name": "Haftnotiz3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-832,
528
],
"parameters": {
"width": 464,
"height": 672,
"content": "## Python code for generating dynamic prompt\n\nimport uuid\n\nthumbnail_brief = items[0][\"json\"].get(\"Youtube Thumbnail Brief\", \"\")\ntagline = items[0][\"json\"].get(\"Youtube Thumbnail Tagline\", \"\")\n\nprompt = (\n \"Generate a professional YouTube thumbnail.\\n\\n\"\n f\"Thumbnail Context:\\n{thumbnail_brief}\\n\\n\"\n f\"Main Tagline: '{tagline}'\\n\\n\"\n \"Thumbnail requirements:\\n\"\n \"- Bold, central tagline text\\n\"\n \"- Cinematic lighting, vibrant colors\\n\"\n \"- Highly clickable YouTube style\\n\"\n \"- 1280x720 resolution\"\n)\n\npayload = {\n \"taskType\": \"imageInference\",\n \"taskUUID\": str(uuid.uuid4()),\n \"positivePrompt\": prompt,\n \"width\": 1280,\n \"height\": 720,\n \"model\": \"bytedance:3@1\",\n \"numberResults\": 1,\n \"outputFileName\": \"thumbnail.png\"\n}\n\nreturn {\"data\": [payload]}"
},
"typeVersion": 1
},
{
"id": "a67690da-e029-4458-a2c4-ff72ff6b94ca",
"name": "Haftnotiz4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2560,
80
],
"parameters": {
"height": 96,
"content": "## Add your OpenAI Keys\n"
},
"typeVersion": 1
},
{
"id": "caec88cf-9d1a-4f52-bc18-bc2b5281d976",
"name": "Haftnotiz5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3008,
112
],
"parameters": {
"width": 176,
"height": 112,
"content": "## Connect with your Google Sheet\n"
},
"typeVersion": 1
},
{
"id": "5ac6a066-7d50-46b2-84ec-8529b9878cb5",
"name": "Haftnotiz6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-400,
-192
],
"parameters": {
"height": 144,
"content": "## Add your RUNWARE API or any other 3rd party"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "eed95939-cf9f-4852-8ecb-997cf777c3c0",
"connections": {
"Google Sheets Trigger": {
"main": [
[
{
"node": "f92a73f2-3901-4576-b1e8-9836672a5977",
"type": "main",
"index": 0
}
]
]
},
"064a7b70-e5a9-4e9a-b7ac-50ad3e1a7840": {
"main": [
[
{
"node": "12157d7c-4dae-4a06-be7b-23f39584d3c5",
"type": "main",
"index": 0
}
]
]
},
"bfc19dfc-5a3d-4235-a630-d12126afc3a7": {
"main": [
[
{
"node": "3342ff7b-5622-4aaf-8f8a-781285e027d9",
"type": "main",
"index": 0
}
]
]
},
"12157d7c-4dae-4a06-be7b-23f39584d3c5": {
"main": [
[
{
"node": "bfc19dfc-5a3d-4235-a630-d12126afc3a7",
"type": "main",
"index": 0
}
]
]
},
"f92a73f2-3901-4576-b1e8-9836672a5977": {
"main": [
[
{
"node": "064a7b70-e5a9-4e9a-b7ac-50ad3e1a7840",
"type": "main",
"index": 0
}
],
[
{
"node": "No Operation, do nothing",
"type": "main",
"index": 0
}
]
]
},
"a601a771-5858-43cf-aa6e-3c36e2a6033f": {
"main": [
[
{
"node": "e6ae98e2-2599-4006-ac63-40f43198812e",
"type": "main",
"index": 0
}
]
]
},
"f0a5ba4b-4dba-4acc-bc80-1e66f6181e32": {
"main": [
[
{
"node": "HTTP Request calling Runware API for generating Thumbnail image",
"type": "main",
"index": 0
}
]
]
},
"3342ff7b-5622-4aaf-8f8a-781285e027d9": {
"main": [
[
{
"node": "a601a771-5858-43cf-aa6e-3c36e2a6033f",
"type": "main",
"index": 0
}
]
]
},
"e6ae98e2-2599-4006-ac63-40f43198812e": {
"main": [
[
{
"node": "f0a5ba4b-4dba-4acc-bc80-1e66f6181e32",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request calling Runware API for generating Thumbnail image": {
"main": [
[
{
"node": "3e233517-bbca-420e-a081-6ce8ca14a77a",
"type": "main",
"index": 0
}
]
]
}
}
}Häufig gestellte Fragen
Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Experte - Content-Erstellung, Multimodales KI
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Printify-Automatisierung - Titel- und Beschreibungsaktualisierung - AlexK1919
Automatisierte Erstellung von SEO-Produkttiteln und -beschreibungen für Printify mit GPT-4o-mini
If
Set
Code
+
If
Set
Code
26 NodesAmit Mehta
Content-Erstellung
Batch-SEO-Inhalts-Erstellung mit Webflow-Entwürfen und KI-Bildern (Vorlage)
Batch-SEO-Inhalts-Generierung mit GPT, Gemini-Bildern und Webflow-Entwürfen
If
Set
Code
+
If
Set
Code
54 NodesDahiana
Content-Erstellung
1. Playlist-Details-Einstellungen für Roboter-Kopie
Erstelle KI-generierte YouTube-Musik-Playlists mit Suno, GPT-4, Runway und Creatomate
If
Set
Code
+
If
Set
Code
203 NodesJoseph
Content-Erstellung
LinkedIn Lead-Anreicherung und KI-gestützte personalisierte Kaltakquise
Lead-Ereicherung und personalisierte kalte Akquise für LinkedIn, integriert mit Hunter.io, GPT-4 und Sheets
If
Set
Code
+
If
Set
Code
18 NodesAmirul Hakimi
Content-Erstellung
KI-gesteuerte Videowerkzeugung und Upload zu Instagram, TikTok und YouTube
AI-gestützte Videoerstellung aus Google Drive und hochladen zu Instagram, TikTok und YouTube
If
Set
Code
+
If
Set
Code
53 NodesDevCode Journey
Content-Erstellung
Erzeugung von Marketinginhalten für Soziale Medien
Automatisierte Erstellung von plattformspezifischen Marketinginhalten mit GPT-4, Google Tabellen und Dokumenten
If
Set
Code
+
If
Set
Code
19 NodesConceptRecall
Content-Erstellung
Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes19
Kategorie2
Node-Typen9
Autor
Janak Patel
@dolphyaiExterne Links
Auf n8n.io ansehen →
Diesen Workflow teilen