Publicaciones de LinkedIn automatizadas con aprobación de IA y Slack

Avanzado

Este es unAI, Marketingflujo de automatización del dominio deautomatización que contiene 32 nodos.Utiliza principalmente nodos como If, Set, Code, Limit, Slack, combinando tecnología de inteligencia artificial para lograr automatización inteligente. Publicaciones automatizadas en LinkedIn: generación por IA (GPT-4o) y aprobación por Slack

Requisitos previos
  • Bot Token de Slack o URL de Webhook
  • Punto final de HTTP Webhook (n8n generará automáticamente)
  • Pueden requerirse credenciales de autenticación para la API de destino
  • Credenciales de API de Google Sheets
  • Clave de API de OpenAI
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "YOUR_WORKFLOW_ID",
  "meta": {
    "instanceId": "YOUR_INSTANCE_ID",
    "templateCredsSetupCompleted": true
  },
  "name": "LinkedIn Post Automation with AI & Slack Approval",
  "tags": [],
  "nodes": [
    {
      "id": "workflow-overview-linkedin",
      "name": "Descripción general del flujo de trabajo",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1050,
        -450
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "sheets-trigger-note",
      "name": "Información del activador de Hojas de cálculo",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -750,
        -400
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "ai-generation-note",
      "name": "Generación por IA",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        130,
        -400
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "slack-approval-note",
      "name": "Aprobación en Slack",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        730,
        -380
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "webhook-handler-note",
      "name": "Manejador de Webhook",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -750,
        -800
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "image-upload-note",
      "name": "Proceso de carga de imágenes",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        950,
        -800
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "linkedin-publish-note",
      "name": "Publicación en LinkedIn",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1450,
        -780
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "status-update-note",
      "name": "Actualización de estado",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2110,
        -900
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0cd3e628-1720-49f7-9280-a1039d2c2ca9",
      "name": "Límite",
      "type": "n8n-nodes-base.limit",
      "notes": "Processes one item at a time to prevent API overload",
      "position": [
        -260,
        -180
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "c36d36d6-0035-49ac-a757-4598d56e574e",
      "name": "Analizador de salida estructurada",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        328,
        40
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "9f521172-07f4-4a17-b358-bd998e9a9d02",
      "name": "Modelo de chat OpenAI",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        208,
        40
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "09b0b22f-eb64-468f-85b0-1c9a0608631e",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "notes": "Receives approval responses - ensure URL is configured in Slack app",
      "position": [
        -700,
        -590
      ],
      "webhookId": "YOUR_WEBHOOK_ID",
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "4e2954d7-e4de-48bf-a974-5ec80c7b7b0c",
      "name": "Tema de publicación en Linkedin",
      "type": "n8n-nodes-base.googleSheetsTrigger",
      "notes": "Triggers every minute for new posts in your spreadsheet",
      "position": [
        -700,
        -180
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "47c4cdd0-48ef-4e41-996b-ed29811b092e",
      "name": "Validar estado",
      "type": "n8n-nodes-base.if",
      "notes": "Filters to process only 'Pending' items - prevents duplicates",
      "position": [
        -480,
        -180
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "908eee31-78eb-482c-b331-2d3467d56b0d",
      "name": "Creador de publicaciones en LinkedIn",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "notes": "Uses GPT-4 to generate LinkedIn content - customize prompt for your brand voice",
      "position": [
        180,
        -180
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "882d6e5c-a7f0-425f-a501-1f7179f8857b",
      "name": "Formatear contenido",
      "type": "n8n-nodes-base.code",
      "notes": "Formats content for Slack display - handles special characters and newlines",
      "position": [
        556,
        -180
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "31aea874-516c-47c7-9c5f-bde873faae4d",
      "name": "Aprobación en Slack",
      "type": "n8n-nodes-base.slack",
      "notes": "Sends for human review - edit the Slack user to change approver",
      "position": [
        780,
        -180
      ],
      "webhookId": "YOUR_SLACK_WEBHOOK_ID",
      "parameters": {},
      "notesInFlow": true,
      "typeVersion": 2.3
    },
    {
      "id": "8592224a-0370-48c3-b803-fe3653284545",
      "name": "Formatear respuesta",
      "type": "n8n-nodes-base.code",
      "notes": "Extracts edited content from Slack response",
      "position": [
        -260,
        -590
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "2c503653-e3b6-4229-a733-25fa666ba85a",
      "name": "Validar respuesta",
      "type": "n8n-nodes-base.if",
      "notes": "Ensures response contains content before proceeding",
      "position": [
        -40,
        -590
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "be68592f-f6a8-4698-8343-58d439eed3ac",
      "name": "Establecer mensaje final",
      "type": "n8n-nodes-base.set",
      "notes": "Prepares approved content for publishing",
      "position": [
        180,
        -590
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "4ec34acf-1704-4fd7-b14d-680409acbeda",
      "name": "Detalles de usuario en Linkedin",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Fetches LinkedIn user ID for post attribution",
      "position": [
        400,
        -580
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "78293261-7fbd-4757-8353-c2275ba2089a",
      "name": "Publicación en Linkedin",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Publishes to your profile - update with your LinkedIn credentials",
      "position": [
        1500,
        -590
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "54ee84f1-42e2-4f25-96a4-958b27f798f4",
      "name": "Obtener ID de grupo",
      "type": "n8n-nodes-base.googleSheets",
      "notes": "Retrieves LinkedIn group IDs from Groups sheet",
      "position": [
        1720,
        -590
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "4e3e1fc5-a0ae-469f-8399-79b9bf98ff41",
      "name": "Seleccionar uno por uno",
      "type": "n8n-nodes-base.splitInBatches",
      "notes": "Processes groups one at a time to avoid rate limits",
      "position": [
        1940,
        -590
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "7309d6c0-bfec-4d06-b3c3-5b05ccab6df3",
      "name": "Publicar en grupos de Linkedin",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Posts to multiple groups - add group IDs in Groups sheet",
      "onError": "continueRegularOutput",
      "position": [
        2160,
        -540
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "63b25ac7-e5dc-4836-96cf-5767b57c7784",
      "name": "Actualizar estado",
      "type": "n8n-nodes-base.googleSheets",
      "notes": "Marks as 'Posted' to prevent reprocessing",
      "position": [
        2160,
        -740
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "348ca4b6-fbb0-4a07-9c3d-9a581b95c7fe",
      "name": "Registrar imagen",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Initiates LinkedIn media upload - requires valid image URL from sheet",
      "position": [
        620,
        -580
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "2dfdfc17-78f7-488b-82f2-cb229488062f",
      "name": "Cargar datos de imagen",
      "type": "n8n-nodes-base.set",
      "notes": "Extracts upload URL and asset ID from LinkedIn response",
      "position": [
        840,
        -580
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "a68a5ba8-8913-455f-9893-12013322e9c0",
      "name": "Obtener binario de imagen",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Downloads image from URL specified in spreadsheet",
      "position": [
        1060,
        -590
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "37cfc754-d66f-43f8-b881-4b5f0e927fa2",
      "name": "Subir imagen",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Uploads image binary to LinkedIn servers",
      "position": [
        1280,
        -590
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "c67c5ae9-c0c0-4400-a5ed-c2f96842e24d",
      "name": "Editar campos",
      "type": "n8n-nodes-base.set",
      "notes": "Extracts post ID for tracking through workflow",
      "position": [
        -40,
        -180
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "8202c5f6-aa24-44d9-989e-b67d0c481e17",
      "name": "Establecer temas e imágenes para procesamiento",
      "type": "n8n-nodes-base.code",
      "notes": "Extracts post ID and image URL from Slack approval response",
      "position": [
        -480,
        -600
      ],
      "parameters": {},
      "typeVersion": 2
    }
  ],
  "active": false,
  "pinData": {
    "Webhook": [
      {
        "json": {
          "body": {
            "payload": "{'type':'block_actions','user':{'id':'USER_ID','username':'username','name':'user.name','team_id':'TEAM_ID'},'api_app_id':'APP_ID','token':'TOKEN','container':{'type':'message','message_ts':'1234567890.123456','channel_id':'CHANNEL_ID','is_ephemeral':false},'trigger_id':'1234567890123.1234567890123.abcdef1234567890abcdef1234567890','team':{'id':'TEAM_ID','domain':'team-domain'},'enterprise':null,'is_enterprise_install':false,'channel':{'id':'CHANNEL_ID','name':'directmessage'},'message':{'user':'BOT_USER_ID','type':'message','ts':'1234567890.123456','bot_id':'BOT_ID','app_id':'APP_ID','text':'*Content Review Request*\\nPlease review the following content: :mag: Sample LinkedIn post content here...\\n\\n#SampleHashtag #LinkedInPost #Automation','team':'TEAM_ID','blocks':[{'type':'section','block_id':'BLOCK_1','text':{'type':'mrkdwn','text':'*Content Review Request*\\nPlease review the following content:','verbatim':false}},{'type':'section','block_id':'BLOCK_2','text':{'type':'mrkdwn','text':':mag: Sample LinkedIn post content here...\\n\\n#SampleHashtag #LinkedInPost #Automation','verbatim':false}},{'type':'input','block_id':'INPUT_BLOCK','label':{'type':'plain_text','text':'Edit content if needed:','emoji':true},'optional':false,'dispatch_action':false,'element':{'type':'plain_text_input','action_id':'content_input','initial_value':'Sample LinkedIn post content here...\\n\\n#SampleHashtag #LinkedInPost #Automation','multiline':true,'dispatch_action_config':{'trigger_actions_on':['on_enter_pressed']}}},{'type':'actions','block_id':'ACTION_BLOCK','elements':[{'type':'button','action_id':'approve_button','text':{'type':'plain_text','text':'Approve As Is','emoji':true},'style':'primary','value':'approve'},{'type':'button','action_id':'edit_button','text':{'type':'plain_text','text':'Submit Edited Version','emoji':true},'style':'danger','value':'edit'}]},{'type':'section','block_id':'FOOTER_BLOCK','text':{'type':'mrkdwn','text':'_Automated with this n8n workflow_','verbatim':false}}]},'state':{'values':{'INPUT_BLOCK':{'content_input':{'type':'plain_text_input','value':'Sample LinkedIn post content here...\\n\\n#SampleHashtag #LinkedInPost #Automation'}}}},'response_url':'https://hooks.slack.com/actions/TEAM_ID/ACTION_ID/TOKEN','actions':[{'action_id':'approve_button','block_id':'ACTION_BLOCK','text':{'type':'plain_text','text':'Approve As Is','emoji':true},'value':'approve','style':'primary','type':'button','action_ts':'1234567890.123456'}]}"
          },
          "query": {},
          "params": {},
          "headers": {
            "host": "YOUR_N8N_HOST",
            "accept": "application/json,*/*",
            "cf-ray": "CF_RAY_ID",
            "cdn-loop": "cloudflare; loops=1; subreqs=1",
            "cf-ew-via": "15",
            "cf-worker": "n8n.cloud",
            "x-real-ip": "REAL_IP",
            "cf-visitor": "{\"scheme\":\"https\"}",
            "user-agent": "Slackbot 1.0 (+https://api.slack.com/robots)",
            "cf-ipcountry": "US",
            "content-type": "application/x-www-form-urlencoded",
            "x-is-trusted": "yes",
            "content-length": "12089",
            "accept-encoding": "gzip, br",
            "x-forwarded-for": "IP_Address_1, IP_Address_2",
            "cf-connecting-ip": "54.224.31.149",
            "x-forwarded-host": "N8N_HOST",
            "x-forwarded-port": "443",
            "x-forwarded-proto": "https",
            "x-slack-signature": "SIGNATURE",
            "x-forwarded-server": "SERVER_NAME",
            "x-slack-request-timestamp": "TIMESTAMP"
          },
          "webhookUrl": "WEBHOOK_URL",
          "executionMode": "production"
        }
      }
    ]
  },
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "YOUR_VERSION_ID",
  "connections": {
    "0cd3e628-1720-49f7-9280-a1039d2c2ca9": {
      "main": [
        [
          {
            "node": "c67c5ae9-c0c0-4400-a5ed-c2f96842e24d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "09b0b22f-eb64-468f-85b0-1c9a0608631e": {
      "main": [
        [
          {
            "node": "8202c5f6-aa24-44d9-989e-b67d0c481e17",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c67c5ae9-c0c0-4400-a5ed-c2f96842e24d": {
      "main": [
        [
          {
            "node": "908eee31-78eb-482c-b331-2d3467d56b0d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4e3e1fc5-a0ae-469f-8399-79b9bf98ff41": {
      "main": [
        [
          {
            "node": "63b25ac7-e5dc-4836-96cf-5767b57c7784",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "7309d6c0-bfec-4d06-b3c3-5b05ccab6df3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "54ee84f1-42e2-4f25-96a4-958b27f798f4": {
      "main": [
        [
          {
            "node": "4e3e1fc5-a0ae-469f-8399-79b9bf98ff41",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "37cfc754-d66f-43f8-b881-4b5f0e927fa2": {
      "main": [
        [
          {
            "node": "78293261-7fbd-4757-8353-c2275ba2089a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "78293261-7fbd-4757-8353-c2275ba2089a": {
      "main": [
        [
          {
            "node": "54ee84f1-42e2-4f25-96a4-958b27f798f4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "63b25ac7-e5dc-4836-96cf-5767b57c7784": {
      "main": [
        []
      ]
    },
    "882d6e5c-a7f0-425f-a501-1f7179f8857b": {
      "main": [
        [
          {
            "node": "31aea874-516c-47c7-9c5f-bde873faae4d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "348ca4b6-fbb0-4a07-9c3d-9a581b95c7fe": {
      "main": [
        [
          {
            "node": "2dfdfc17-78f7-488b-82f2-cb229488062f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8592224a-0370-48c3-b803-fe3653284545": {
      "main": [
        [
          {
            "node": "2c503653-e3b6-4229-a733-25fa666ba85a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "47c4cdd0-48ef-4e41-996b-ed29811b092e": {
      "main": [
        [
          {
            "node": "0cd3e628-1720-49f7-9280-a1039d2c2ca9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a68a5ba8-8913-455f-9893-12013322e9c0": {
      "main": [
        [
          {
            "node": "37cfc754-d66f-43f8-b881-4b5f0e927fa2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "31aea874-516c-47c7-9c5f-bde873faae4d": {
      "main": [
        []
      ]
    },
    "9f521172-07f4-4a17-b358-bd998e9a9d02": {
      "ai_languageModel": [
        [
          {
            "node": "908eee31-78eb-482c-b331-2d3467d56b0d",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "be68592f-f6a8-4698-8343-58d439eed3ac": {
      "main": [
        [
          {
            "node": "4ec34acf-1704-4fd7-b14d-680409acbeda",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2dfdfc17-78f7-488b-82f2-cb229488062f": {
      "main": [
        [
          {
            "node": "a68a5ba8-8913-455f-9893-12013322e9c0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c503653-e3b6-4229-a733-25fa666ba85a": {
      "main": [
        [
          {
            "node": "be68592f-f6a8-4698-8343-58d439eed3ac",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4e2954d7-e4de-48bf-a974-5ec80c7b7b0c": {
      "main": [
        [
          {
            "node": "47c4cdd0-48ef-4e41-996b-ed29811b092e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "908eee31-78eb-482c-b331-2d3467d56b0d": {
      "main": [
        [
          {
            "node": "882d6e5c-a7f0-425f-a501-1f7179f8857b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4ec34acf-1704-4fd7-b14d-680409acbeda": {
      "main": [
        [
          {
            "node": "348ca4b6-fbb0-4a07-9c3d-9a581b95c7fe",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7309d6c0-bfec-4d06-b3c3-5b05ccab6df3": {
      "main": [
        [
          {
            "node": "4e3e1fc5-a0ae-469f-8399-79b9bf98ff41",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c36d36d6-0035-49ac-a757-4598d56e574e": {
      "ai_outputParser": [
        [
          {
            "node": "908eee31-78eb-482c-b331-2d3467d56b0d",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "8202c5f6-aa24-44d9-989e-b67d0c481e17": {
      "main": [
        [
          {
            "node": "8592224a-0370-48c3-b803-fe3653284545",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿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?

Avanzado - Inteligencia Artificial, Marketing

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

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos32
Categoría2
Tipos de nodos14
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Autor
Amit Mehta

Amit Mehta

@amitswba

I'm a workflow automation expert with 15+ years in IT industry. I build smart, scalable n8n workflows for AI automation, marketing, CRM, and SaaS integrations. My focus is on simplifying business processes with tools like OpenAI, WhatsApp, Gmail, and Airtable. I help teams and solopreneurs automate smarter, reduce manual tasks, and grow faster—one workflow at a time.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34