Generador y programador de contenido para redes sociales impulsado por IA
Este es unContent Creation, Multimodal AIflujo de automatización del dominio deautomatización que contiene 14 nodos.Utiliza principalmente nodos como Set, Code, Webhook, ScheduleTrigger, OpenAi. Usar GPT-4 y un planificador automático para generar contenido para redes sociales en múltiples plataformas
- •Punto final de HTTP Webhook (n8n generará automáticamente)
- •Clave de API de OpenAI
Nodos utilizados (14)
Categoría
{
"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": "Nota adhesiva",
"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": "Nota adhesiva1",
"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": "Nota adhesiva2",
"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": "Nota adhesiva3",
"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": "Nota adhesiva4",
"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": "Nota adhesiva5",
"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": "Solicitud de Contenido 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": "Procesar Entrada",
"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": "Generar Contenido",
"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": "Formatear Respuesta",
"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": "Enviar Respuesta",
"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": "Programación Diaria de Contenido",
"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": "Preparar Tema Diario",
"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": "Nota adhesiva6",
"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
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Intermedio - Creación de contenido, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Jah coozi
@jahcooziCompartir este flujo de trabajo