Erzeugung von SEO-Inhalten aus Trendtabellen in den Speicher (SharePoint/Drive/Dropbox)
Experte
Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 47 Nodes. Hauptsächlich werden If, Set, Code, Wait, Gmail und andere Nodes verwendet. Automatisierte Erstellung von SEO-Inhalten aus Trends mit GPT-4o, FAL AI und Mehrspeicherunterstützung
Voraussetzungen
- •Google-Konto + Gmail API-Anmeldedaten
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
- •OpenAI API Key
Verwendete Nodes (47)
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": "J5BZO9ezilMiswH7",
"meta": {
"instanceId": "2cf742429c2e3ee4e5a20069d3d8a75208519303b864f026a79464efa726bd95",
"templateCredsSetupCompleted": true
},
"name": "Generate SEO content from trends spreadsheet to storage (SharePoint/Drive/Dropbox)",
"tags": [
{
"id": "wpMIpESnBZpdPCpj",
"name": "Marketing",
"createdAt": "2025-06-03T11:38:37.020Z",
"updatedAt": "2025-06-03T11:38:37.020Z"
}
],
"nodes": [
{
"id": "5a9c11b3-a0d8-419f-a447-828ca7908f0a",
"name": "Trenddaten lesen",
"type": "n8n-nodes-base.spreadsheetFile",
"position": [
-4288,
-2048
],
"parameters": {
"options": {}
},
"typeVersion": 1
},
{
"id": "9988898b-23ab-4b37-8bc2-76a97f96c669",
"name": "Thema aus Trends auswählen",
"type": "n8n-nodes-base.code",
"position": [
-4016,
-2048
],
"parameters": {
"jsCode": "// Get all trends from the spreadsheet\nconst trends = $('Read Trends Data').all().map(item => item.json.Trend).filter(trend => trend);\n\n// Random selection\nconst randomTopic = trends[Math.floor(Math.random() * trends.length)];\n\n// For cyclic selection, you could implement a counter mechanism\n// This is a simplified version using random selection\n\nreturn {\n json: {\n Selected_Topic: randomTopic,\n Available_Trends: trends,\n Selection_Method: 'Random'\n }\n};"
},
"typeVersion": 1
},
{
"id": "362b5cd0-5253-4ffe-84dc-d1c286977b7d",
"name": "Newsletter erstellen",
"type": "n8n-nodes-base.code",
"position": [
-2608,
-2512
],
"parameters": {
"jsCode": "// Get the raw AI output (string with possible markdown)\nlet rawOutput = $node[\"Prepare Newsletter Data\"].json.output;\n\n// Strip markdown code block if present (```json ... ```)\nrawOutput = rawOutput.replace(/```json|```/g, '').trim();\n\n// Parse cleaned JSON string\nconst aiContent = JSON.parse(rawOutput);\n\n// Get template and selected topic\nconst templateContent = $node[\"Extract from Text File\"].json.data;\nconst selectedTopic = $json.Selected_Topic || 'Thema fehlt';\n\n// Helper for safe replacements\nconst getSafe = (obj, key) => obj?.[key] ?? 'undefined';\n\n// Replace placeholders for German content\nlet newsletterContent = templateContent;\nnewsletterContent = newsletterContent.replace(/\\{\\{INTRODUCTION_DE\\}\\}/g, getSafe(aiContent, 'INTRODUCTION_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TOPIC_DE\\}\\}/g, getSafe(aiContent, 'TOPIC_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{DESCRIPTION_DE\\}\\}/g, getSafe(aiContent, 'DESCRIPTION_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER1_DE\\}\\}/g, getSafe(aiContent, 'TEASER1_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER2_DE\\}\\}/g, getSafe(aiContent, 'TEASER2_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER3_DE\\}\\}/g, getSafe(aiContent, 'TEASER3_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{CTA_DE\\}\\}/g, getSafe(aiContent, 'CTA_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{FOOTER_TEXT_DE\\}\\}/g, getSafe(aiContent, 'FOOTER_TEXT_DE'));\nnewsletterContent = newsletterContent.replace(/\\{\\{FOOTER_NAME_DE\\}\\}/g, getSafe(aiContent, 'FOOTER_NAME_DE'));\n\n// Replace placeholders for English content\nnewsletterContent = newsletterContent.replace(/\\{\\{TOPIC_TITLE_EN\\}\\}/g, getSafe(aiContent, 'TOPIC_TITLE_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{INTRODUCTION_EN\\}\\}/g, getSafe(aiContent, 'INTRODUCTION_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TOPIC_EN\\}\\}/g, getSafe(aiContent, 'TOPIC_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{DESCRIPTION_EN\\}\\}/g, getSafe(aiContent, 'DESCRIPTION_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER1_EN\\}\\}/g, getSafe(aiContent, 'TEASER1_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER2_EN\\}\\}/g, getSafe(aiContent, 'TEASER2_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{TEASER3_EN\\}\\}/g, getSafe(aiContent, 'TEASER3_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{CTA_EN\\}\\}/g, getSafe(aiContent, 'CTA_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{FOOTER_TEXT_EN\\}\\}/g, getSafe(aiContent, 'FOOTER_TEXT_EN'));\nnewsletterContent = newsletterContent.replace(/\\{\\{FOOTER_NAME_EN\\}\\}/g, getSafe(aiContent, 'FOOTER_NAME_EN'));\n\n// Add date if needed (you can add this to template if required)\nnewsletterContent = newsletterContent.replace(/\\{\\{DATE\\}\\}/g, new Date().toLocaleDateString('de-DE'));\n\n// Return final output\nreturn {\n json: {\n newsletter_content: newsletterContent,\n topic: selectedTopic,\n topic_de: getSafe(aiContent, 'TOPIC_DE'),\n topic_en: getSafe(aiContent, 'TOPIC_EN'),\n generated_date: new Date().toISOString(),\n // Include all generated content for debugging/reference\n ai_content: aiContent\n }\n}; "
},
"typeVersion": 1
},
{
"id": "7e3d41de-6fdd-4b7d-8e56-2f967108dad2",
"name": "Genehmigungsstatus prüfen",
"type": "n8n-nodes-base.if",
"position": [
624,
-2144
],
"parameters": {
"conditions": {
"string": [
{
"value1": "={{ $json.data.approved }}",
"value2": "true",
"operation": "contains"
}
]
}
},
"typeVersion": 1
},
{
"id": "85b0946e-4df0-43e5-9615-020b326b85c0",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-3424,
-2320
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "E4PFATctY0kV00hl",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "dca2ef6d-5179-46a4-b916-5f2bfcf79d1e",
"name": "Trends XLSX abrufen",
"type": "n8n-nodes-base.microsoftSharePoint",
"position": [
-4512,
-2048
],
"parameters": {
"file": {
"__rl": true,
"mode": "list",
"value": "01M45PWA7UGSM3K5CVPFDYJROPHJOTUYP5",
"cachedResultName": "social-media-trends.xls"
},
"site": {
"__rl": true,
"mode": "list",
"value": "plemeo.sharepoint.com,f304c34c-1252-4b99-a852-059c2036c718,c3bf26ab-bf44-4334-8e5b-e8b680bb9e1d",
"cachedResultName": "plemeo"
},
"folder": {
"__rl": true,
"mode": "list",
"value": "01M45PWAZCILJ3WHMIXBGZA2UP2JMQ5CXO",
"cachedResultName": "Newsletter Workflow"
},
"requestOptions": {}
},
"credentials": {
"microsoftSharePointOAuth2Api": {
"id": "jZkLTQXyVEzxtmp3",
"name": "Microsoft SharePoint account"
}
},
"typeVersion": 1
},
{
"id": "c8d706a3-3bad-4686-a712-350b49314935",
"name": "Newsletter-Vorlage abrufen",
"type": "n8n-nodes-base.microsoftSharePoint",
"position": [
-3024,
-2512
],
"parameters": {
"file": {
"__rl": true,
"mode": "list",
"value": "01M45PWAZJXIV2AOHITFCL5DPA4QV764XS",
"cachedResultName": "newsletter_template.html"
},
"site": {
"__rl": true,
"mode": "list",
"value": "plemeo.sharepoint.com,f304c34c-1252-4b99-a852-059c2036c718,c3bf26ab-bf44-4334-8e5b-e8b680bb9e1d",
"cachedResultName": "plemeo"
},
"folder": {
"__rl": true,
"mode": "list",
"value": "01M45PWAZCILJ3WHMIXBGZA2UP2JMQ5CXO",
"cachedResultName": "Newsletter Workflow"
},
"requestOptions": {}
},
"credentials": {
"microsoftSharePointOAuth2Api": {
"id": "jZkLTQXyVEzxtmp3",
"name": "Microsoft SharePoint account"
}
},
"typeVersion": 1
},
{
"id": "d1466c51-eb0b-4994-ac1a-e234821de281",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"position": [
-2688,
-1760
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "0de41f03-c4cc-45d8-bb11-0458995cdb2d",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $('Configuration Settings').first().json.ENV_INCLUDE_VIDEO }}",
"rightValue": "true"
}
]
}
},
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "9ebba67d-70fb-4fcd-b62a-5ea6d97a0a3c",
"operator": {
"type": "boolean",
"operation": "false",
"singleValue": true
},
"leftValue": "={{ $('Configuration Settings').first().json.ENV_INCLUDE_VIDEO }}",
"rightValue": "false"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "0b9a10a8-c84a-47ba-bd8f-0d01d86f013f",
"name": "Video abrufen",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
-1824,
-1824
],
"parameters": {
"url": "=https://queue.fal.run/fal-ai/kling-video/requests/{{ $('Create FAL Video').item.json.request_id }}",
"options": {},
"sendQuery": true,
"sendHeaders": true,
"queryParameters": {
"parameters": [
{
"name": "logs",
"value": "true"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "db8e8f18-f2d8-476f-ac83-b365aa67451c",
"name": "FAL-Video erstellen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-2320,
-1760
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/kling-video/v2/master/image-to-video",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "prompt",
"value": "={{ $('Parse Fields').item.json.video_prompt }}"
},
{
"name": "image_url",
"value": "={{ $('Switch').item.json.downloadUrl }}"
},
{
"name": "duration",
"value": "={{ $('Configuration Settings').first().json.ENV_FALAI_VIDEO_DURATION }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "2a729954-8812-473e-a0be-0c9399a4c454",
"name": "Audio erstellen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1376,
-1760
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/lyria2",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "prompt",
"value": "={{ $('Parse Fields').item.json.audio_prompt }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "6984c8c5-0f4c-4881-85fd-782b848ca5f6",
"name": "Auf Audio warten",
"type": "n8n-nodes-base.wait",
"position": [
-1152,
-1760
],
"webhookId": "ddffe40c-99fa-4a7d-a626-902d8dd363d9",
"parameters": {
"amount": 59
},
"typeVersion": 1.1
},
{
"id": "a172b117-221e-4707-a213-f70397e70418",
"name": "Audio abrufen",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
-944,
-1824
],
"parameters": {
"url": "=https://queue.fal.run/fal-ai/lyria2/requests/{{ $('Create Audio').item.json.request_id }}",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "f4b95592-3803-4dca-a41d-71bd20746cb4",
"name": "Merge-Request erstellen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-496,
-1760
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/ffmpeg-api/merge-audio-video",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "video_url",
"value": "={{ $('Get Video').first().json.video.url }}"
},
{
"name": "audio_url",
"value": "={{ $json.audio.url }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "f419cf55-ca78-4beb-b62d-910e1db9e841",
"name": "Auf Merge warten",
"type": "n8n-nodes-base.wait",
"position": [
-272,
-1760
],
"webhookId": "ffb62d76-30ac-49b9-a29e-f2ff100522b9",
"parameters": {
"amount": 50
},
"typeVersion": 1.1
},
{
"id": "336374fa-8e2d-4402-b152-d68fc407a885",
"name": "Gemergtes Video abrufen",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
-64,
-1760
],
"parameters": {
"url": "=https://queue.fal.run/fal-ai/ffmpeg-api/requests/{{ $('Create Merge Request').item.json.request_id }}",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Key {{ $('Configuration Settings').first().json.ENV_FALAI_APIKEY }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"name": "Merge1",
"type": "n8n-nodes-base.merge",
"position": [
128,
-2192
],
"parameters": {
"mode": "combine",
"options": {
"includeUnpaired": true
},
"combineBy": "combineByPosition",
"numberInputs": 5
},
"typeVersion": 3
},
{
"id": "90347ce0-1238-448d-abf2-96ecb228b8e0",
"name": "Konfigurationseinstellungen",
"type": "n8n-nodes-base.set",
"position": [
-4752,
-2048
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "e7c84a97-6018-4a2d-a4fa-e7565c5cd063",
"name": "ENV_FALAI_VIDEO_DURATION",
"type": "string",
"value": "={{ $json.video_duration }}"
},
{
"id": "431d7768-f55f-4ea8-b5db-0ca5f90b87ae",
"name": "ENV_APPROVER_EMAIL",
"type": "string",
"value": "test@mail.com"
},
{
"id": "5b27d8be-cf58-481d-bf03-7298f532a250",
"name": "ENV_USECASE",
"type": "string",
"value": "={{ $json.usecase }}"
},
{
"id": "f59f8ef5-853f-4457-a3e1-458f270d1955",
"name": "ENV_INCLUDE_VIDEO",
"type": "boolean",
"value": "={{ $json.include_video }}"
},
{
"id": "aef0d1ef-731d-4b18-b144-c810e33295fe",
"name": "ENV_FALAI_APIKEY",
"type": "string",
"value": "<YOUR_API_KEY>"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "5a58eb7e-1993-4a8e-9d66-53b33b3d11de",
"name": "OpenAI Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-3408,
-1856
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "chatgpt-4o-latest",
"cachedResultName": "chatgpt-4o-latest"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "E4PFATctY0kV00hl",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "fdb7ef7c-f900-4374-b65e-eb14f5c9f4a6",
"name": "Video- und Audio-Prompt generieren",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-3392,
-2064
],
"parameters": {
"text": "=You are a Social Media Content Creator. The goal is to create a video, audio and image that will get posted along with a blog text as a blog post to the website.\nCreate a Prompt for video generation, audio generation and image generation that is in line with the usecase and the topic. The prompt should be maximum 1 sentence (short to medium length). The image should not contain any text or images that have text in it (i.e. computer screen with text). The image prompt should maximum have 110 characters.\n\n** USE-CASE ***\n{{ $('Configuration Settings').first().json.ENV_USECASE }}\n\n** BLOG POST TOPIC ***\n{{ $('Select Topic from Trends').first().json.Selected_Topic }}\n\nOutput the 3 fields in a json format with \"video_prompt\" and \"audio_prompt\" and \"image _prompt\".",
"options": {},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "0639f081-0402-4534-b448-d23e45032037",
"name": "Intent bestimmen",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-5392,
-2048
],
"parameters": {
"text": "=Please extract 3 fields out of the following query. Respond with a valid JSON object.\n1) \"usecase\" - string\n2) \"include_video\" - boolean, if not determined \"false\"\n3) \"video_duration\" - string, if not determined \"5\". If user wants more than 5, set it to \"10\". Possible values: either \"5\" or \"10\". If the user wants less than 5, set it to \"5\".\n\n** USER QUERY ***\n{{$('Receive Request').first().json.body.text }}\n",
"options": {},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "a6f8688e-95a7-4169-9224-682762a8372b",
"name": "OpenAI Chat Model2",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-5312,
-1824
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "chatgpt-4o-latest",
"cachedResultName": "chatgpt-4o-latest"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "E4PFATctY0kV00hl",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "aa3ab2ba-e08b-49cf-ac57-3789107435c2",
"name": "Felder parsen",
"type": "n8n-nodes-base.code",
"position": [
-3024,
-2064
],
"parameters": {
"jsCode": "const item = $input.first();\nlet raw = item.json.output;\n\n// Remove markdown code block wrapper if present\nraw = raw.replace(/```json\\s*|\\s*```/g, \"\");\n\n// Now parse as JSON\nconst prompts = JSON.parse(raw);\n\n// Assign as fields\nitem.json.video_prompt = prompts.video_prompt;\nitem.json.audio_prompt = prompts.audio_prompt;\nitem.json.image_prompt = prompts.image_prompt;\n// Create random 8-character filename\nitem.json.random_filename = Math.random().toString(36).substring(2, 10);\n\nreturn [item];\n"
},
"typeVersion": 2
},
{
"id": "38f5414a-7e8b-4350-8c15-474d44453602",
"name": "Intent-Felder parsen",
"type": "n8n-nodes-base.code",
"position": [
-4992,
-2048
],
"parameters": {
"jsCode": "const item = $input.first();\nlet raw = item.json.output;\n\n// Remove markdown code block wrapper if present\nraw = raw.replace(/```json\\s*|\\s*```/g, \"\");\n\n// Now parse as JSON\nconst prompts = JSON.parse(raw);\n\n// Assign as fields\nitem.json.usecase = prompts.usecase;\nitem.json.include_video = prompts.include_video;\nitem.json.video_duration = prompts.video_duration;\n\nreturn [item];\n"
},
"typeVersion": 2
},
{
"id": "50c07304-8521-43f7-9e0c-16fe48ed90e2",
"name": "HTML zu Binär",
"type": "n8n-nodes-base.code",
"position": [
832,
-2144
],
"parameters": {
"jsCode": "// Convert HTML content into binary buffer\nconst html = $('Build Newsletter').first().json.newsletter_content;\nconst fileName = \"test\"\n\nreturn [{\n binary: {\n data: {\n data: Buffer.from(html, 'utf8'),\n mimeType: \"text/html\",\n fileName: `${fileName}.html`\n }\n }\n}];\n"
},
"typeVersion": 2
},
{
"id": "da4da730-32f9-47e8-92a8-2ad2651376eb",
"name": "TXT zu Binär",
"type": "n8n-nodes-base.code",
"position": [
2048,
-2144
],
"parameters": {
"jsCode": "const url = $('Get Merged Video').first().json.video.url;\nconst fileName = \"video_url\";\n\nreturn [{\n binary: {\n data: {\n data: Buffer.from(url, 'utf8'),\n mimeType: \"text/plain\", // ✅ correct MIME type for .txt\n fileName: `${fileName}.txt`\n }\n }\n}];\n"
},
"typeVersion": 2
},
{
"id": "ac207979-019c-47fe-a7a1-d53d70afbb35",
"name": "JPG zu Binär",
"type": "n8n-nodes-base.code",
"position": [
1280,
-2144
],
"parameters": {
"jsCode": "const source = $('Generate Image').first();\n\nreturn [{\n binary: {\n data: source.binary.data\n }\n}];\n"
},
"typeVersion": 2
},
{
"id": "c8684458-4bb9-45ee-af72-adea5b174168",
"name": "Video-URL speichern falls vorhanden",
"type": "n8n-nodes-base.if",
"position": [
1760,
-2128
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "21f6961e-0671-4a85-bddf-939dab2e8cb0",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $('Configuration Settings').first().json.ENV_INCLUDE_VIDEO }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "cdbc12f2-d5f3-4236-a136-b8259f3d12ee",
"name": "HTML hochladen",
"type": "n8n-nodes-base.microsoftSharePoint",
"position": [
1056,
-2144
],
"parameters": {
"site": {
"__rl": true,
"mode": "list",
"value": "plemeo.sharepoint.com,f304c34c-1252-4b99-a852-059c2036c718,c3bf26ab-bf44-4334-8e5b-e8b680bb9e1d",
"cachedResultName": "plemeo"
},
"folder": {
"__rl": true,
"mode": "list",
"value": "01M45PWA2FV7FHIIDJBFFLKUYMZUSLERBQ",
"cachedResultName": "SEO Workflow"
},
"fileName": "=/{{ $('Parse Fields').first().json.random_filename }}.html",
"operation": "upload",
"fileContents": "=data",
"requestOptions": {}
},
"credentials": {
"microsoftSharePointOAuth2Api": {
"id": "jZkLTQXyVEzxtmp3",
"name": "Microsoft SharePoint account"
}
},
"typeVersion": 1
},
{
"id": "270a6ba6-83cd-45fd-a733-7799f787b244",
"name": "JPG hochladen",
"type": "n8n-nodes-base.microsoftSharePoint",
"position": [
1504,
-2144
],
"parameters": {
"site": {
"__rl": true,
"mode": "list",
"value": "plemeo.sharepoint.com,f304c34c-1252-4b99-a852-059c2036c718,c3bf26ab-bf44-4334-8e5b-e8b680bb9e1d",
"cachedResultName": "plemeo"
},
"folder": {
"__rl": true,
"mode": "list",
"value": "01M45PWA2FV7FHIIDJBFFLKUYMZUSLERBQ",
"cachedResultName": "SEO Workflow"
},
"fileName": "=/{{ $('Parse Fields').first().json.random_filename }}.jpg",
"operation": "upload",
"fileContents": "=data",
"requestOptions": {}
},
"credentials": {
"microsoftSharePointOAuth2Api": {
"id": "jZkLTQXyVEzxtmp3",
"name": "Microsoft SharePoint account"
}
},
"typeVersion": 1
},
{
"id": "61ea58e5-8cf7-40fe-b67b-1f7faa81dcf3",
"name": "Video-URL hochladen",
"type": "n8n-nodes-base.microsoftSharePoint",
"position": [
2304,
-2144
],
"parameters": {
"site": {
"__rl": true,
"mode": "list",
"value": "plemeo.sharepoint.com,f304c34c-1252-4b99-a852-059c2036c718,c3bf26ab-bf44-4334-8e5b-e8b680bb9e1d",
"cachedResultName": "plemeo"
},
"folder": {
"__rl": true,
"mode": "list",
"value": "01M45PWA2FV7FHIIDJBFFLKUYMZUSLERBQ",
"cachedResultName": "SEO Workflow"
},
"fileName": "={{ $('Parse Fields').first().json.random_filename }}.txt",
"operation": "upload",
"fileContents": "=data",
"requestOptions": {}
},
"credentials": {
"microsoftSharePointOAuth2Api": {
"id": "jZkLTQXyVEzxtmp3",
"name": "Microsoft SharePoint account"
}
},
"typeVersion": 1
},
{
"id": "9ae9a529-370b-4d2d-acb8-ad3e3f1d3913",
"name": "Nachricht senden und auf Antwort warten",
"type": "n8n-nodes-base.gmail",
"position": [
400,
-2144
],
"webhookId": "28fef477-06b8-4ddf-b656-23e09ba021f5",
"parameters": {
"sendTo": "={{$('Configuration Settings').first().json.ENV_APPROVER_EMAIL}}",
"message": "={{ $json.newsletter_content }}\n\n<div style=\"margin-top:32px; text-align:center;\">\n <img src=\"{{ $('Switch').item.json.downloadUrl }}\" style=\"max-width:100%; height:auto;\">\n</div>\n\n\n{{ $json.video?.url ? `\n <div style=\"margin-top:24px; text-align:center;\">\n <a href=\"${$json.video.url}\" target=\"_blank\" style=\"font-size:18px; color:#1276d3;\">\n ▶ Watch Video\n </a>\n </div>\n` : '' }}\n",
"options": {},
"subject": "SEO Content Approval",
"operation": "sendAndWait",
"approvalOptions": {
"values": {
"approvalType": "double"
}
}
},
"credentials": {
"gmailOAuth2": {
"id": "fBvSTCpGJatuzJAy",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "c3910d9b-81af-40c2-a0ef-e7953c265d9f",
"name": "Base64-Feld setzen",
"type": "n8n-nodes-base.set",
"position": [
-2512,
-2064
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "7ba2499f-53d2-4f5c-9a4a-ee8b61a97d5b",
"name": "base64",
"type": "string",
"value": "={{ $('Generate Image').item.binary.data.data }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "efeefb3f-4856-4136-a230-af280b346468",
"name": "Base64 zu Datei konvertieren",
"type": "n8n-nodes-base.convertToFile",
"position": [
-2288,
-2064
],
"parameters": {
"options": {},
"operation": "toBinary",
"sourceProperty": "base64"
},
"typeVersion": 1.1
},
{
"id": "e493b67f-360c-464c-a8b7-dae374751da7",
"name": "Anfrage empfangen",
"type": "n8n-nodes-base.webhook",
"position": [
-5616,
-2048
],
"webhookId": "ff9c853e-f76e-4722-ba37-433ad1750e6b",
"parameters": {
"path": "ff9c853e-f76e-4722-ba37-433ad1750e6b",
"options": {
"rawBody": true
},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "ef936c7c-c40d-450c-9dda-5cf55dac2027",
"name": "Newsletter-Daten vorbereiten",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-3408,
-2512
],
"parameters": {
"text": "=You are a marketing copywriter tasked with creating content for a B2B newsletter on the topic: \"{{ $('Select Topic from Trends').first().json.Selected_Topic }}\".\n\nThe newsletter template uses the following structure for BOTH German and English versions:\n\n**German Content:**\n- {INTRODUCTION_DE}: A 2–3 sentence engaging intro that outlines why the topic is relevant now\n- {TOPIC_DE}: The main topic/headline for the section (max. 8 words)\n- {DESCRIPTION_DE}: A detailed description of what's new or important about this topic (3-4 sentences)\n- {TEASER1_DE}, {TEASER2_DE}, {TEASER3_DE}: Three highlight points showcasing key benefits, insights, or developments (1-2 sentences each)\n- {CTA_DE}: A compelling call-to-action encouraging engagement (max. 20 words)\n- {FOOTER_TEXT_DE}: Professional closing message (1-2 sentences)\n- {FOOTER_NAME_DE}: Sender name/signature\n\n**English Content:**\n- {TOPIC_TITLE_EN}: Main newsletter title in English (max. 8 words)\n- {INTRODUCTION_EN}: English version of the engaging intro (2–3 sentences)\n- {TOPIC_EN}: English version of the main topic/headline (max. 8 words)\n- {DESCRIPTION_EN}: English version of the detailed description (3-4 sentences)\n- {TEASER1_EN}, {TEASER2_EN}, {TEASER3_EN}: English versions of the three highlight points (1-2 sentences each)\n- {CTA_EN}: English version of the call-to-action (max. 20 words)\n- {FOOTER_TEXT_EN}: English version of professional closing message (1-2 sentences)\n- {FOOTER_NAME_EN}: English version sender name/signature\n\nTone: professional but accessible, informative, slightly optimistic \nAudience: decision-makers and professionals in marketing, tech, and innovation roles \nCompany Context: plemeo.ai (AI-powered marketing solutions)\n\nPlease return the result as structured JSON in this format:\n\n```json\n{\n \"INTRODUCTION_DE\": \"\",\n \"TOPIC_DE\": \"\",\n \"DESCRIPTION_DE\": \"\",\n \"TEASER1_DE\": \"\",\n \"TEASER2_DE\": \"\",\n \"TEASER3_DE\": \"\",\n \"CTA_DE\": \"\",\n \"FOOTER_TEXT_DE\": \"\",\n \"FOOTER_NAME_DE\": \"\",\n \"TOPIC_TITLE_EN\": \"\",\n \"INTRODUCTION_EN\": \"\",\n \"TOPIC_EN\": \"\",\n \"DESCRIPTION_EN\": \"\",\n \"TEASER1_EN\": \"\",\n \"TEASER2_EN\": \"\",\n \"TEASER3_EN\": \"\",\n \"CTA_EN\": \"\",\n \"FOOTER_TEXT_EN\": \"\",\n \"FOOTER_NAME_EN\": \"\"\n}\n```",
"options": {},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "b20d69ab-97c5-4a2e-9926-77252b735ab3",
"name": "Aus Textdatei extrahieren",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-2816,
-2512
],
"parameters": {
"options": {},
"operation": "text"
},
"typeVersion": 1
},
{
"id": "3a93f461-3ad3-4cd3-923c-4e04e1b8fd92",
"name": "Bild generieren",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueErrorOutput",
"maxTries": 5,
"position": [
-2800,
-2064
],
"parameters": {
"url": "=https://image.pollinations.ai/prompt/{{ $json.image_prompt.replaceAll(' ','-').replaceAll(',','').replaceAll('.','').slice(0,100) }}?width=1080&height=1350&model=flux&nologo=true",
"options": {}
},
"retryOnFail": true,
"typeVersion": 4.2
},
{
"id": "5cfef6a7-5f21-4493-89df-c699bf927116",
"name": "Daten an Download-Service senden",
"type": "n8n-nodes-base.httpRequest",
"position": [
-2944,
-1760
],
"parameters": {
"url": "https://operator.velvetsyndicate.de:8090/api/upload-image",
"method": "POST",
"options": {
"allowUnauthorizedCerts": true
},
"sendBody": true,
"contentType": "multipart-form-data",
"bodyParameters": {
"parameters": [
{
"name": "image",
"parameterType": "formBinaryData",
"inputDataFieldName": "data"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "83cc9e0a-71cc-43a2-97d2-ecb92aca6fa0",
"name": "Auf Video warten",
"type": "n8n-nodes-base.wait",
"position": [
-2032,
-1760
],
"webhookId": "153655c9-2cb6-4f82-a497-7233abc21b04",
"parameters": {
"amount": 30
},
"typeVersion": 1.1
},
{
"id": "a4149035-a9f4-4d19-ac57-49b5bac89ed6",
"name": "Video wird noch verarbeitet",
"type": "n8n-nodes-base.if",
"position": [
-1600,
-1760
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "ab7cdeb1-40bf-4cc0-bfe6-ccf9a7ee1d1d",
"operator": {
"type": "boolean",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.error.name.toBoolean() }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "23060783-5d2f-4a2e-89fc-3138f0c8d681",
"name": "Audio wird noch verarbeitet",
"type": "n8n-nodes-base.if",
"position": [
-720,
-1760
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "4369b67d-7975-419a-84b2-acfe4e78bc28",
"operator": {
"type": "boolean",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.error.name.toBoolean() }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "8c4e8075-1c2f-4fa2-a1ab-f858ff9bc426",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-4912,
-2432
],
"parameters": {
"width": 496,
"height": 288,
"content": "### Trends Input Branch \n**What it does** \n• Downloads a trends spreadsheet from SharePoint. \n• Randomly selects one trending topic for content generation.\n\n**Credentials needed** \nMicrosoft SharePoint OAuth2 (for **Get Trends XLSX**).\n\n**User tweaks** \n• Change the spreadsheet file location in **Get Trends XLSX**. \n• Modify selection logic in **Select Topic from Trends** (currently random; could be weighted, chronological, etc.)."
},
"typeVersion": 1
},
{
"id": "ff1a4101-c39d-418d-a6e4-9f893dabed74",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3408,
-3008
],
"parameters": {
"width": 592,
"height": 368,
"content": "### Newsletter Template Branch \n**What it does** \n• Downloads your HTML template from SharePoint. \n• **Extract from Text File → Build Newsletter** replaces placeholders with AI-generated content.\n\n**Credentials needed** \nMicrosoft SharePoint OAuth2 (for **Get Newsletter Template**).\n\n**User must provide** \n• Your own HTML template with these exact placeholders: \n `{{INTRODUCTION_DE}} {{TOPIC_DE}} {{DESCRIPTION_DE}} {{TEASER1_DE}} {{TEASER2_DE}} {{TEASER3_DE}} {{CTA_DE}} {{FOOTER_TEXT_DE}} {{FOOTER_NAME_DE}} {{TOPIC_TITLE_EN}} {{INTRODUCTION_EN}} {{TOPIC_EN}} {{DESCRIPTION_EN}} {{TEASER1_EN}} {{TEASER2_EN}} {{TEASER3_EN}} {{CTA_EN}} {{FOOTER_TEXT_EN}} {{FOOTER_NAME_EN}}` \n• Upload this template to the SharePoint folder referenced in **Get Newsletter Template**."
},
"typeVersion": 1
},
{
"id": "a0ac2239-2eae-4100-bb03-99b8365a038e",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3856,
-1696
],
"parameters": {
"width": 688,
"height": 288,
"content": "### Image Assets Branch \n**What it does** \n• Uses Pollinations AI to create a 1080 × 1350 image from the AI-generated `image_prompt`. \n• Converts to binary and uploads to Velvet Syndicate (optional CDN).\n\n**Credentials needed** \nNone (Pollinations & Velvet accept unauthenticated requests).\n\n**User tweaks** \n• Edit the prompt in **Generate Video and Audio Prompt** to change image style. \n• Replace Velvet Syndicate URL in **Send Data to Download Service** if using another CDN."
},
"typeVersion": 1
},
{
"id": "93b1ab5a-e522-48b0-9208-41bda43cfb7b",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2688,
-1488
],
"parameters": {
"width": 624,
"height": 304,
"content": "### Video Assets Branch \n**What it does** \n• **FAL AI (kling-video)** creates a short video from the generated image. \n• **FAL AI (lyria2)** generates background music. \n• FFmpeg API merges video + audio → returns a public `video.url`.\n\n**Credentials needed** \n`ENV_FALAI_APIKEY` (stored in **Configuration Settings**).\n\n**User tweaks** \n• Set `include_video` and `video_duration` via webhook request. \n• Edit `video_prompt` & `audio_prompt` generation in **Generate Video and Audio Prompt**."
},
"typeVersion": 1
},
{
"id": "65ebb1ee-baa2-4dae-a780-f3a0b51836e0",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
832,
-1952
],
"parameters": {
"width": 608,
"height": 272,
"content": "### Storage Branch \n**What it does** \n• Converts newsletter HTML, generated JPG, and video URL into binary files. \n• Uploads all three files to SharePoint (or your chosen storage).\n\n**Credentials needed** \nMicrosoft SharePoint OAuth2 (for all three **Upload …** nodes).\n\n**User tweaks** \n• Change target folder IDs in each upload node. \n• Replace SharePoint nodes with Google Drive, Dropbox, S3, etc. \n• Modify filename pattern (currently `${random_filename}.html/.jpg/.txt`)."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "18a250cb-ac2d-4101-a49a-400be7b37f7f",
"connections": {
"d4449512-70d3-4856-b5fc-606b7b505ff0": {
"main": [
[
{
"node": "9ae9a529-370b-4d2d-acb8-ad3e3f1d3913",
"type": "main",
"index": 0
}
]
]
},
"d1466c51-eb0b-4994-ac1a-e234821de281": {
"main": [
[
{
"node": "db8e8f18-f2d8-476f-ac83-b365aa67451c",
"type": "main",
"index": 0
}
],
[
{
"node": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"type": "main",
"index": 0
}
]
]
},
"a172b117-221e-4707-a213-f70397e70418": {
"main": [
[
{
"node": "23060783-5d2f-4a2e-89fc-3138f0c8d681",
"type": "main",
"index": 0
}
]
]
},
"0b9a10a8-c84a-47ba-bd8f-0d01d86f013f": {
"main": [
[
{
"node": "a4149035-a9f4-4d19-ac57-49b5bac89ed6",
"type": "main",
"index": 0
}
]
]
},
"270a6ba6-83cd-45fd-a733-7799f787b244": {
"main": [
[
{
"node": "c8684458-4bb9-45ee-af72-adea5b174168",
"type": "main",
"index": 0
}
]
]
},
"cdbc12f2-d5f3-4236-a136-b8259f3d12ee": {
"main": [
[
{
"node": "ac207979-019c-47fe-a7a1-d53d70afbb35",
"type": "main",
"index": 0
}
]
]
},
"2a729954-8812-473e-a0be-0c9399a4c454": {
"main": [
[
{
"node": "6984c8c5-0f4c-4881-85fd-782b848ca5f6",
"type": "main",
"index": 0
}
]
]
},
"aa3ab2ba-e08b-49cf-ac57-3789107435c2": {
"main": [
[
{
"node": "3a93f461-3ad3-4cd3-923c-4e04e1b8fd92",
"type": "main",
"index": 0
}
]
]
},
"ac207979-019c-47fe-a7a1-d53d70afbb35": {
"main": [
[
{
"node": "270a6ba6-83cd-45fd-a733-7799f787b244",
"type": "main",
"index": 0
}
]
]
},
"da4da730-32f9-47e8-92a8-2ad2651376eb": {
"main": [
[
{
"node": "61ea58e5-8cf7-40fe-b67b-1f7faa81dcf3",
"type": "main",
"index": 0
}
]
]
},
"3a93f461-3ad3-4cd3-923c-4e04e1b8fd92": {
"main": [
[
{
"node": "c3910d9b-81af-40c2-a0ef-e7953c265d9f",
"type": "main",
"index": 0
}
],
[]
]
},
"50c07304-8521-43f7-9e0c-16fe48ed90e2": {
"main": [
[
{
"node": "cdbc12f2-d5f3-4236-a136-b8259f3d12ee",
"type": "main",
"index": 0
}
]
]
},
"83cc9e0a-71cc-43a2-97d2-ecb92aca6fa0": {
"main": [
[
{
"node": "0b9a10a8-c84a-47ba-bd8f-0d01d86f013f",
"type": "main",
"index": 0
}
]
]
},
"6984c8c5-0f4c-4881-85fd-782b848ca5f6": {
"main": [
[
{
"node": "a172b117-221e-4707-a213-f70397e70418",
"type": "main",
"index": 0
}
]
]
},
"f419cf55-ca78-4beb-b62d-910e1db9e841": {
"main": [
[
{
"node": "336374fa-8e2d-4402-b152-d68fc407a885",
"type": "main",
"index": 0
}
]
]
},
"dca2ef6d-5179-46a4-b916-5f2bfcf79d1e": {
"main": [
[
{
"node": "5a9c11b3-a0d8-419f-a447-828ca7908f0a",
"type": "main",
"index": 0
}
]
]
},
"e493b67f-360c-464c-a8b7-dae374751da7": {
"main": [
[
{
"node": "0639f081-0402-4534-b448-d23e45032037",
"type": "main",
"index": 0
}
]
]
},
"362b5cd0-5253-4ffe-84dc-d1c286977b7d": {
"main": [
[
{
"node": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"type": "main",
"index": 4
}
]
]
},
"db8e8f18-f2d8-476f-ac83-b365aa67451c": {
"main": [
[
{
"node": "83cc9e0a-71cc-43a2-97d2-ecb92aca6fa0",
"type": "main",
"index": 0
}
]
]
},
"0639f081-0402-4534-b448-d23e45032037": {
"main": [
[
{
"node": "38f5414a-7e8b-4350-8c15-474d44453602",
"type": "main",
"index": 0
}
]
]
},
"336374fa-8e2d-4402-b152-d68fc407a885": {
"main": [
[
{
"node": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"type": "main",
"index": 3
}
]
]
},
"5a9c11b3-a0d8-419f-a447-828ca7908f0a": {
"main": [
[
{
"node": "9988898b-23ab-4b37-8bc2-76a97f96c669",
"type": "main",
"index": 0
}
]
]
},
"c3910d9b-81af-40c2-a0ef-e7953c265d9f": {
"main": [
[
{
"node": "efeefb3f-4856-4136-a230-af280b346468",
"type": "main",
"index": 0
}
]
]
},
"61ea58e5-8cf7-40fe-b67b-1f7faa81dcf3": {
"main": [
[]
]
},
"85b0946e-4df0-43e5-9615-020b326b85c0": {
"ai_languageModel": [
[
{
"node": "ef936c7c-c40d-450c-9dda-5cf55dac2027",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"5a58eb7e-1993-4a8e-9d66-53b33b3d11de": {
"ai_languageModel": [
[
{
"node": "fdb7ef7c-f900-4374-b65e-eb14f5c9f4a6",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"a6f8688e-95a7-4169-9224-682762a8372b": {
"ai_languageModel": [
[
{
"node": "0639f081-0402-4534-b448-d23e45032037",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"38f5414a-7e8b-4350-8c15-474d44453602": {
"main": [
[
{
"node": "90347ce0-1238-448d-abf2-96ecb228b8e0",
"type": "main",
"index": 0
}
]
]
},
"f4b95592-3803-4dca-a41d-71bd20746cb4": {
"main": [
[
{
"node": "f419cf55-ca78-4beb-b62d-910e1db9e841",
"type": "main",
"index": 0
}
]
]
},
"7e3d41de-6fdd-4b7d-8e56-2f967108dad2": {
"main": [
[
{
"node": "50c07304-8521-43f7-9e0c-16fe48ed90e2",
"type": "main",
"index": 0
}
],
[]
]
},
"23060783-5d2f-4a2e-89fc-3138f0c8d681": {
"main": [
[
{
"node": "6984c8c5-0f4c-4881-85fd-782b848ca5f6",
"type": "main",
"index": 0
}
],
[
{
"node": "f4b95592-3803-4dca-a41d-71bd20746cb4",
"type": "main",
"index": 0
}
]
]
},
"90347ce0-1238-448d-abf2-96ecb228b8e0": {
"main": [
[
{
"node": "dca2ef6d-5179-46a4-b916-5f2bfcf79d1e",
"type": "main",
"index": 0
}
]
]
},
"efeefb3f-4856-4136-a230-af280b346468": {
"main": [
[
{
"node": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"type": "main",
"index": 1
},
{
"node": "d4449512-70d3-4856-b5fc-606b7b505ff0",
"type": "main",
"index": 2
},
{
"node": "5cfef6a7-5f21-4493-89df-c699bf927116",
"type": "main",
"index": 0
}
]
]
},
"b20d69ab-97c5-4a2e-9926-77252b735ab3": {
"main": [
[
{
"node": "362b5cd0-5253-4ffe-84dc-d1c286977b7d",
"type": "main",
"index": 0
}
]
]
},
"a4149035-a9f4-4d19-ac57-49b5bac89ed6": {
"main": [
[
{
"node": "83cc9e0a-71cc-43a2-97d2-ecb92aca6fa0",
"type": "main",
"index": 0
}
],
[
{
"node": "2a729954-8812-473e-a0be-0c9399a4c454",
"type": "main",
"index": 0
}
]
]
},
"c8d706a3-3bad-4686-a712-350b49314935": {
"main": [
[
{
"node": "b20d69ab-97c5-4a2e-9926-77252b735ab3",
"type": "main",
"index": 0
}
]
]
},
"ef936c7c-c40d-450c-9dda-5cf55dac2027": {
"main": [
[
{
"node": "c8d706a3-3bad-4686-a712-350b49314935",
"type": "main",
"index": 0
}
]
]
},
"c8684458-4bb9-45ee-af72-adea5b174168": {
"main": [
[
{
"node": "da4da730-32f9-47e8-92a8-2ad2651376eb",
"type": "main",
"index": 0
}
]
]
},
"9988898b-23ab-4b37-8bc2-76a97f96c669": {
"main": [
[
{
"node": "ef936c7c-c40d-450c-9dda-5cf55dac2027",
"type": "main",
"index": 0
},
{
"node": "fdb7ef7c-f900-4374-b65e-eb14f5c9f4a6",
"type": "main",
"index": 0
}
]
]
},
"5cfef6a7-5f21-4493-89df-c699bf927116": {
"main": [
[
{
"node": "d1466c51-eb0b-4994-ac1a-e234821de281",
"type": "main",
"index": 0
}
]
]
},
"fdb7ef7c-f900-4374-b65e-eb14f5c9f4a6": {
"main": [
[
{
"node": "aa3ab2ba-e08b-49cf-ac57-3789107435c2",
"type": "main",
"index": 0
}
]
]
},
"9ae9a529-370b-4d2d-acb8-ad3e3f1d3913": {
"main": [
[
{
"node": "7e3d41de-6fdd-4b7d-8e56-2f967108dad2",
"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
KI-verfasste Pressemitteilungen und Materialien für HubSpot-Kontakte und SharePoint generieren
Erstelle zweisprachige Pressemitteilungen für HubSpot und SharePoint mit GPT-4o, KI-Bildern und -Videos
If
Set
Code
+
If
Set
Code
49 Nodesplemeo
Soziale Medien
AI-Powered Multi-Platform Social Media Content Factory with Dynamic System Prompts & GPT-4o
If
Set
Code
+
If
Set
Code
100 NodesAmit Mehta
Content-Erstellung
Automatische Instagram-Kommentare - Creator Center
Automatisches Kommentieren von Instagram-Posts mit GPT-4o, Phantombuster und SharePoint
If
Set
Code
+
If
Set
Code
39 Nodesplemeo
Soziale Medien
Automatische LinkedIn-Likes - Creator Center
Automatisches Liken von LinkedIn-Posts mit GPT-4o, Phantombuster und SharePoint
If
Set
Code
+
If
Set
Code
36 Nodesplemeo
Soziale Medien
WordPress-Blog-Automatisierung Professional Edition (Deep Research) v2.1 Markt
Automatisierung der Erstellung von SEO-optimierten Blogs mit GPT-4o, Perplexity AI und mehrsprachiger Unterstützung
If
Set
Xml
+
If
Set
Xml
125 NodesDaniel Ng
Content-Erstellung
LinkedIn Auto-Kommentare - Creator Hub
Automatisierte LinkedIn-Kommentierung mit GPT-4o und Phantombuster
If
Set
Code
+
If
Set
Code
39 Nodesplemeo
Soziale Medien
Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes47
Kategorie2
Node-Typen16
Autor
plemeo
@plemeoExterne Links
Auf n8n.io ansehen →
Diesen Workflow teilen