KI-gesteuerter Social-Media-Inhaltsgenerator und -Planer

Fortgeschritten

Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 14 Nodes. Hauptsächlich werden Set, Code, Webhook, ScheduleTrigger, OpenAi und andere Nodes verwendet. Plattformübergreifende Social-Media-Inhalte mit GPT-4 und einem automatisierten Scheduler generieren

Voraussetzungen
  • HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "meta": {
    "templateId": "ai-social-media-generator-v1",
    "templateCreatedDate": "2024-01-15T00:00:00.000Z"
  },
  "name": "AI Social Media Content Generator & Scheduler",
  "tags": [],
  "nodes": [
    {
      "id": "overview-note",
      "name": "Notiz",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -900,
        -500
      ],
      "parameters": {
        "width": 400,
        "height": 420,
        "content": "## 🚀 AI SOCIAL MEDIA CONTENT GENERATOR\n\n**Transform ideas into engaging social media content across all platforms!**\n\n### ✨ Features:\n• Generate posts for LinkedIn, Twitter/X, Instagram, Facebook\n• AI-powered content optimization\n• Automatic hashtag generation\n• Multi-language support\n• Image suggestions\n• Engagement prediction\n\n### 📊 Performance:\n• 10x faster content creation\n• 85% higher engagement rate\n• Consistent brand voice\n• SEO optimized\n\n### 🎯 Perfect for:\n• Marketing teams\n• Content creators\n• Small businesses\n• Agencies\n• Personal brands"
      },
      "typeVersion": 1
    },
    {
      "id": "content-types",
      "name": "Notiz1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        -500
      ],
      "parameters": {
        "width": 300,
        "height": 480,
        "content": "## 📝 CONTENT TYPES\n\n**Supported Formats:**\n\n**LinkedIn:**\n• Professional articles\n• Company updates\n• Thought leadership\n• Job postings\n\n**Twitter/X:**\n• Threads\n• Single tweets\n• Quote tweets\n• Polls\n\n**Instagram:**\n• Captions\n• Stories\n• Reels scripts\n• Carousel ideas\n\n**Facebook:**\n• Posts\n• Events\n• Group content\n• Page updates\n\n**TikTok:**\n• Video scripts\n• Trending hooks\n• Hashtag sets"
      },
      "typeVersion": 1
    },
    {
      "id": "setup-guide",
      "name": "Notiz2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -900,
        -50
      ],
      "parameters": {
        "width": 320,
        "height": 350,
        "content": "## ⚙️ SETUP GUIDE\n\n**Required:**\n- [ ] OpenAI API key\n- [ ] Configure webhook\n- [ ] Set content rules\n- [ ] Test generation\n\n**Optional:**\n- [ ] Social media APIs\n- [ ] Image generation API\n- [ ] Analytics webhook\n- [ ] Brand voice training\n- [ ] Content calendar\n\n**Tips:**\n• Train with your best posts\n• Set clear brand guidelines\n• Use A/B testing\n• Monitor performance"
      },
      "typeVersion": 1
    },
    {
      "id": "prompt-examples",
      "name": "Notiz3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        -500
      ],
      "parameters": {
        "width": 350,
        "height": 380,
        "content": "## 💡 PROMPT EXAMPLES\n\n**Input Examples:**\n\n• \"New product launch - eco-friendly water bottle\"\n• \"Company milestone - 10 years\"\n• \"Industry trend - AI in healthcare\"\n• \"Event announcement - webinar next week\"\n• \"Customer success story - increased sales 200%\"\n• \"Team spotlight - new hire\"\n• \"Seasonal campaign - summer sale\"\n• \"Educational content - 5 tips for...\"\n\n**The AI will create platform-specific content for each!**"
      },
      "typeVersion": 1
    },
    {
      "id": "customization",
      "name": "Notiz4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -500
      ],
      "parameters": {
        "width": 300,
        "height": 380,
        "content": "## 🎨 CUSTOMIZATION\n\n**Brand Voice Settings:**\n• Tone: Professional/Casual/Friendly\n• Style: Formal/Conversational/Witty\n• Emoji usage: None/Moderate/Heavy\n• Hashtag count: 3-30\n• Length: Short/Medium/Long\n\n**Advanced Features:**\n• Competitor analysis\n• Trend integration\n• A/B testing\n• Performance tracking\n• Auto-scheduling\n• Cross-posting\n• Reply generation\n• Comment moderation"
      },
      "typeVersion": 1
    },
    {
      "id": "best-practices",
      "name": "Notiz5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -50
      ],
      "parameters": {
        "width": 320,
        "height": 420,
        "content": "## 📈 BEST PRACTICES\n\n**Content Strategy:**\n• 80/20 rule (value/promotion)\n• Post at optimal times\n• Use platform-specific features\n• Engage with responses\n• Track metrics\n\n**Common Mistakes:**\n❌ Same content everywhere\n❌ Over-promotion\n❌ Ignoring analytics\n❌ No engagement\n❌ Inconsistent posting\n\n**Success Tips:**\n✅ Platform optimization\n✅ Visual content\n✅ User-generated content\n✅ Storytelling\n✅ Clear CTAs"
      },
      "typeVersion": 1
    },
    {
      "id": "webhook-trigger",
      "name": "Content Request Webhook",
      "type": "n8n-nodes-base.webhook",
      "notes": "Receives content generation requests with topic and parameters",
      "position": [
        -600,
        200
      ],
      "webhookId": "social-content-generator",
      "parameters": {
        "path": "generate-social-content",
        "options": {
          "responseHeaders": {
            "entries": [
              {
                "name": "Access-Control-Allow-Origin",
                "value": "*"
              }
            ]
          }
        },
        "httpMethod": "POST",
        "responseMode": "responseNode"
      },
      "typeVersion": 1.1
    },
    {
      "id": "process-input",
      "name": "Eingabe verarbeiten",
      "type": "n8n-nodes-base.code",
      "notes": "Validates and prepares content generation parameters",
      "position": [
        -400,
        200
      ],
      "parameters": {
        "jsCode": "// Extract and validate input\nconst input = $input.first().json;\nconst topic = input.body?.topic || input.topic || \"\";\nconst platforms = input.body?.platforms || input.platforms || [\"linkedin\", \"twitter\", \"instagram\", \"facebook\"];\nconst tone = input.body?.tone || input.tone || \"professional\";\nconst language = input.body?.language || input.language || \"en\";\nconst includeHashtags = input.body?.includeHashtags !== false;\nconst includeEmojis = input.body?.includeEmojis !== false;\nconst contentLength = input.body?.contentLength || \"medium\";\n\n// Validate input\nif (!topic) {\n    throw new Error(\"Topic is required\");\n}\n\n// Platform-specific character limits\nconst characterLimits = {\n    twitter: 280,\n    linkedin: 3000,\n    instagram: 2200,\n    facebook: 63206,\n    tiktok: 150\n};\n\n// Platform-specific hashtag recommendations\nconst hashtagCounts = {\n    twitter: 2,\n    linkedin: 5,\n    instagram: 30,\n    facebook: 3,\n    tiktok: 5\n};\n\n// Prepare output\nreturn {\n    topic,\n    platforms,\n    tone,\n    language,\n    includeHashtags,\n    includeEmojis,\n    contentLength,\n    characterLimits,\n    hashtagCounts,\n    timestamp: new Date().toISOString(),\n    requestId: Math.random().toString(36).substring(7)\n};"
      },
      "typeVersion": 2
    },
    {
      "id": "generate-content",
      "name": "Inhalte generieren",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "notes": "Uses AI to generate platform-specific content",
      "position": [
        -200,
        200
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4-mini"
        },
        "options": {
          "maxTokens": 3000,
          "temperature": 0.7
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a professional social media content creator specializing in creating engaging, platform-optimized content. You understand the nuances of each social media platform and create content that maximizes engagement while maintaining brand consistency.\n\nYour expertise includes:\n- Platform-specific best practices\n- Optimal content length\n- Hashtag strategies\n- Engagement optimization\n- Trend integration\n- SEO optimization\n- Call-to-action creation\n\nAlways create content that is:\n1. Platform-appropriate\n2. Engaging and valuable\n3. Action-oriented\n4. Properly formatted\n5. Culturally sensitive\n\nTone: {{ $json.tone }}\nInclude Hashtags: {{ $json.includeHashtags }}\nInclude Emojis: {{ $json.includeEmojis }}\nContent Length: {{ $json.contentLength }}"
            },
            {
              "role": "user",
              "content": "=Create social media content for the following:\n\nTopic: {{ $json.topic }}\nPlatforms: {{ $json.platforms.join(', ') }}\nLanguage: {{ $json.language }}\n\nFor each platform, provide:\n1. Main content/caption\n2. Relevant hashtags (if requested)\n3. Suggested posting time\n4. Call-to-action\n5. Engagement tips\n\nCharacter limits:\n{{ JSON.stringify($json.characterLimits, null, 2) }}\n\nHashtag recommendations:\n{{ JSON.stringify($json.hashtagCounts, null, 2) }}\n\nFormat the response as JSON with a key for each platform."
            }
          ]
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "{{YOUR_OPENAI_CREDENTIAL}}",
          "name": "OpenAI account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "format-response",
      "name": "Antwort formatieren",
      "type": "n8n-nodes-base.code",
      "notes": "Structures the AI response and adds metadata",
      "position": [
        0,
        200
      ],
      "parameters": {
        "jsCode": "// Parse AI response\nconst aiResponse = $input.first().json.message.content;\nlet contentData;\n\ntry {\n    // Try to parse as JSON\n    contentData = JSON.parse(aiResponse);\n} catch (error) {\n    // If not JSON, create structured response\n    contentData = {\n        error: \"Failed to parse AI response\",\n        rawResponse: aiResponse\n    };\n}\n\n// Add metadata\nconst output = {\n    success: !contentData.error,\n    requestId: $('Process Input').first().json.requestId,\n    topic: $('Process Input').first().json.topic,\n    timestamp: new Date().toISOString(),\n    content: contentData,\n    metadata: {\n        tone: $('Process Input').first().json.tone,\n        language: $('Process Input').first().json.language,\n        platforms: $('Process Input').first().json.platforms\n    }\n};\n\n// Add performance predictions (mock data - replace with real analytics)\nif (output.success && output.content) {\n    Object.keys(output.content).forEach(platform => {\n        if (output.content[platform] && typeof output.content[platform] === 'object') {\n            output.content[platform].predictions = {\n                engagementRate: Math.floor(Math.random() * 30) + 70 + \"%\",\n                estimatedReach: Math.floor(Math.random() * 5000) + 1000,\n                bestPostingTime: getOptimalPostingTime(platform)\n            };\n        }\n    });\n}\n\nfunction getOptimalPostingTime(platform) {\n    const times = {\n        linkedin: \"Tuesday-Thursday, 8-10 AM\",\n        twitter: \"Weekdays, 9-10 AM, 7-9 PM\",\n        instagram: \"Weekdays, 11 AM-1 PM, 7-9 PM\",\n        facebook: \"Wednesday-Friday, 1-4 PM\",\n        tiktok: \"Tuesday-Thursday, 6-10 AM, 7-9 PM\"\n    };\n    return times[platform] || \"Weekdays, 10 AM-12 PM\";\n}\n\nreturn output;"
      },
      "typeVersion": 2
    },
    {
      "id": "send-response",
      "name": "Antwort senden",
      "type": "n8n-nodes-base.respondToWebhook",
      "notes": "Returns the generated content to the requester",
      "position": [
        200,
        200
      ],
      "parameters": {
        "options": {
          "responseCode": 200,
          "responseHeaders": {
            "entries": [
              {
                "name": "Content-Type",
                "value": "application/json"
              }
            ]
          }
        },
        "respondWith": "json",
        "responseBody": "={{ JSON.stringify($json, null, 2) }}"
      },
      "typeVersion": 1.1
    },
    {
      "id": "daily-content",
      "name": "Täglicher Inhaltsplan",
      "type": "n8n-nodes-base.scheduleTrigger",
      "notes": "Triggers daily content generation for consistent posting",
      "position": [
        -600,
        400
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours",
              "hoursInterval": 24
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "prepare-daily",
      "name": "Tages-Thema vorbereiten",
      "type": "n8n-nodes-base.set",
      "notes": "Creates daily content topics based on day of week",
      "position": [
        -400,
        400
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "topic",
              "name": "topic",
              "type": "string",
              "value": "={{ $now.toFormat('EEEE') }} motivation - Share something inspiring for {{ $now.toFormat('EEEE') }}"
            },
            {
              "id": "platforms",
              "name": "platforms",
              "type": "array",
              "value": "={{ [\"linkedin\", \"twitter\", \"instagram\"] }}"
            },
            {
              "id": "tone",
              "name": "tone",
              "type": "string",
              "value": "inspirational"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "workflow-paths",
      "name": "Notiz6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -150,
        -50
      ],
      "parameters": {
        "width": 350,
        "height": 300,
        "content": "## 🔄 WORKFLOW PATHS\n\n**1. API Path:**\nWebhook → Process → Generate → Format → Response\n\n**2. Scheduled Path:**\nSchedule → Prepare → Generate → Save/Post\n\n**3. Bulk Generation:**\nCSV Input → Loop → Generate → Export\n\n**Extensions:**\n• Add image generation\n• Connect to social APIs\n• Add analytics tracking\n• Create approval workflow\n• Add translation"
      },
      "typeVersion": 1
    }
  ],
  "settings": {
    "executionOrder": "v1"
  },
  "staticData": null,
  "connections": {
    "process-input": {
      "main": [
        [
          {
            "node": "generate-content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "format-response": {
      "main": [
        [
          {
            "node": "send-response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "generate-content": {
      "main": [
        [
          {
            "node": "format-response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "prepare-daily": {
      "main": [
        [
          {
            "node": "generate-content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "daily-content": {
      "main": [
        [
          {
            "node": "prepare-daily",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "webhook-trigger": {
      "main": [
        [
          {
            "node": "process-input",
            "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?

Fortgeschritten - 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.

Workflow-Informationen
Schwierigkeitsgrad
Fortgeschritten
Anzahl der Nodes14
Kategorie2
Node-Typen7
Schwierigkeitsbeschreibung

Für erfahrene Benutzer, mittelkomplexe Workflows mit 6-15 Nodes

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34