{
  "name": "Generate LinkedIn activity reports via Slack commands with GPT-4.1 and email",
  "nodes": [
    {
      "id": "95f47a65-415c-4915-a9b0-fc272958edb1",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        0,
        0
      ]
    },
    {
      "id": "e9e68ae9-d835-4580-a73f-b11c66aac32b",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1872,
        -96
      ]
    },
    {
      "id": "c8643766-8325-495e-8d2c-a02312585c64",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2272,
        112
      ]
    },
    {
      "id": "be2accab-b963-4aed-9280-76d427e93597",
      "name": "Summer McBriefing",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2080,
        -96
      ]
    },
    {
      "id": "853a0068-09e8-4368-a735-a1e149549fc2",
      "name": "HTML",
      "type": "n8n-nodes-base.html",
      "position": [
        2528,
        -96
      ]
    },
    {
      "id": "af48e025-998b-4711-aa79-dd2241234a25",
      "name": "Send report via Email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        2736,
        -96
      ]
    },
    {
      "id": "1a5ff79c-1fe3-4df6-bd1e-2a4c0057c531",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2960,
        -112
      ],
      "parameters": {
        "width": 320,
        "height": 144,
        "content": "## Questions or Feedback?\n\n📧 emir.belkahia@gmail.com  \n💼 [linkedin.com/in/emirbelkahia](https://www.linkedin.com/in/emirbelkahia/)"
      }
    },
    {
      "id": "38325b74-a6ad-4113-a296-4de8de4462dc",
      "name": "Tell on slack that no full name was found",
      "type": "n8n-nodes-base.slack",
      "position": [
        640,
        336
      ]
    },
    {
      "id": "78626cb3-6788-42c2-9eba-bea75a2fc638",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        544,
        288
      ],
      "parameters": {
        "width": 304,
        "height": 320,
        "content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## Error handling\nNo full name found in the slack command."
      }
    },
    {
      "id": "399b976a-3c5a-4f6f-a79f-b6fb356dd61f",
      "name": "GPT 4.1-mini for classification",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        160,
        192
      ]
    },
    {
      "id": "fdcd4e6b-6e08-466c-9c06-d8d8517bb50b",
      "name": "Do we have a full name ?",
      "type": "@n8n/n8n-nodes-langchain.textClassifier",
      "position": [
        208,
        0
      ]
    },
    {
      "id": "95d18f4f-c8ee-43ba-88a9-527829a23061",
      "name": "GPT 4.1-mini to extract firstName + lastName",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        640,
        96
      ]
    },
    {
      "id": "cc26d2f5-4377-4f78-8f7b-13cae8edeedb",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -288
      ],
      "parameters": {
        "width": 880,
        "height": 832,
        "content": "# Slack Slash Command: LinkedIn Profile Recent Activity Summary\n- Run `/check-linkedin [firstName lastName]` in Slack to get an AI-powered brief on someone's LinkedIn activity.\n- Get instant context b"
      }
    },
    {
      "id": "0d1bb4d7-213e-4978-bc30-eb54dfdcaa4b",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -32,
        -336
      ],
      "parameters": {
        "width": 912,
        "height": 1008,
        "content": "## Slack Intake & Command Parsing\nFrom /check-linkedin trigger to the point where you extract a clear First Name and a clear Last Name"
      }
    },
    {
      "id": "a5380069-f6e2-45c8-9054-9f82982c75a4",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        944,
        -352
      ],
      "parameters": {
        "width": 816,
        "height": 496,
        "content": "## Data Gathering via ApiFy\nThe four ApiFy nodes responsible for fetching LinkedIn data:\n- We get the profile URL from the First Name and Last Name\n- Then we scrap the recent posts of this profile URL"
      }
    },
    {
      "id": "f2439c0b-f6dc-4d35-829d-ee0946c78002",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1824,
        -352
      ],
      "parameters": {
        "width": 592,
        "height": 768,
        "content": "## Summarization & Intelligence Layer\nConsolidate the raw data and generate a clean, human-readable summary.\n- Merge JSON\n- GPT 4.1 (LLM summarization)\n- Formatter to get a consistent output format\n\n💰"
      }
    },
    {
      "id": "a967607c-de2b-4dce-9571-2cb98d48f4ae",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        -352
      ],
      "parameters": {
        "width": 416,
        "height": 768,
        "content": "## HTML Output & Response via Email\nFormat in HTML and send the result back via email to the requester."
      }
    },
    {
      "id": "69c0d193-2864-45a0-b053-d9ebccea2561",
      "name": "Extract firstName and lastName",
      "type": "@n8n/n8n-nodes-langchain.informationExtractor",
      "position": [
        560,
        -96
      ]
    },
    {
      "id": "eeae4a59-1f6a-4227-9329-f15d42dbefa5",
      "name": "Get Linkedin Profile URL",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        1200,
        -96
      ]
    },
    {
      "id": "b1e5322d-e8c2-43da-b58a-d300a4615968",
      "name": "Find Linkedin Profile",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        992,
        -96
      ]
    },
    {
      "id": "f82112e5-7c7e-4a82-b5ab-5291971ea83d",
      "name": "Scrap what this person posted recently",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        1408,
        -96
      ]
    },
    {
      "id": "c43e8ab6-e80f-40f6-9f1d-05578ae31ed4",
      "name": "Structure recent posts",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        1600,
        -96
      ]
    },
    {
      "id": "db0f0a46-4a09-493c-ae47-a68de7477131",
      "name": "GPT 4.1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2000,
        112
      ]
    },
    {
      "id": "644f0556-3a48-4e63-b80b-54c724c30cf4",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        592
      ],
      "parameters": {
        "width": 880,
        "height": 576,
        "content": "# 🎙️ Video Walkthrough\n@[youtube](-4VwNYsOIPc)"
      }
    }
  ],
  "connections": {
    "HTML": {
      "main": [
        [
          {
            "node": "Send report via Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT 4.1": {
      "ai_languageModel": [
        [
          {
            "node": "Summer McBriefing",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Webhook": {
      "main": [
        [
          {
            "node": "Do we have a full name ?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "Summer McBriefing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Summer McBriefing": {
      "main": [
        [
          {
            "node": "HTML",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Find Linkedin Profile": {
      "main": [
        [
          {
            "node": "Get Linkedin Profile URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structure recent posts": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Do we have a full name ?": {
      "main": [
        [
          {
            "node": "Extract firstName and lastName",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Tell on slack that no full name was found",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Linkedin Profile URL": {
      "main": [
        [
          {
            "node": "Scrap what this person posted recently",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Summer McBriefing",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Extract firstName and lastName": {
      "main": [
        [
          {
            "node": "Find Linkedin Profile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT 4.1-mini for classification": {
      "ai_languageModel": [
        [
          {
            "node": "Do we have a full name ?",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Scrap what this person posted recently": {
      "main": [
        [
          {
            "node": "Structure recent posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT 4.1-mini to extract firstName + lastName": {
      "ai_languageModel": [
        [
          {
            "node": "Extract firstName and lastName",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}