Workflow n8n

Automatisation Notion avec n8n : ajout de workflows toutes les 15 minutes

Ce workflow n8n a pour objectif d'automatiser l'ajout de nouveaux workflows dans Notion toutes les 15 minutes. Il s'adresse particulièrement aux équipes de gestion de projet et aux professionnels utilisant Notion pour centraliser leurs tâches et projets. Grâce à cette automatisation n8n, vous pouvez vous assurer que tous les workflows pertinents sont toujours à jour sans intervention manuelle. Le processus débute par un déclencheur programmé qui s'active toutes les 15 minutes. Ensuite, le workflow récupère tous les workflows existants avec un tag spécifique via le noeud 'Get all workflows with tag'. Une fois les données récupérées, le noeud 'Set fields' permet de préparer les informations à envoyer. Ensuite, le workflow effectue une requête HTTP pour obtenir la page Notion correspondante au workflow à ajouter. Si un nouveau workflow est détecté, le noeud 'if newly added workflow' conditionne l'ajout dans Notion. Les noeuds 'Add to Notion' et 'Update in Notion' sont utilisés pour intégrer ou mettre à jour les workflows dans votre base de données Notion. En intégrant ce workflow, vous réduisez le temps passé à gérer manuellement vos projets, ce qui vous permet de vous concentrer sur des tâches à plus forte valeur ajoutée.

Tags clés :automatisationNotionn8ngestion de projetworkflows
Catégorie: Scheduled · Tags: automatisation, Notion, n8n, gestion de projet, workflows0

Workflow n8n Notion, gestion de projet, workflows : vue d'ensemble

Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.

Workflow n8n Notion, gestion de projet, workflows : détail des nœuds

  • Every 15 minutes

    Déclenche le workflow toutes les 15 minutes.

  • Get all workflows with tag

    Récupère tous les workflows ayant un tag spécifique.

  • Set fields

    Définit des champs avec des valeurs assignées.

  • Get notion page with workflow id

    Effectue une requête HTTP pour obtenir une page Notion en utilisant un identifiant de workflow.

  • Map fields

    Mappe les champs avec des options et inclut d'autres champs si nécessaire.

  • if newly added workflow

    Vérifie si un workflow nouvellement ajouté répond à certaines conditions.

  • Add to Notion

    Ajoute un nouvel élément dans Notion avec les propriétés spécifiées.

  • Update in Notion

    Met à jour une page existante dans Notion avec les nouvelles propriétés.

  • Sticky Note3

    Crée une note autocollante avec des paramètres de couleur, taille et contenu.

  • Sticky Note2

    Crée une autre note autocollante avec des paramètres de couleur, taille et contenu.

