Workflow n8n

Automatisation LinkedIn avec n8n : publication de contenu Notion

Ce workflow n8n a pour objectif d'automatiser la publication de contenu depuis Notion vers LinkedIn, facilitant ainsi la gestion des posts pour les entreprises et les professionnels. En intégrant ces deux outils, les utilisateurs peuvent s'assurer que leur contenu est diffusé de manière cohérente et efficace, tout en économisant du temps précieux. Ce type d'automatisation est particulièrement utile pour les équipes marketing et les créateurs de contenu qui souhaitent maintenir une présence active sur les réseaux sociaux sans avoir à le faire manuellement. Le workflow commence par un déclencheur programmé qui active le processus à des moments spécifiques. Ensuite, il filtre les publications du jour dans la base de données Notion, récupère le contenu nécessaire, et agrège les blocs pertinents. Après cela, le contenu est formaté à l'aide d'un script JavaScript pour s'assurer qu'il est prêt à être partagé. Une fois le contenu prêt, une image est téléchargée via une requête HTTP et le post est publié sur LinkedIn. Enfin, l'état du post est mis à jour dans la base de données Notion pour garder une trace des publications effectuées. Grâce à cette automatisation n8n, les utilisateurs peuvent réduire les risques d'erreurs humaines et garantir une diffusion régulière de leur contenu, ce qui améliore leur visibilité et leur engagement sur LinkedIn.

Tags clés :automatisationNotionLinkedInworkflowpublication
Catégorie: Scheduled · Tags: automatisation, Notion, LinkedIn, workflow, publication0

Workflow n8n Notion, LinkedIn, publication : vue d'ensemble

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

