Créer un chatbot Slack avec réponses automatiques utilisant GPT-4o
Ceci est unAI Chatbot, Multimodal AIworkflow d'automatisation du domainecontenant 9 nœuds.Utilise principalement des nœuds comme Code, Slack, Agent, ChatTrigger, LmChatOpenAi. Créer un chatbot Slack utilisant GPT-4o pour les réponses automatiques
- •Token Bot Slack ou URL Webhook
- •Clé API OpenAI
Nœuds utilisés (9)
Catégorie
{
"meta": {
"instanceId": "ad0113c344ee237399e44e9f11798b05baeb83a6196d514a9ae9d2ad71c3b5c9",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "e1ed7ed9-efff-4003-933d-7bf9d0b8949b",
"name": "OpenAI Modèle de chat8",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-1168,
11920
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "4l6TDfLZVFS24g3X",
"name": "OpenAi account 4"
}
},
"typeVersion": 1.2
},
{
"id": "62d0e051-8bb1-4206-8fa7-19f93a7e30ea",
"name": "Note adhésive61",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1904,
11344
],
"parameters": {
"color": 7,
"width": 1488,
"height": 928,
"content": "# 💬 OpenAI Chat Agent with Slack Listening\n\nThis workflow connects a chatbot to **Slack**. \nIt listens to user messages, sends them to an **OpenAI agent**, and replies back in the same Slack channel.\n"
},
"typeVersion": 1
},
{
"id": "c65f1027-8100-4b78-af28-c99bccb903bb",
"name": "Note adhésive20",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2352,
11344
],
"parameters": {
"width": 400,
"height": 928,
"content": "\n## ⚙️ Setup Instructions\n\n### 2️⃣ Connect Slack API\n1. Create an app → <https://api.slack.com/apps> \n2. **OAuth & Permissions** → add scopes you need to read channel history (typical: \n `channels:history`, `groups:history`, `im:history`, `mpim:history`, plus `channels:read`, `groups:read`, `users:read`. Add `chat:write` if you want the bot to reply in Slack.) \n3. **Install** the app to your workspace → copy the **Bot User OAuth Token** \n4. In n8n → **Credentials → New → Slack OAuth2 API** → paste token and save \n5. In the **Slack History** node, select your Slack credential and the **Channel ID** to read\n\n\n\n\n## 📬 Contact\nNeed help customizing this (e.g., filtering by list, or sending reports by email/Slack)? \n\n📧 **robert@ynteractive.com** \n🔗 **[Robert Breen](https://www.linkedin.com/in/robert-breen-29429625/)** \n🌐 **[ynteractive.com](https://ynteractive.com)**\n"
},
"typeVersion": 1
},
{
"id": "1a88867a-350a-42cf-872e-ce2c9074d6c5",
"name": "Envoyer un message utilisateur dans Slack",
"type": "n8n-nodes-base.slack",
"position": [
-1504,
12080
],
"webhookId": "9369d3e1-26af-4e9f-ba26-e2de061a9aa7",
"parameters": {
"text": "=*User:* {{ $json.chatInput }}",
"user": {
"__rl": true,
"mode": "list",
"value": "U09ADJPB7QA",
"cachedResultName": "rbreen672"
},
"select": "user",
"otherOptions": {
"includeLinkToWorkflow": false
},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "kJLcFGEETWlwowIc",
"name": "Slack account 9"
}
},
"typeVersion": 2.3
},
{
"id": "434201a3-a5d9-434c-b8c0-f7a13e0dcb41",
"name": "Agent de chat exemple",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1136,
11680
],
"parameters": {
"text": "={{ $('Sample Chatbot').item.json.chatInput }}",
"options": {
"systemMessage": "=you are an ecommerce bot. help the user as if you were working for a mock store. "
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "d0effa88-1f30-4e6a-a5b3-3edc90d726d2",
"name": "Envoyer la réponse de l'agent dans Slack",
"type": "n8n-nodes-base.slack",
"position": [
-784,
11856
],
"webhookId": "9369d3e1-26af-4e9f-ba26-e2de061a9aa7",
"parameters": {
"text": "=*Chatbot:* {{ $json.output }}",
"user": {
"__rl": true,
"mode": "list",
"value": "U09ADJPB7QA",
"cachedResultName": "rbreen672"
},
"select": "user",
"otherOptions": {
"includeLinkToWorkflow": false
},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "kJLcFGEETWlwowIc",
"name": "Slack account 9"
}
},
"typeVersion": 2.3
},
{
"id": "f9e1139f-2868-467c-aa21-fdd4920d0bd0",
"name": "Formater la réponse",
"type": "n8n-nodes-base.code",
"position": [
-640,
11632
],
"parameters": {
"jsCode": "return [{ json: { text:$('Sample Chat Agent').first().json.output } }];\n"
},
"typeVersion": 2
},
{
"id": "309558fd-dea7-4634-a5b7-a02b0df2bbcf",
"name": "Note adhésive66",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1568,
11552
],
"parameters": {
"color": 3,
"width": 224,
"height": 640,
"content": "### 2️⃣ Connect Slack API\n1. Create an app → <https://api.slack.com/apps> \n2. **OAuth & Permissions** → add scopes you need to read channel history (typical: \n `channels:history`, `groups:history`, `im:history`, `mpim:history`, plus `channels:read`, `groups:read`, `users:read`. Add `chat:write` if you want the bot to reply in Slack.) \n3. **Install** the app to your workspace → copy the **Bot User OAuth Token** \n4. In n8n → **Credentials → New → Slack OAuth2 API** → paste token and save \n5. In the **Slack History** node, select your Slack credential and the **Channel ID** to read\n"
},
"typeVersion": 1
},
{
"id": "bbb5baca-6411-4d41-8530-3aff0a228513",
"name": "Chatbot exemple",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
-1792,
11696
],
"webhookId": "d38a0072-420b-4de8-86b6-03a8f9a6e254",
"parameters": {
"options": {}
},
"typeVersion": 1.3
}
],
"pinData": {},
"connections": {
"bbb5baca-6411-4d41-8530-3aff0a228513": {
"main": [
[
{
"node": "1a88867a-350a-42cf-872e-ce2c9074d6c5",
"type": "main",
"index": 0
}
]
]
},
"434201a3-a5d9-434c-b8c0-f7a13e0dcb41": {
"main": [
[
{
"node": "d0effa88-1f30-4e6a-a5b3-3edc90d726d2",
"type": "main",
"index": 0
}
]
]
},
"e1ed7ed9-efff-4003-933d-7bf9d0b8949b": {
"ai_languageModel": [
[
{
"node": "434201a3-a5d9-434c-b8c0-f7a13e0dcb41",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"1a88867a-350a-42cf-872e-ce2c9074d6c5": {
"main": [
[
{
"node": "434201a3-a5d9-434c-b8c0-f7a13e0dcb41",
"type": "main",
"index": 0
}
]
]
},
"d0effa88-1f30-4e6a-a5b3-3edc90d726d2": {
"main": [
[
{
"node": "f9e1139f-2868-467c-aa21-fdd4920d0bd0",
"type": "main",
"index": 0
}
]
]
}
}
}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 - Chatbot IA, IA Multimodale
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.
Workflows recommandés
Robert Breen
@rbreenProfessional services consultant with over 10 years of experience solving complex business problems across industries. I specialize in n8n and process automation—designing custom workflows that integrate tools like Google Calendar, Airtable, GPT, and internal systems. Whether you need to automate scheduling, sync data, or streamline operations, I build solutions that save time and drive results.
Partager ce workflow