Inscris-toi pour voir l'intégralité du workflow

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "nodes": [
    {
      "id": "2c3549c1-99c1-4255-a02d-2f454e6ced5e",
      "name": "Every 15 minutes",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        560,
        340
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 15
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "3380272e-5631-44aa-b7da-5e23e0966978",
      "name": "Get all workflows with tag",
      "type": "n8n-nodes-base.n8n",
      "position": [
        780,
        340
      ],
      "parameters": {
        "filters": {
          "tags": "sync-to-notion"
        }
      },
      "credentials": {
        "n8nApi": {
          "id": "230",
          "name": "n8n admin account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d702f13e-8e93-4142-87c7-49fbb6031e19",
      "name": "Set fields",
      "type": "n8n-nodes-base.set",
      "position": [
        1000,
        340
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "1744510d-7ed7-46d8-acd3-f975ab73f298",
              "name": "active",
              "type": "boolean",
              "value": "={{ $json.active }}"
            },
            {
              "id": "7e76f5dc-0c32-4b26-a289-975155b80112",
              "name": "url",
              "type": "string",
              "value": "={{ $vars.instance_url }}workflow/{{ $json.id }}"
            },
            {
              "id": "a7b069bf-8090-4dca-a432-f4fd7aa84e6f",
              "name": "errorWorkflow",
              "type": "boolean",
              "value": "={{ !!$json.settings?.errorWorkflow }}"
            },
            {
              "id": "0bff7a9b-0860-4552-b0f6-5fc279fc75d6",
              "name": "name",
              "type": "string",
              "value": "={{ $json.name }}"
            },
            {
              "id": "3065ee2f-d1bb-42b7-b341-7bb38b0f6720",
              "name": "updatedAt",
              "type": "string",
              "value": "={{ $json.updatedAt }}"
            },
            {
              "id": "ea9d39e4-50ca-4c79-b6ab-8b22cafd0257",
              "name": "createdAt",
              "type": "string",
              "value": "={{ $json.createdAt }}"
            },
            {
              "id": "265d66cd-1796-40eb-ae5b-dca8d1a91871",
              "name": "envId",
              "type": "string",
              "value": "=internal-{{ $json.id }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "4527dc91-bad5-4214-b210-ea8f89504fbf",
      "name": "Get notion page with workflow id",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1220,
        340
      ],
      "parameters": {
        "url": "https://api.notion.com/v1/databases/fa25c53eac9a416eab3961b2f5c0c647/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n    \"filter\": { \"and\": [\n    {\n        \"property\": \"env id\",\n        \"rich_text\": { \"contains\": \"{{ $json.envId }}\" }\n    }]\n}\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "headerParameters": {
          "parameters": [
            {
              "name": "Notion-Version",
              "value": "2022-06-28"
            }
          ]
        },
        "nodeCredentialType": "notionApi"
      },
      "credentials": {
        "notionApi": {
          "id": "1exvaAn7wzyBgkXZ",
          "name": "Nik's Notion Cred"
        }
      },
      "typeVersion": 4.1
    },
    {
      "id": "ced49644-b18f-4984-8dfd-199d88e3ded7",
      "name": "Map fields",
      "type": "n8n-nodes-base.set",
      "position": [
        1440,
        340
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "49092f3a-7f42-4067-b8ea-1073ef1d1bb8",
              "name": "input",
              "type": "object",
              "value": "={{ $('Set fields').item.json }}"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.3
    },
    {
      "id": "b890dacf-2ac2-4802-b96a-5097119d35ee",
      "name": "if newly added workflow",
      "type": "n8n-nodes-base.if",
      "position": [
        1660,
        340
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "88337d36-8cf6-4cd5-bec1-5123cf612934",
              "operator": {
                "type": "array",
                "operation": "empty",
                "singleValue": true
              },
              "leftValue": "={{ $json.results }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "86edfe55-9a88-49ed-82de-df0c44a65d53",
      "name": "Add to Notion",
      "type": "n8n-nodes-base.notion",
      "position": [
        1920,
        240
      ],
      "parameters": {
        "title": "={{ $json.input.name }}",
        "options": {},
        "resource": "databasePage",
        "databaseId": {
          "__rl": true,
          "mode": "list",
          "value": "fa25c53e-ac9a-416e-ab39-61b2f5c0c647",
          "cachedResultUrl": "https://www.notion.so/fa25c53eac9a416eab3961b2f5c0c647",
          "cachedResultName": "Workflows maintained"
        },
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "env id|rich_text",
              "textContent": "={{ $json.input.envId }}"
            },
            {
              "key": "URL (dev)|url",
              "urlValue": "={{ $json.input.url }}"
            },
            {
              "key": "isActive (dev)|checkbox",
              "checkboxValue": "={{ $json.input.active }}"
            },
            {
              "key": "Workflow created at|date",
              "date": "={{ $json.input.createdAt }}"
            },
            {
              "key": "Workflow updatded at|date",
              "date": "={{ $json.input.updatedAt }}"
            },
            {
              "key": "Error workflow setup|checkbox",
              "checkboxValue": "={{ $json.input.errorWorkflow }}"
            }
          ]
        }
      },
      "credentials": {
        "notionApi": {
          "id": "1exvaAn7wzyBgkXZ",
          "name": "Nik's Notion Cred"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "9d547270-37dd-41ee-98b7-13001c954ffa",
      "name": "Update in Notion",
      "type": "n8n-nodes-base.notion",
      "position": [
        1920,
        440
      ],
      "parameters": {
        "pageId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $json.results[0].url }}"
        },
        "options": {},
        "resource": "databasePage",
        "operation": "update",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "isActive (dev)|checkbox",
              "checkboxValue": "={{ $json.input.active }}"
            },
            {
              "key": "Name|title",
              "title": "={{ $json.input.name }}"
            },
            {
              "key": "URL (dev)|url",
              "urlValue": "={{ $json.input.url }}"
            },
            {
              "key": "isActive (dev)|checkbox",
              "checkboxValue": "={{ $json.input.active }}"
            },
            {
              "key": "Workflow updatded at|date",
              "date": "={{ $json.input.updatedAt }}"
            },
            {
              "key": "Error workflow setup|checkbox",
              "checkboxValue": "={{ false }}"
            }
          ]
        }
      },
      "credentials": {
        "notionApi": {
          "id": "1exvaAn7wzyBgkXZ",
          "name": "Nik's Notion Cred"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "9e4d88f6-aff8-48f1-9470-8b18aae7b83a",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        540,
        100
      ],
      "parameters": {
        "color": 5,
        "width": 445.6145160912248,
        "height": 193.68880276091272,
        "content": "### 👨‍🎤 Setup\n1. Add your n8n api creds\n2. Add your notion creds\n3. create notion database with fields `env id` as `text`, `isActive (dev)` as `boolean`, `URL (dev)` as `url`, `Workflow created at` as `date`, `Workflow updated at` as `date`, `Error workflow setup` as `boolean`\n4. Add tag `sync-to-notion` to some workflows"
      },
      "typeVersion": 1
    },
    {
      "id": "c212f6ec-22e3-41cf-b1a5-03f261715444",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1000,
        540
      ],
      "parameters": {
        "color": 7,
        "width": 368.0997057335963,
        "height": 80,
        "content": "### 👆 Set instance url instead of `{{ $vars.instance_url }}` (or set the env variable if you have that feature)"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "Map fields": {
      "main": [
        [
          {
            "node": "if newly added workflow",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set fields": {
      "main": [
        [
          {
            "node": "Get notion page with workflow id",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Every 15 minutes": {
      "main": [
        [
          {
            "node": "Get all workflows with tag",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "if newly added workflow": {
      "main": [
        [
          {
            "node": "Add to Notion",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Update in Notion",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get all workflows with tag": {
      "main": [
        [
          {
            "node": "Set fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get notion page with workflow id": {
      "main": [
        [
          {
            "node": "Map fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Notion, gestion de projet, workflows : pour qui est ce workflow ?

Ce workflow s'adresse aux équipes de gestion de projet, aux professionnels utilisant Notion pour organiser leurs tâches, ainsi qu'aux entreprises cherchant à automatiser la gestion de leurs workflows. Un niveau technique intermédiaire est recommandé pour la personnalisation.

Workflow n8n Notion, gestion de projet, workflows : problème résolu

Ce workflow résout le problème de la mise à jour manuelle des workflows dans Notion, ce qui peut être fastidieux et source d'erreurs. En automatisant ce processus, il élimine les frustrations liées à la gestion des tâches et réduit le risque d'oubli d'ajouts importants. Les utilisateurs bénéficient d'une organisation plus fluide et d'une meilleure visibilité sur leurs projets en temps réel.

Workflow n8n Notion, gestion de projet, workflows : étapes du workflow

Étape 1 : Le déclencheur programmé 'Every 15 minutes' lance le workflow.

  • Étape 1 : Le noeud 'Get all workflows with tag' récupère tous les workflows existants avec un tag spécifique.
  • Étape 2 : Le noeud 'Set fields' prépare les données à envoyer.
  • Étape 3 : Une requête HTTP est effectuée pour obtenir la page Notion correspondante via le noeud 'Get notion page with workflow id'.
  • Étape 4 : Le noeud 'if newly added workflow' vérifie si un nouveau workflow a été ajouté.
  • Étape 5 : Si c'est le cas, le noeud 'Add to Notion' ajoute le workflow dans la base de données, sinon le noeud 'Update in Notion' met à jour les informations existantes.

Workflow n8n Notion, gestion de projet, workflows : guide de personnalisation

Pour personnaliser ce workflow, commencez par ajuster le déclencheur 'Every 15 minutes' selon vos besoins. Modifiez le tag utilisé dans le noeud 'Get all workflows with tag' pour cibler les workflows spécifiques que vous souhaitez intégrer dans Notion. Assurez-vous que l'URL dans le noeud 'Get notion page with workflow id' pointe vers la bonne page Notion. Vous pouvez également adapter les propriétés dans les noeuds 'Add to Notion' et 'Update in Notion' pour correspondre à votre structure de base de données. Enfin, pour sécuriser le flux, vérifiez les paramètres d'authentification dans le noeud HTTP et assurez-vous que vos données sont correctement protégées.