Centre d'intégration Slack N8N pour les bots

Intermédiaire

Ceci est unEngineering, Building Blocksworkflow d'automatisation du domainecontenant 10 nœuds.Utilise principalement des nœuds comme Slack, Webhook, Function. Système interactif d'approbation Slack et de soumission de données basé sur Webhook

Prérequis
  • Token Bot Slack ou URL Webhook
  • Point de terminaison HTTP Webhook (généré automatiquement par n8n)

Nœuds utilisés (10)

Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "5rr11oY3PWtqx8az",
  "meta": {
    "instanceId": "c62c01f3e843893075a10f252ec7d6d69e5ab593af019f50055d506cb3081b99",
    "templateCredsSetupCompleted": true
  },
  "name": "Slack Bot N8N Integration Hub",
  "tags": [
    {
      "id": "XuoVybTXeUXuim6G",
      "name": "✅ Live",
      "createdAt": "2025-06-08T07:59:43.586Z",
      "updatedAt": "2025-06-08T07:59:43.586Z"
    },
    {
      "id": "RiQR5FfzNZyblqRY",
      "name": "🛠️ Utility",
      "createdAt": "2025-06-08T08:02:50.794Z",
      "updatedAt": "2025-06-08T08:02:50.794Z"
    },
    {
      "id": "TEMBBqocz4kZADTv",
      "name": "📤 Submitted Workflows",
      "createdAt": "2025-06-08T07:38:04.084Z",
      "updatedAt": "2025-06-08T07:38:04.084Z"
    }
  ],
  "nodes": [
    {
      "id": "b62c6302-387e-4ef3-af4c-92c87fdfef1b",
      "name": "n8n Données Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -140,
        -360
      ],
      "webhookId": "874768ff-6631-42a8-8c49-25b63ead3fec",
      "parameters": {
        "path": "874768ff-6631-42a8-8c49-25b63ead3fec",
        "options": {},
        "httpMethod": "POST",
        "authentication": "basicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "pmJaCcMGEkPDYowB",
          "name": "Basic Auth Webhook credential"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "6e22fc14-5eb0-4dab-944f-e527b10292a2",
      "name": "Slack - Accusé réception des données",
      "type": "n8n-nodes-base.slack",
      "position": [
        80,
        -360
      ],
      "webhookId": "16b35492-6886-4319-ade7-eca8ef1a141b",
      "parameters": {
        "text": "=Data Input 📥 : {{$json.body.data || $json.data || 'No data provided'}}\n\n✅ Data received and processed successfully! Your automation request has been submitted.",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "A12B1C1DEFG"
        },
        "otherOptions": {}
      },
      "credentials": {
        "slackApi": {
          "id": "i1yhHILyYn4V6kjy",
          "name": "Slack account"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "48d837e7-626e-472b-b528-8b75ad2d86a5",
      "name": "n8n Bouton Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -140,
        -80
      ],
      "webhookId": "fa872cfc-abe3-481d-ab7c-74f78d83a070",
      "parameters": {
        "path": "fa872cfc-abe3-481d-ab7c-74f78d83a070",
        "options": {},
        "httpMethod": "POST",
        "authentication": "basicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "pmJaCcMGEkPDYowB",
          "name": "Basic Auth Webhook credential"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "16390c39-acbd-437a-ae90-be702e67bed6",
      "name": "Traiter l'action du bouton",
      "type": "n8n-nodes-base.function",
      "position": [
        80,
        -80
      ],
      "parameters": {
        "functionCode": "// Process approval/rejection action\nconst webhookData = items[0].json;\n\n// Extract data from the webhook payload\nconst body = webhookData.body || webhookData;\nconst action = body.action;\nconst user = body.user || {};\nconst timestamp = body.timestamp || Date.now();\n\n// Create response based on action\nlet message = '';\nlet emoji = '';\nlet status = '';\n\nconst userDisplayName = user.name || user.id || 'Unknown User';\n\nif (action === 'approve') {\n  emoji = '✅';\n  status = 'APPROVED';\n  message = `${emoji} *Request ${status}*\\n\\n` +\n           `👤 *Approved by:* ${userDisplayName}\\n` +\n           `⏰ *Time:* ${new Date(timestamp).toLocaleString()}\\n` +\n           `🎯 *Action:* Request has been processed successfully and approved for execution.\\n` +\n           `📋 *Next Steps:* The automation workflow will proceed with the approved action.`;\n} else if (action === 'reject') {\n  emoji = '❌';\n  status = 'REJECTED';\n  message = `${emoji} *Request ${status}*\\n\\n` +\n           `👤 *Rejected by:* ${userDisplayName}\\n` +\n           `⏰ *Time:* ${new Date(timestamp).toLocaleString()}\\n` +\n           `🚫 *Action:* Request has been rejected and will not be processed.\\n` +\n           `📋 *Next Steps:* No further action will be taken for this request.`;\n} else {\n  emoji = '⚠️';\n  status = 'UNKNOWN';\n  message = `${emoji} *Unknown Action Received*\\n\\n` +\n           `👤 *User:* ${userDisplayName}\\n` +\n           `⏰ *Time:* ${new Date(timestamp).toLocaleString()}\\n` +\n           `❓ *Action:* ${action || 'undefined'}\\n` +\n           `📋 *Status:* Unable to process this action type.`;\n}\n\n// Return processed data\nreturn [{\n  json: {\n    ...webhookData,\n    processedMessage: message,\n    emoji: emoji,\n    status: status,\n    processedAt: new Date().toISOString()\n  }\n}];\n"
      },
      "typeVersion": 1
    },
    {
      "id": "bbb48629-5773-42d6-a3f7-10f87fbb439c",
      "name": "Slack - Accusé réception du bouton",
      "type": "n8n-nodes-base.slack",
      "position": [
        300,
        -80
      ],
      "webhookId": "16b35492-6886-4319-ade7-eca8ef1a141b",
      "parameters": {
        "text": "={{$json.processedMessage}}",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "A12B1C1DEFG"
        },
        "otherOptions": {}
      },
      "credentials": {
        "slackApi": {
          "id": "i1yhHILyYn4V6kjy",
          "name": "Slack account"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "63a966d9-4eab-4736-9cac-74f79f1f680e",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -240,
        -460
      ],
      "parameters": {
        "width": 760,
        "height": 280,
        "content": "## DATA_WEBHOOK "
      },
      "typeVersion": 1
    },
    {
      "id": "82e8b699-3e70-4ffe-8f18-e32d15b3fc67",
      "name": "Note adhésive 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -240,
        -160
      ],
      "parameters": {
        "color": 4,
        "width": 760,
        "height": 280,
        "content": "## BUTTON_WEBHOOK"
      },
      "typeVersion": 1
    },
    {
      "id": "81cd3810-cc40-436c-b3a6-2c651eccf014",
      "name": "Note adhésive 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        -460
      ],
      "parameters": {
        "width": 380,
        "height": 240,
        "content": "🚀 SLACK BOT N8N INTEGRATION HUB\n\n📌 Purpose: Complete Slack automation workflow\n🔗 Handles: Data submission + Approval workflows\n⚡ Features: Real-time responses, dual webhooks\n\n🎯 Use Cases:\n• Employee approval requests\n• Data collection & processing\n• Interactive team workflows\n• Automated decision routing"
      },
      "typeVersion": 1
    },
    {
      "id": "1aff3893-1619-43b2-9c89-37e086189716",
      "name": "Note adhésive 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        -200
      ],
      "parameters": {
        "width": 380,
        "height": 200,
        "content": "🛠️ QUICK SETUP GUIDE\n\n1️⃣ Configure webhook URLs in Slack bot\n2️⃣ Set Slack channel ID in response nodes\n3️⃣ Update Slack credentials\n4️⃣ Test with /automation command\n\n🔐 Optional: Enable Basic Auth for security\n📖 Full docs: https://github.com/iam-niranjan/slack-n8n-integration-hub"
      },
      "typeVersion": 1
    },
    {
      "id": "c82d2e8a-34f2-4699-a1b0-c605797390e4",
      "name": "Note adhésive 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        20
      ],
      "parameters": {
        "width": 380,
        "height": 260,
        "content": "📂 COMPLETE SOURCE CODE\n\n🌟 GitHub: https://github.com/iam-niranjan/slack-n8n-integration-hub\n\n📦 Includes:\n✅ Slack Bot source code\n✅ Environment setup guide\n✅ Authentication examples\n✅ Troubleshooting docs\n\n⭐ Star the repo if helpful!"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "fef3bea8-23c9-4266-8a10-0aa072e25a74",
  "connections": {
    "b62c6302-387e-4ef3-af4c-92c87fdfef1b": {
      "main": [
        [
          {
            "node": "6e22fc14-5eb0-4dab-944f-e527b10292a2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "48d837e7-626e-472b-b528-8b75ad2d86a5": {
      "main": [
        [
          {
            "node": "16390c39-acbd-437a-ae90-be702e67bed6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "16390c39-acbd-437a-ae90-be702e67bed6": {
      "main": [
        [
          {
            "node": "bbb48629-5773-42d6-a3f7-10f87fbb439c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Intermédiaire - Ingénierie, Blocs de construction

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds10
Catégorie2
Types de nœuds4
Description de la difficulté

Adapté aux utilisateurs expérimentés, avec des workflows de complexité moyenne contenant 6-15 nœuds

Auteur
Niranjan G

Niranjan G

@niranjan

Cybersecurity leader turning complex workflows into seamless, AI-driven automations.

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34