Workflow n8n

Automatisation Notion avec n8n : gestion de base de données programmée

  • Ce workflow n8n a pour objectif d'automatiser la gestion des pages d'une base de données Notion en fonction d'un calendrier prédéfini. Dans un contexte où les équipes doivent régulièrement mettre à jour leurs informations, ce workflow permet de s'assurer que les données restent à jour sans intervention manuelle. Par exemple, une équipe marketing peut l'utiliser pour créer ou mettre à jour des pages de projet en fonction des événements de leur calendrier Outlook.
  • Le processus commence par un déclencheur programmé qui active le workflow à intervalles réguliers. Ensuite, il tente de récupérer une page de la base de données Notion spécifiée. Si la page n'est pas trouvée, le workflow crée une nouvelle page avec les informations nécessaires. En parallèle, il peut également récupérer les événements du calendrier Outlook pour les intégrer dans la base de données. Les données sont ensuite fusionnées et traitées pour s'assurer que toutes les informations sont correctement mises à jour.
  • Les bénéfices de cette automatisation n8n sont multiples : elle réduit le risque d'erreurs humaines, améliore la cohérence des données et permet aux équipes de se concentrer sur des tâches à plus forte valeur ajoutée. En intégrant des outils comme Notion et Outlook, ce workflow facilite la gestion des informations et optimise le temps de travail des équipes.
Tags clés :automatisationNotionOutlookworkflowbase de données
Catégorie: Scheduled · Tags: automatisation, Notion, Outlook, workflow, base de données0

Workflow n8n Notion, Outlook, base de données : vue d'ensemble

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