Workflow n8n Notion, LinkedIn, publication : détail des nœuds

  • Merge

    Ce noeud fusionne plusieurs entrées en fonction des paramètres spécifiés.

  • Sticky Note

    Ce noeud crée une note autocollante avec les spécifications de couleur et de contenu données.

  • Sticky Note1

    Ce noeud génère une note autocollante avec des dimensions personnalisées et un contenu spécifique.

  • Sticky Note2

    Ce noeud crée une note autocollante avec des dimensions et une couleur définies.

  • Schedule Trigger

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

  • Filter the table for the day's post

    Ce noeud filtre les données d'une table Notion pour récupérer les publications du jour.

  • Fetch the content on the page

    Ce noeud récupère le contenu d'un bloc spécifique sur une page Notion.

  • Aggregate the Notion blocks

    Ce noeud agrège les blocs Notion selon les options et champs spécifiés.

  • Format the post

    Ce noeud formate le contenu d'un post en utilisant du code JavaScript.

  • Download image

    Ce noeud télécharge une image à partir d'une URL donnée.

  • Publish on LinkedIn

    Ce noeud publie un message sur LinkedIn avec le texte et les options spécifiés.

  • Update post status in notion database

    Ce noeud met à jour le statut d'un post dans une base de données Notion.

  • Sticky Note3

    Ce noeud crée une note autocollante avec des dimensions et un contenu définis.

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

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "id": "0pVPSW4PzJZLLqSf",
  "meta": {
    "instanceId": "8e47d02981c11ba904b56e6bd77877c35ef5c9aa1cdc4076bcb72bbb235efa38"
  },
  "name": "Notion to Linkedin",
  "tags": [],
  "nodes": [
    {
      "id": "d922cf0c-f1c2-40ff-927c-d0d3e2fb7f27",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        2140,
        460
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combinationMode": "mergeByPosition"
      },
      "typeVersion": 2.1
    },
    {
      "id": "8c5f68d8-f11d-4b37-b0d8-3abd1b681b56",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        780,
        440
      ],
      "parameters": {
        "color": 4,
        "height": 141.4092845296238,
        "content": "## Start the flow every day at the same time"
      },
      "typeVersion": 1
    },
    {
      "id": "d10de4f3-6e90-474f-bd68-25aae2037b7b",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1240,
        312.5835468325357
      ],
      "parameters": {
        "color": 6,
        "width": 367.12018536439575,
        "height": 382.294335406698,
        "content": "## Fetch the day's post from my Notion database"
      },
      "typeVersion": 1
    },
    {
      "id": "a63bcc85-ec8b-424f-a53c-e4c07db3c7c8",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1642.6949426092506,
        313.81962236044654
      ],
      "parameters": {
        "color": 6,
        "width": 627.4768047417825,
        "height": 380.3367219655605,
        "content": "## Process and format the post"
      },
      "typeVersion": 1
    },
    {
      "id": "d7c0f13c-ebbe-4000-bd8f-d1180d65d02a",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        1060,
        460
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 15
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7bebcb2d-1642-48ce-a511-bb0f561ca5cf",
      "name": "Filter the table for the day's post",
      "type": "n8n-nodes-base.notion",
      "position": [
        1280,
        460
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "key": "Date|date",
              "date": "={{ $today.format(\"yyyy/mM/dd\") }}",
              "condition": "equals"
            }
          ]
        },
        "options": {},
        "resource": "databasePage",
        "operation": "getAll",
        "databaseId": {
          "__rl": true,
          "mode": "list",
          "value": "f09dc21b-1070-4d5a-bf7f-a9ab3dbb69fb",
          "cachedResultUrl": "https://www.notion.so/f09dc21b10704d5abf7fa9ab3dbb69fb",
          "cachedResultName": "Postagens"
        },
        "filterType": "manual"
      },
      "credentials": {
        "notionApi": {
          "id": "faERNMuBrkAfVaJR",
          "name": "Notion Weck"
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "ee61bc59-164b-45b4-8b49-57cdba7d298b",
      "name": "Fetch the content on the page",
      "type": "n8n-nodes-base.notion",
      "position": [
        1480,
        460
      ],
      "parameters": {
        "blockId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $json.url }}"
        },
        "resource": "block",
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "notionApi": {
          "id": "faERNMuBrkAfVaJR",
          "name": "Notion Weck"
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "52d1ffef-11e8-4635-bbb8-05e915034379",
      "name": "Aggregate the Notion blocks",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1680,
        460
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "content"
            },
            {
              "fieldToAggregate": "image.file.url"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "8617c530-382b-402b-9c0b-aeb4df2bb920",
      "name": "Format the post",
      "type": "n8n-nodes-base.code",
      "position": [
        1900,
        360
      ],
      "parameters": {
        "jsCode": "const notionData = items[0].json.content;\n\nlet formattedText = notionData[0] \n\nfor (let i = 1; i < notionData.length; i++) {\n    if (notionData[i].startsWith('-')) {\n        formattedText += '\\n\\n' + notionData[i];\n    } else {\n        formattedText += '\\n' + notionData[i];\n    }\n}\n\nreturn [{ formattedText: formattedText }];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "0f226cfe-eb31-469a-8e7c-a21192adbd4c",
      "name": "Download image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1900,
        560
      ],
      "parameters": {
        "url": "={{ $json.url[0] }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "81a1e39c-c7ea-4635-84fc-a8ae05cfd8f3",
      "name": "Publish on LinkedIn",
      "type": "n8n-nodes-base.linkedIn",
      "position": [
        2360,
        460
      ],
      "parameters": {
        "text": "={{ $json.formattedText }}",
        "person": "CcS-_lLyzG",
        "additionalFields": {},
        "shareMediaCategory": "IMAGE"
      },
      "credentials": {
        "linkedInOAuth2Api": {
          "id": "HZbihVPNwXzWRzgU",
          "name": "LinkedIn account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "61b92eb8-1bf8-4e57-9e07-1a39e457ecfb",
      "name": "Update post status in notion database",
      "type": "n8n-nodes-base.notion",
      "position": [
        2620,
        460
      ],
      "parameters": {
        "pageId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('Filter the table for the day\\'s post').item.json.url }}"
        },
        "options": {},
        "resource": "databasePage",
        "operation": "update",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Status|select",
              "selectValue": "Published"
            }
          ]
        }
      },
      "credentials": {
        "notionApi": {
          "id": "faERNMuBrkAfVaJR",
          "name": "Notion Weck"
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "397f3772-bb2b-4e58-99f8-2b62cc514b7a",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        760,
        120
      ],
      "parameters": {
        "color": 3,
        "width": 567.6073693795047,
        "height": 137.6834217043934,
        "content": "## 1. Setup\nSet up your Notion and LinkedIn credentials.\nAttention to the LinkedIn credential: to post on your personal or company profile, you need to have a company page assigned to your profile. After that, you can choose where you want to post."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "executionOrder": "v1",
    "executionTimeout": 30,
    "saveManualExecutions": true
  },
  "versionId": "d6f51bb9-7320-4984-a009-b0f49073349a",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Publish on LinkedIn",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download image": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Format the post": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Filter the table for the day's post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Publish on LinkedIn": {
      "main": [
        [
          {
            "node": "Update post status in notion database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate the Notion blocks": {
      "main": [
        [
          {
            "node": "Format the post",
            "type": "main",
            "index": 0
          },
          {
            "node": "Download image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch the content on the page": {
      "main": [
        [
          {
            "node": "Aggregate the Notion blocks",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter the table for the day's post": {
      "main": [
        [
          {
            "node": "Fetch the content on the page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Notion, LinkedIn, publication : pour qui est ce workflow ?

Ce workflow s'adresse aux équipes marketing, aux créateurs de contenu et aux professionnels souhaitant automatiser la publication de leurs posts sur LinkedIn à partir de Notion. Il est idéal pour les entreprises de toutes tailles qui cherchent à optimiser leur présence en ligne sans nécessiter de compétences techniques avancées.

Workflow n8n Notion, LinkedIn, publication : problème résolu

Ce workflow résout le problème de la gestion manuelle des publications sur LinkedIn, qui peut être chronophage et sujet à des erreurs. En automatisant ce processus, les utilisateurs éliminent les frustrations liées à la planification et à la publication manuelle, tout en s'assurant que leur contenu est partagé de manière cohérente et en temps voulu. Cela permet également d'augmenter l'engagement et la visibilité de leur marque sur les réseaux sociaux.

Workflow n8n Notion, LinkedIn, publication : étapes du workflow

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

  • Étape 1 : Il filtre les publications du jour dans la base de données Notion pour identifier celles à partager.
  • Étape 2 : Le contenu est récupéré et agrégé à partir des blocs Notion.
  • Étape 3 : Le contenu est formaté à l'aide d'un script JavaScript pour s'assurer qu'il est prêt pour LinkedIn.
  • Étape 4 : Une image est téléchargée via une requête HTTP pour accompagner le post.
  • Étape 5 : Le contenu formaté est publié sur LinkedIn.
  • Étape 6 : L'état du post est mis à jour dans la base de données Notion pour garder une trace des publications.

Workflow n8n Notion, LinkedIn, publication : guide de personnalisation

Pour personnaliser ce workflow, vous pouvez modifier le déclencheur programmé en ajustant la règle de planification selon vos besoins. Vous pouvez également adapter les filtres appliqués lors de la récupération des publications dans Notion pour cibler des contenus spécifiques. N'oubliez pas de vérifier et d'ajuster les paramètres de téléchargement d'image pour vous assurer que les images appropriées sont utilisées. Enfin, vous pouvez personnaliser le formatage du contenu en modifiant le code JavaScript pour répondre à vos exigences de style et de présentation sur LinkedIn.