Automatisation Slack avec n8n : gestion des tâches quotidiennes
- Ce workflow n8n a pour objectif d'automatiser la gestion des tâches quotidiennes au sein d'une équipe utilisant Slack et Notion. Dans un contexte où la productivité est essentielle, ce processus permet de filtrer les tâches incomplètes et d'envoyer des rappels personnalisés aux utilisateurs concernés. En intégrant des services comme Slack et Notion, ce workflow facilite la communication et la gestion des tâches, ce qui est particulièrement utile pour les équipes de projet ou les départements de gestion.
- Le déroulé commence par un déclencheur programmé qui s'active du lundi au vendredi à 9h00, grâce à un nœud Cron. Ensuite, le workflow utilise un nœud de filtrage pour ne sélectionner que les tâches incomplètes. Les utilisateurs de Slack sont récupérés via un nœud spécifique, et les tâches sont extraites de la base de données Notion. Les adresses e-mail des utilisateurs Notion sont ensuite définies pour permettre une communication fluide.
- Les messages directs sont envoyés aux utilisateurs concernés, en utilisant des nœuds Slack pour personnaliser le contenu. Des filtres supplémentaires sont appliqués pour s'assurer que chaque utilisateur reçoit le bon message. Les bénéfices de cette automatisation n8n sont multiples : réduction du temps passé à gérer les tâches, amélioration de la communication au sein de l'équipe et augmentation de la productivité générale. En intégrant ces outils, les équipes peuvent se concentrer sur des tâches à plus forte valeur ajoutée.
Workflow n8n Slack, Notion, productivité, gestion des tâches : vue d'ensemble
Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.
Workflow n8n Slack, Notion, productivité, gestion des tâches : détail des nœuds
Inscris-toi pour voir l'intégralité du workflow
Inscription gratuite
S'inscrire gratuitementBesoin d'aide ?{
"meta": {
"instanceId": "38d37c49298b42c645e6a7693766d7c3522b24e54454034f955422b5d7af611c"
},
"nodes": [
{
"id": "d2e53ca7-07e1-499b-8f29-9a2a1de10824",
"name": "Filter incomplete tasks only",
"type": "n8n-nodes-base.filter",
"position": [
220,
380
],
"parameters": {
"conditions": {
"string": [
{
"value1": "={{ $json.Status }}",
"value2": "Done",
"operation": "notEqual"
}
]
}
},
"typeVersion": 1
},
{
"id": "2ff58ec6-58a3-4bf0-adba-d2d0ae87944e",
"name": "Get All Slack Users (Darryn)",
"type": "n8n-nodes-base.slack",
"position": [
440,
380
],
"parameters": {
"resource": "user",
"operation": "getAll",
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "xkCA23zAF89RcovP",
"name": "Slack Account (OAuth) (darryn@optimus01.co.za)"
}
},
"executeOnce": false,
"typeVersion": 1
},
{
"id": "ff9a6853-b254-4a4f-aa8d-89546e78de0b",
"name": "Get To Dos from Tasks Database",
"type": "n8n-nodes-base.notion",
"position": [
20,
380
],
"parameters": {
"options": {},
"resource": "databasePage",
"operation": "getAll",
"databaseId": {
"__rl": true,
"mode": "list",
"value": "1197be57-c54f-815f-8d3b-fdbbb741b19c",
"cachedResultUrl": "https://www.notion.so/1197be57c54f815f8d3bfdbbb741b19c",
"cachedResultName": "Tasks "
}
},
"credentials": {
"notionApi": {
"id": "n1DsMuDcWjPxXlfD",
"name": "Notion Account (darryn@optimus01.co.za)"
}
},
"typeVersion": 1
},
{
"id": "c9856834-1a6b-4e2e-bb77-9b3c74c34ccf",
"name": "Schedule Mon - Friday @ 09:00am",
"type": "n8n-nodes-base.cron",
"position": [
-600,
380
],
"parameters": {
"triggerTimes": {
"item": [
{
"mode": "custom",
"cronExpression": "0 9 * * 1,2,3,4,5"
}
]
}
},
"typeVersion": 1
},
{
"id": "41e67948-1d4a-4654-8817-dbcf61eb061d",
"name": "Set Notion User Emails",
"type": "n8n-nodes-base.set",
"position": [
-380,
380
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "94663427-c288-446a-96df-ddfc3fe332f0",
"name": "User 1 Notion Email",
"type": "string",
"value": "darryn@optimus01.co.za"
},
{
"id": "bed7739d-640a-43cc-9fb5-4472844ccc09",
"name": "User 2 Notion Email",
"type": "string",
"value": "cassie@optimus01.com"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "3a59b653-dd65-4443-b2d0-44cce3e780dd",
"name": "Set Slack User Full Name",
"type": "n8n-nodes-base.set",
"position": [
-180,
380
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "94663427-c288-446a-96df-ddfc3fe332f0",
"name": "User 1 Slack Full Name",
"type": "string",
"value": "Darryn Balanco"
},
{
"id": "bed7739d-640a-43cc-9fb5-4472844ccc09",
"name": "User 2 Slack Full Name",
"type": "string",
"value": "Cassandra Balanco"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "340af945-5e22-408f-86de-b4e4160ec751",
"name": "Send a Direct Message to User 1",
"type": "n8n-nodes-base.slack",
"position": [
1200,
260
],
"parameters": {
"text": "# TO DO",
"channel": "={{ $json.id }}",
"attachments": [
{
"title": "=☑️ {{ $('Filter incomplete tasks only').item.json.Task }} (Due: {{ $('Filter incomplete tasks only').item.json.Due.start }})"
}
],
"otherOptions": {
"mrkdwn": true
},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "xkCA23zAF89RcovP",
"name": "Slack Account (OAuth) (darryn@optimus01.co.za)"
}
},
"typeVersion": 1
},
{
"id": "df9bc0b5-7a34-407d-a412-dd4022943e41",
"name": "Send a Direct Message to User 2",
"type": "n8n-nodes-base.slack",
"position": [
1200,
500
],
"parameters": {
"text": "# TO DO",
"channel": "={{ $json.id }}",
"attachments": [
{
"title": "=☑️ {{ $('Filter incomplete tasks only').item.json.Task }} (Due: {{ $('Filter incomplete tasks only').item.json.Due.start }})"
}
],
"otherOptions": {
"mrkdwn": true
},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "xkCA23zAF89RcovP",
"name": "Slack Account (OAuth) (darryn@optimus01.co.za)"
}
},
"typeVersion": 1
},
{
"id": "f6ab26d3-27d9-4b06-886d-64bbaf5d4f92",
"name": "Switch for Notion Users Emails",
"type": "n8n-nodes-base.switch",
"position": [
720,
380
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "User 1 Notion Tasks",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $('Filter incomplete tasks only').item.json['Notion User'].toString() }}",
"rightValue": "={{ $('Set Notion User Emails').item.json['User 1 Notion Email'] }}"
}
]
},
"renameOutput": true
},
{
"outputKey": "User 2 Notion Tasks",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "d0bf512b-15e4-4dd6-b468-50cec25c3e2c",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $('Filter incomplete tasks only').item.json['Notion User'].toString() }}",
"rightValue": "={{ $('Set Notion User Emails').item.json['User 2 Notion Email'] }}"
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "4492bc68-e8ef-4417-b3d2-d7fb9418db17",
"name": "Filter Slack User 1 Full Name",
"type": "n8n-nodes-base.filter",
"position": [
980,
260
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6aafbbd7-065c-4253-b905-07c7df9210c1",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.profile.real_name }}",
"rightValue": "={{ $('Set Slack User Full Name').item.json['User 1 Slack Full Name'] }}"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "159b3436-9141-4769-a495-14e9fdd37f1d",
"name": "Filter Slack User 2 Full Name",
"type": "n8n-nodes-base.filter",
"position": [
980,
500
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6aafbbd7-065c-4253-b905-07c7df9210c1",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.profile.real_name }}",
"rightValue": "={{ $('Set Slack User Full Name').item.json['User 2 Slack Full Name'] }}"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "5b863aea-a4d5-486e-82a9-a4f2b713f8f8",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-670.7551894447033,
180
],
"parameters": {
"color": 7,
"width": 232.28640473083397,
"height": 395.93315440190497,
"content": "## Schedule Mon - Friday @ 09:00am\nTriggers the workflow every weekday at 9:00 AM. This ensures that the reminders are sent at the start of the day.\n"
},
"typeVersion": 1
},
{
"id": "420236d0-5139-4faf-9b2e-dca35b15a6b9",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-424.62240527764834,
180
],
"parameters": {
"color": 7,
"width": 377.1025213664834,
"height": 397.4539493179217,
"content": "## Set Notion User Emails and Slack User Full Name\nStores the email addresses of Notion users, and full names of the Slack users to be matched later in the workflow."
},
"typeVersion": 1
},
{
"id": "751c8fb7-0b38-4a83-bf55-82be400f59a7",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-33.06639208352749,
180
],
"parameters": {
"width": 400.70229197070614,
"height": 397.31352154531925,
"content": "## Get To Dos from Tasks Database and Filter incomplete tasks only\nRetrieves all tasks from the specified Notion database and filters out tasks that are marked as \"Done,\" ensuring that only incomplete tasks are processed."
},
"typeVersion": 1
},
{
"id": "4e352442-ce25-4e36-b334-c6b1e0896d06",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
384.62240527764834,
180
],
"parameters": {
"color": 3,
"width": 240.32164378964495,
"height": 398.1826056622561,
"content": "## Get All Slack Users\nFetches all users from Slack to enable proper identification of who should receive the reminders.\n"
},
"typeVersion": 1
},
{
"id": "5dde41f6-b66f-4abb-8bc6-9226b06e9331",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
640,
180
],
"parameters": {
"width": 267.7344316658903,
"height": 398.29835161802384,
"content": "## Switch for Notion Users Emails\nDetermines which user (User 1 or User 2) is assigned the task in Notion by comparing email addresses, routing the workflow accordingly.\n"
},
"typeVersion": 1
},
{
"id": "3babdb0f-29d7-4ff7-9174-3ae0b5a4979d",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
920,
83.27096255097126
],
"parameters": {
"color": 3,
"width": 455.87875185735516,
"height": 592.983420807127,
"content": "## Filter Slack User and Send a Direct Message to User\nFilters Slack users to identify User 1 based on their full name and sends a direct Slack message to User with the details of their incomplete tasks.\n"
},
"typeVersion": 1
},
{
"id": "43e36d12-b477-49fa-aed0-e28304310894",
"name": "Sticky Note11",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1140,
260
],
"parameters": {
"color": 6,
"width": 396.6384066163515,
"height": 282.5799404564392,
"content": "### Get More Templates Like This 👇\n[](http://onlinethinking.io/community)\n"
},
"typeVersion": 1
},
{
"id": "6eefe33e-0dc9-4ee8-8ad4-f61078e74227",
"name": "Sticky Note14",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1520,
620
],
"parameters": {
"width": 777.0408639013781,
"height": 216.76250654583106,
"content": "## Setup\n1. **`Connect Notion`**: You will need to connect your Notion account and specify the database containing tasks.\n2. **`Connect Slack`**: Authenticate with Slack using OAuth to allow the workflow to send messages on your behalf.\n3. **`Notion user Email Address mapping`**: Ensure that the Notion users’ email addresses are correctly mapped to their corresponding Notion user profiles.\n4. **`Slack user Full Name mapping`**: Ensure that the Slack users’ full names are correctly mapped to their corresponding Slack user profiles.\n5. **`Adjust schedule`**: If needed, modify the schedule node to run at a different time or frequency.\n"
},
"typeVersion": 1
},
{
"id": "8a91c90e-a9b6-4948-beb4-773e8c9f91f7",
"name": "Sticky Note15",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1520,
860
],
"parameters": {
"color": 7,
"width": 777.0408639013781,
"height": 179.2285042683488,
"content": "## How to customize this workflow\n- **`Change the Notion Tasks database`**: You can adjust the workflow to pull tasks from a different Notion database by modifying the \"Get To Dos from Tasks Database\" node.\n- **`Add more users`**: The workflow currently supports two users, but you can expand it to support more by adding additional logic in the \"Switch for Notion Users Emails\" node.\n- **`Modify the message format`**: The Slack message content can be customized further to include more task details or change the message format.\n"
},
"typeVersion": 1
},
{
"id": "9e03e28e-f4ce-4c75-85ab-e7ffe0f1bfd7",
"name": "Sticky Note10",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1520,
220
],
"parameters": {
"color": 7,
"width": 366.75796434038665,
"height": 379.6332969008185,
"content": "## What this workflow does\n1. **`Triggers every weekday at 9:00 AM`**: The workflow runs at 9:00 AM, Monday through Friday.\n2. **`Fetches tasks from Notion`**: It retrieves tasks from a Notion database.\n3. **`Filters incomplete tasks`**: The workflow filters tasks that are not marked as \"Done.\"\n4. **`Fetches Slack users`**: It retrieves all Slack users to ensure that the reminders are sent to the correct user.\n5. **`Matches tasks to the correct user`**: It checks the Notion task assignee and matches it with the appropriate Slack user.\n6. **`Sends Slack reminders`**: Sends a Slack direct message to each user with their incomplete tasks and due dates."
},
"typeVersion": 1
},
{
"id": "eb0942b9-d18f-46a2-bea0-23eb07bb1d85",
"name": "Sticky Note12",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1535,
58
],
"parameters": {
"color": 7,
"width": 809.515353297114,
"height": 999.58820121335,
"content": "## Automated Notion Task Reminders via Slack\nBuilt for the [Let's Automate It Community](http://onlinethinking.io/community) by [Optimus Agency](https://optimus01.co.za/)\n\nThis workflow automates sending task reminders from a Notion database to Slack users. By running every weekday morning, it ensures that users receive timely reminders of their incomplete tasks, helping them stay organized and efficient."
},
"typeVersion": 1
},
{
"id": "f4334588-60dd-456a-839f-6e5610ce18b8",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-400,
32.55329198368918
],
"parameters": {
"color": 4,
"width": 314.0627775112129,
"height": 133.34123489274947,
"content": "# EDIT THE FIELDS HERE 👇"
},
"typeVersion": 1
},
{
"id": "50bd2206-7b97-454e-9b21-be6e8af7eb7d",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-671.0639503804273,
33.191851141281106
],
"parameters": {
"color": 7,
"width": 231.9017050322621,
"height": 132.26101263924207,
"content": "## 💡 Tip\n[Crontab Guru](https://crontab.guru/) is a simple and intuitive web-based tool that helps users create, edit, and understand cron schedules. "
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"Set Notion User Emails": {
"main": [
[
{
"node": "Set Slack User Full Name",
"type": "main",
"index": 0
}
]
]
},
"Set Slack User Full Name": {
"main": [
[
{
"node": "Get To Dos from Tasks Database",
"type": "main",
"index": 0
}
]
]
},
"Filter incomplete tasks only": {
"main": [
[
{
"node": "Get All Slack Users (Darryn)",
"type": "main",
"index": 0
}
]
]
},
"Get All Slack Users (Darryn)": {
"main": [
[
{
"node": "Switch for Notion Users Emails",
"type": "main",
"index": 0
}
]
]
},
"Filter Slack User 1 Full Name": {
"main": [
[
{
"node": "Send a Direct Message to User 1",
"type": "main",
"index": 0
}
]
]
},
"Filter Slack User 2 Full Name": {
"main": [
[
{
"node": "Send a Direct Message to User 2",
"type": "main",
"index": 0
}
]
]
},
"Get To Dos from Tasks Database": {
"main": [
[
{
"node": "Filter incomplete tasks only",
"type": "main",
"index": 0
}
]
]
},
"Switch for Notion Users Emails": {
"main": [
[
{
"node": "Filter Slack User 1 Full Name",
"type": "main",
"index": 0
}
],
[
{
"node": "Filter Slack User 2 Full Name",
"type": "main",
"index": 0
}
]
]
},
"Schedule Mon - Friday @ 09:00am": {
"main": [
[
{
"node": "Set Notion User Emails",
"type": "main",
"index": 0
}
]
]
}
}
}Workflow n8n Slack, Notion, productivité, gestion des tâches : pour qui est ce workflow ?
Ce workflow s'adresse aux équipes de projet, aux départements de gestion et aux entreprises utilisant Slack et Notion pour la gestion des tâches. Il est conçu pour des utilisateurs ayant un niveau technique intermédiaire et souhaitant améliorer leur productivité au sein de leur organisation.
Workflow n8n Slack, Notion, productivité, gestion des tâches : problème résolu
Ce workflow résout le problème de la gestion manuelle des tâches incomplètes en automatisant l'envoi de rappels aux utilisateurs concernés. Cela élimine les frustrations liées à la perte de temps et réduit le risque de tâches oubliées. En mettant en place cette automatisation, les utilisateurs bénéficient d'une meilleure organisation et d'une communication plus fluide au sein de leur équipe.
Workflow n8n Slack, Notion, productivité, gestion des tâches : étapes du workflow
Étape 1 : Le workflow est déclenché par un nœud Cron programmé pour s'exécuter du lundi au vendredi à 9h00.
- Étape 1 : Les tâches incomplètes sont filtrées à l'aide d'un nœud de filtrage.
- Étape 2 : Les utilisateurs de Slack sont récupérés via un nœud spécifique.
- Étape 3 : Les tâches sont extraites de la base de données Notion.
- Étape 4 : Les adresses e-mail des utilisateurs Notion sont définies.
- Étape 5 : Des messages directs sont envoyés aux utilisateurs concernés via des nœuds Slack.
- Étape 6 : Des filtres supplémentaires sont appliqués pour personnaliser les messages envoyés.
Workflow n8n Slack, Notion, productivité, gestion des tâches : guide de personnalisation
Pour personnaliser ce workflow, vous pouvez modifier le nœud Cron pour ajuster les jours et heures d'exécution selon vos besoins. Il est également possible de changer les paramètres des nœuds Slack pour adapter le contenu des messages envoyés. Pour une intégration plus poussée, vous pouvez ajouter d'autres services ou outils en utilisant des nœuds HTTP Request. Assurez-vous de sécuriser le flux en vérifiant les autorisations d'accès aux données de Notion et Slack.