Workflow n8n Notion, Outlook, base de données : détail des nœuds

  • On schedule

    Ce noeud déclenche le workflow selon un calendrier défini.

  • Try get database page

    Ce noeud tente de récupérer une page de base de données depuis Notion en utilisant des filtres et des options spécifiées.

  • Merge

    Ce noeud fusionne plusieurs ensembles de données selon les critères définis.

  • If database page not found

    Ce noeud vérifie si une page de base de données n'a pas été trouvée et dirige le flux en conséquence.

  • Create database page

    Ce noeud crée une nouvelle page dans une base de données Notion avec les propriétés spécifiées.

  • Update database page

    Ce noeud met à jour une page existante dans une base de données Notion en fonction des paramètres fournis.

  • X days into the future

    Ce noeud calcule une date future en ajoutant un certain nombre de jours à la date actuelle.

  • Split out items

    Ce noeud sépare les éléments d'une liste en fonction d'un champ spécifié.

  • Get Outlook Calendar events

    Ce noeud envoie une requête HTTP pour récupérer les événements du calendrier Outlook.

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

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "meta": {
    "instanceId": "a2434c94d549548a685cca39cc4614698e94f527bcea84eefa363f1037ae14cd"
  },
  "nodes": [
    {
      "id": "713d2864-efd0-4938-871e-1d37a7c58b67",
      "name": "On schedule",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        1280,
        840
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes"
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "0cedfde1-6ae1-485c-bd2c-b6114f6e4deb",
      "name": "Try get database page",
      "type": "n8n-nodes-base.notion",
      "position": [
        2160,
        900
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "key": "Event ID|rich_text",
              "condition": "equals",
              "richTextValue": "={{ $json.id }}"
            }
          ]
        },
        "options": {},
        "resource": "databasePage",
        "operation": "getAll",
        "returnAll": true,
        "databaseId": {
          "__rl": true,
          "mode": "list",
          "value": "6318457d-052d-4107-9c5b-8041f530fa03",
          "cachedResultUrl": "https://www.notion.so/6318457d052d41079c5b8041f530fa03",
          "cachedResultName": "Outlook Calendar"
        },
        "filterType": "manual"
      },
      "credentials": {
        "notionApi": {
          "id": "18",
          "name": "[UPDATE ME]"
        }
      },
      "typeVersion": 2,
      "alwaysOutputData": true
    },
    {
      "id": "92ebdd55-0950-471c-aa44-2fed31b17870",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        2380,
        780
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "joinMode": "enrichInput1",
        "mergeByFields": {
          "values": [
            {
              "field1": "id",
              "field2": "property_event_id"
            }
          ]
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "d38e4228-b3ab-443f-bfac-ffd0bc10fd08",
      "name": "If database page not found",
      "type": "n8n-nodes-base.if",
      "position": [
        2600,
        840
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{ $json.property_event_id }}",
              "operation": "isEmpty"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6ef0f18c-51fe-42e7-9e42-fd6ca8564e6e",
      "name": "Create database page",
      "type": "n8n-nodes-base.notion",
      "position": [
        2820,
        740
      ],
      "parameters": {
        "title": "={{ $json.subject }}",
        "options": {
          "icon": "https://avatars.githubusercontent.com/u/45487711?s=280&v=4",
          "iconType": "file"
        },
        "resource": "databasePage",
        "databaseId": {
          "__rl": true,
          "mode": "list",
          "value": "6318457d-052d-4107-9c5b-8041f530fa03",
          "cachedResultUrl": "https://www.notion.so/6318457d052d41079c5b8041f530fa03",
          "cachedResultName": "Outlook Calendar"
        },
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Date|date",
              "range": true,
              "dateEnd": "={{ $json.end.dateTime }}",
              "timezone": "={{ $json.start.timeZone }}",
              "dateStart": "={{ $json.start.dateTime }}"
            },
            {
              "key": "Event ID|rich_text",
              "textContent": "={{ $json.id }}"
            },
            {
              "key": "Link|url",
              "urlValue": "={{ $json.webLink }}"
            }
          ]
        }
      },
      "credentials": {
        "notionApi": {
          "id": "18",
          "name": "[UPDATE ME]"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "2d324002-348b-4f23-bffe-57f685a8a761",
      "name": "Update database page",
      "type": "n8n-nodes-base.notion",
      "position": [
        2820,
        940
      ],
      "parameters": {
        "pageId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "resource": "databasePage",
        "operation": "update",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Date|date",
              "range": true,
              "dateEnd": "={{ $json.end.dateTime }}",
              "timezone": "={{ $json.start.timeZone }}",
              "dateStart": "={{ $json.start.dateTime }}"
            },
            {
              "key": "Link|url",
              "urlValue": "={{ $json.webLink }}"
            },
            {
              "key": "Name|title",
              "title": "={{ $json.subject }}"
            }
          ]
        }
      },
      "credentials": {
        "notionApi": {
          "id": "18",
          "name": "[UPDATE ME]"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "ee4792c4-d71c-4fd3-a8a3-babae5ff3479",
      "name": "X days into the future",
      "type": "n8n-nodes-base.dateTime",
      "position": [
        1500,
        840
      ],
      "parameters": {
        "duration": 365,
        "magnitude": "={{ $json.timestamp }}",
        "operation": "addToDate",
        "outputFieldName": "Future date"
      },
      "typeVersion": 2
    },
    {
      "id": "00b53a21-97c7-4293-a5eb-8321afddd4bc",
      "name": "Split out items",
      "type": "n8n-nodes-base.itemLists",
      "position": [
        1940,
        840
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "value"
      },
      "typeVersion": 2.2
    },
    {
      "id": "a7541bb9-0c0d-48b5-a39e-57e5681330da",
      "name": "Get Outlook Calendar events",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1720,
        840
      ],
      "parameters": {
        "url": "https://graph.microsoft.com/v1.0/me/calendarview",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "queryParameters": {
          "parameters": [
            {
              "name": "startdatetime",
              "value": "={{ new Date($('On schedule').item.json.timestamp).toISOString() }}"
            },
            {
              "name": "enddatetime",
              "value": "={{ new Date($json['Future date']).toISOString() }}"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "dxBfWhTrnERPMHGs",
          "name": "REPLACE ME"
        }
      },
      "typeVersion": 4.1
    }
  ],
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "If database page not found",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On schedule": {
      "main": [
        [
          {
            "node": "X days into the future",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split out items": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          },
          {
            "node": "Try get database page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Try get database page": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "X days into the future": {
      "main": [
        [
          {
            "node": "Get Outlook Calendar events",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If database page not found": {
      "main": [
        [
          {
            "node": "Create database page",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Update database page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Outlook Calendar events": {
      "main": [
        [
          {
            "node": "Split out items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Notion, Outlook, base de données : pour qui est ce workflow ?

Ce workflow s'adresse aux équipes marketing, aux chefs de projet et aux professionnels qui utilisent Notion pour la gestion de leurs données. Il est idéal pour les organisations de taille moyenne à grande qui cherchent à automatiser leurs processus et à améliorer leur efficacité opérationnelle.

Workflow n8n Notion, Outlook, base de données : problème résolu

Ce workflow résout le problème de la mise à jour manuelle des bases de données dans Notion, ce qui peut être chronophage et sujet à des erreurs. En automatisant ce processus, les utilisateurs éliminent les frustrations liées à la gestion des données et réduisent le risque d'informations obsolètes. Après la mise en place de ce workflow, les utilisateurs bénéficient d'une base de données toujours à jour, ce qui leur permet de prendre des décisions éclairées rapidement.

Workflow n8n Notion, Outlook, base de données : étapes du workflow

Étape 1 : Le workflow est déclenché selon un calendrier défini.

  • Étape 1 : Il tente de récupérer une page de la base de données Notion.
  • Étape 2 : Si la page n'est pas trouvée, une nouvelle page est créée avec les informations nécessaires.
  • Étape 3 : En parallèle, les événements du calendrier Outlook sont récupérés.
  • Étape 4 : Les données sont fusionnées et mises à jour dans la base de données Notion.

Workflow n8n Notion, Outlook, base de données : guide de personnalisation

Pour personnaliser ce workflow, vous pouvez modifier le déclencheur programmé en ajustant la règle de fréquence. Il est également possible de changer l'ID de la base de données Notion pour l'adapter à votre projet spécifique. Si vous souhaitez intégrer d'autres outils, vous pouvez ajouter des noeuds supplémentaires pour récupérer des données d'autres sources. Enfin, assurez-vous de sécuriser le flux en configurant correctement les autorisations d'accès aux API de Notion et Outlook.