From eeefdf047ac64e352467ce8a3308744eb8756d87 Mon Sep 17 00:00:00 2001 From: nusquama Date: Wed, 12 Nov 2025 19:03:33 +0100 Subject: [PATCH] creation --- ...ent_with_phantombuster_openai_gpt_google_sheets_tracking.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 workflows/Automate LinkedIn Engagement with Phantombuster, OpenAI GPT & Google Sheets Tracking-4586/automate_linkedin_engagement_with_phantombuster_openai_gpt_google_sheets_tracking.json diff --git a/workflows/Automate LinkedIn Engagement with Phantombuster, OpenAI GPT & Google Sheets Tracking-4586/automate_linkedin_engagement_with_phantombuster_openai_gpt_google_sheets_tracking.json b/workflows/Automate LinkedIn Engagement with Phantombuster, OpenAI GPT & Google Sheets Tracking-4586/automate_linkedin_engagement_with_phantombuster_openai_gpt_google_sheets_tracking.json new file mode 100644 index 000000000..aa37dba7b --- /dev/null +++ b/workflows/Automate LinkedIn Engagement with Phantombuster, OpenAI GPT & Google Sheets Tracking-4586/automate_linkedin_engagement_with_phantombuster_openai_gpt_google_sheets_tracking.json @@ -0,0 +1 @@ +{"id":"kMppQ9OLVQ08LU6M","meta":{"instanceId":"84ad02d6104594179f43f1ce9cfe3a81637b2faedb57dafcb9e649b7542988db","templateCredsSetupCompleted":true},"name":"LinkedIn Post Engagement using Phantombuster","tags":[],"nodes":[{"id":"9374a17f-fb35-4862-ba86-d52d0c616ee6","name":"Daily Trigger - 9 AM","type":"n8n-nodes-base.scheduleTrigger","position":[0,0],"parameters":{"rule":{"interval":[{"triggerAtHour":9}]}},"typeVersion":1.2},{"id":"c71ab77a-b12d-4966-a33f-d7204f5d31fd","name":"LinkedIn Posts Scraper","type":"n8n-nodes-base.httpRequest","position":[220,0],"parameters":{"url":"https://api.phantombuster.com/api/v2/agent/launch","method":"POST","options":{},"jsonBody":"{\n \"id\": \"YOUR_AGENT_ID\",\n \"arguments\": {\n \"profileUrls\": [\n \"https://www.linkedin.com/in/USERNAME/\"\n ],\n \"numberOfPosts\": 1\n },\n \"save\": false\n}","sendBody":true,"sendHeaders":true,"specifyBody":"json","headerParameters":{"parameters":[{"name":"X-Phantombuster-Key-1","value":"YOUR_API_KEY"}]}},"typeVersion":4.2},{"id":"9b7dc781-3726-4ce0-a551-57f3b304aebd","name":"Fetch Scraper Results","type":"n8n-nodes-base.httpRequest","position":[440,0],"parameters":{"url":"https://api.phantombuster.com/api/v2/agent/fetch-output","options":{},"sendQuery":true,"sendHeaders":true,"queryParameters":{"parameters":[{"name":"id","value":"YOUR_AGENT_ID"}]},"headerParameters":{"parameters":[{"name":"X-Phantombuster-Key-1","value":"YOUR_API_KEY"}]}},"typeVersion":4.2},{"id":"f7f1e974-9522-4692-9af8-1674bac0341a","name":"Commenter Agent","type":"@n8n/n8n-nodes-langchain.agent","position":[940,0],"parameters":{"text":"=You are a professional LinkedIn marketer. Your job is to write engaging, thoughtful, and relevant comments for posts to increase visibility and connection with the author.\n\nHere is the latest LinkedIn post:\n\nAuthor: {{ $json.authorName }}\nProfile: {{ $json.authorProfile }}\nPost URL: {{ $json.postUrl }}\nDate: {{ $json.date }}\nContent:\n\"\"\"\n{{ $json.text }}\n\"\"\"\n\nWrite a concise and personalized comment (1โ€“2 sentences max) that:\n- Adds value to the conversation\n- Feels human and not generic\n- Avoids spammy language\n- Uses a positive and professional tone\n\nOnly return the comment text. Do not include quotation marks or any intro.","options":{},"promptType":"define"},"typeVersion":1.9},{"id":"d58b36e6-b24b-450b-9577-2da590c51d96","name":"Comment Generation Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[880,240],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4o-mini"},"options":{}},"credentials":{"openAiApi":{"id":"wYwTjEv45IzlAOAu","name":"OpenAi account 2"}},"typeVersion":1.2},{"id":"cd761bd8-1d94-4e28-ade5-a4e69b463124","name":"Like LinkedIn Post","type":"n8n-nodes-base.httpRequest","position":[1760,-140],"parameters":{"url":"https://api.phantombuster.com/api/v2/agent/launch","method":"POST","options":{},"jsonBody":"={\n \"id\": \"YOUR_LIKER_AGENT_ID\",\n \"arguments\": {\n \"postUrls\": [\n {{ $('Fetch Scraper Results').item.json.postUrl }}\n ]\n },\n \"save\": false\n}","sendBody":true,"sendHeaders":true,"specifyBody":"json","headerParameters":{"parameters":[{"name":"X-Phantombuster-Key-1","value":"YOUR_API_KEY"}]}},"typeVersion":4.2},{"id":"337498aa-ee44-4f92-bd46-7bbdc982960d","name":"Post LinkedIn Comment","type":"n8n-nodes-base.httpRequest","position":[1760,140],"parameters":{"url":"https://api.phantombuster.com/api/v2/agent/launch","method":"POST","options":{},"jsonBody":"={\n \"id\": \"YOUR_COMMENTER_AGENT_ID\",\n \"arguments\": {\n \"postUrls\": [\n {{ $('Fetch Scraper Results').item.json.postUrl }}\n ],\n \"comments\": [\n {{ $json.output }}\n ]\n },\n \"save\": false\n}","sendBody":true,"sendHeaders":true,"specifyBody":"json","headerParameters":{"parameters":[{"name":"X-Phantombuster-Key-1","value":"YOUR_API_KEY"}]}},"typeVersion":4.2},{"id":"27e6fab8-c8e9-4613-a8c1-1fb8306b9c46","name":"Log Activity to Sheet","type":"n8n-nodes-base.googleSheets","position":[2360,-20],"parameters":{"columns":{"value":{"Comment":"={{ $('Commenter Agent').item.json.output }}","PostUrl":"={{ $('Fetch Scraper Results').item.json.postUrl }}","Post text":"={{ $('Fetch Scraper Results').item.json.text }}","Timestamp":"={{ $('Fetch Scraper Results').item.json.timestamp }}","AuthorName":"={{ $('Fetch Scraper Results').item.json.authorName }}","AuthorProfile":"={{ $('Fetch Scraper Results').item.json.authorProfile }}"},"schema":[{"id":"AuthorName","type":"string","display":true,"required":false,"displayName":"AuthorName","defaultMatch":false,"canBeUsedToMatch":true},{"id":"AuthorProfile","type":"string","display":true,"required":false,"displayName":"AuthorProfile","defaultMatch":false,"canBeUsedToMatch":true},{"id":"PostUrl","type":"string","display":true,"required":false,"displayName":"PostUrl","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post text","type":"string","display":true,"required":false,"displayName":"Post text","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Comment","type":"string","display":true,"required":false,"displayName":"Comment","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Timestamp","type":"string","display":true,"required":false,"displayName":"Timestamp","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk/edit#gid=0","cachedResultName":"Sheet1"},"documentId":{"__rl":true,"mode":"list","value":"15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk","cachedResultUrl":"https://docs.google.com/spreadsheets/d/15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk/edit?usp=drivesdk","cachedResultName":"LinkedIn auto liker and commenter"}},"credentials":{"googleSheetsOAuth2Api":{"id":"K5yYfUnKFTqaRn6A","name":"Google Sheets account"}},"typeVersion":4.5},{"id":"6f8ccb5f-ddfd-4524-8098-51f027712203","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-40,-760],"parameters":{"color":3,"width":640,"height":940,"content":"## ๐Ÿ”น **Section 1: Trigger and Data Collection**\n\n### ๐Ÿ“Nodes Involved:\n\n* `Daily Trigger - 9 AM`\n* `Start LinkedIn Posts Scraper`\n* `Fetch Scraper Results`\n\n### โœ… **Purpose:**\n\nThis section is responsible for **automatically collecting LinkedIn post data** every day at a specific time.\n\n### ๐Ÿ” **Details:**\n\n1. **Daily Trigger - 9 AM**\n\n * Starts the workflow automatically every day at 9 AM.\n * Ensures the process runs consistently without manual intervention.\n\n2. **Start LinkedIn Posts Scraper**\n\n * Sends a `POST` request to Phantombuster's API.\n * Starts the \"LinkedIn Profile Posts Scraper\" Phantom to collect recent LinkedIn posts from specified profiles.\n\n3. **Fetch Scraper Results**\n\n * Sends a `GET` request to retrieve the output from the scraping job.\n * Extracts post data such as post ID, content, author, timestamp, etc.\n"},"typeVersion":1},{"id":"eca7d2c9-342f-4db0-a6b1-c5132f0af256","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[800,-680],"parameters":{"color":5,"width":580,"height":1080,"content":"## ๐Ÿ”น **Section 2: AI-Based Content Analysis and Comment Generation**\n\n### ๐Ÿ“Nodes Involved:\n\n* `Generate LinkedIn Comment`\n* `Comment Generation Model`\n\n### โœ… **Purpose:**\n\nTo **analyze the content of each scraped LinkedIn post** and use AI to generate relevant and context-aware comments.\n\n### ๐Ÿ” **Details:**\n\n1. **Generate LinkedIn Comment**\n\n * Acts as the AI Agent that facilitates the interaction between the post content and the AI model.\n * Prepares the data (e.g., extracts post content) and sends it to the model.\n\n2. **Comment Generation Model**\n\n * Powered by OpenAI's language model.\n * Processes the post content and returns a thoughtful, engaging comment tailored to the post topic."},"typeVersion":1},{"id":"c47a8e47-cab6-4e47-90d9-41c6e5b56189","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[1580,-820],"parameters":{"color":7,"width":460,"height":1140,"content":"## ๐Ÿ”น **Section 3: Post Engagement Automation**\n\n### ๐Ÿ“Nodes Involved:\n\n* `Like LinkedIn Post`\n* `Post LinkedIn Comment`\n\n### โœ… **Purpose:**\n\nTo **interact with LinkedIn posts** by liking and commenting using the generated content.\n\n### ๐Ÿ” **Details:**\n\n1. **Like LinkedIn Post**\n\n * Sends a `POST` request to Phantombuster to like the LinkedIn post.\n * This increases engagement and visibility.\n\n2. **Post LinkedIn Comment**\n\n * Sends a `POST` request with the AI-generated comment to the LinkedIn post.\n * Engages the post author and audience in a meaningful way.\n"},"typeVersion":1},{"id":"36083131-b3de-4d8c-8d7c-941368fb6312","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[2180,-560],"parameters":{"color":2,"width":480,"height":720,"content":"## ๐Ÿ”น **Section 4: Result Logging and Storage**\n\n### ๐Ÿ“Nodes Involved:\n\n* `Log Activity to Sheet`\n\n### โœ… **Purpose:**\n\nTo **store all the interactions and results in a structured format** for tracking and analysis.\n\n### ๐Ÿ” **Details:**\n\n1. **Log Activity to Sheet**\n\n * Appends data (e.g., post URL, comment, status, timestamp) to a Google Sheets document.\n * Helps maintain records, monitor performance, and debug issues if necessary.\n\n"},"typeVersion":1},{"id":"9f6c0756-449a-45c4-ab49-080576be9651","name":"Sticky Note9","type":"n8n-nodes-base.stickyNote","position":[-1920,-760],"parameters":{"color":4,"width":1300,"height":320,"content":"=======================================\n WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n - YouTube: https://www.youtube.com/@YaronBeen/videos\n - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"},"typeVersion":1},{"id":"df8bc986-f7b8-4378-a0cd-737a15e0279e","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[-1920,-420],"parameters":{"color":4,"width":1289,"height":3378,"content":"# ๐Ÿ”„ **Automated LinkedIn Engagement Workflow**\n\nThis workflow is designed to **automate the process of collecting LinkedIn posts**, analyzing them with AI, **engaging with them** (liking and commenting), and **logging the actions** in Google Sheets. It runs **daily at 9 AM**, ensuring consistent and timely interaction.\n\n---\n\n## ๐Ÿงญ **Workflow Overview**\n\nThe workflow is divided into **4 key sections**:\n\n1. **Trigger & Data Collection**\n2. **AI Analysis & Comment Generation**\n3. **LinkedIn Post Engagement**\n4. **Logging & Storage**\n\nEach section is detailed below.\n\n---\n\n## ๐Ÿ”น Section 1: Trigger & Data Collection\n\n### ๐Ÿ“… **Node: `Daily Trigger - 9 AM`**\n\n* **Type**: Schedule Trigger\n* **Purpose**: Initiates the workflow every day at 9:00 AM automatically.\n* **Benefit**: Removes the need for manual execution, ensuring timely and consistent operation.\n\n---\n\n### ๐ŸŒ **Node: `Start LinkedIn Posts Scraper`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/โ€ฆ`\n* **Purpose**: Starts Phantombusterโ€™s โ€œLinkedIn Profile Posts Scraperโ€ Phantom.\n* **Function**: Sends a request to begin scraping recent posts from specified LinkedIn profiles.\n* **Input**: List of profile URLs, authentication details.\n\n---\n\n### ๐ŸŒ **Node: `Fetch Scraper Results`**\n\n* **Type**: HTTP Request (GET)\n* **Endpoint**: `https://api.phantombuster.com/โ€ฆ`\n* **Purpose**: Retrieves the results of the scraping operation.\n* **Output**: JSON data of LinkedIn posts (content, timestamp, author, URL, post ID).\n\n---\n\n## ๐Ÿ”น Section 2: AI Analysis & Comment Generation\n\n### ๐Ÿค– **Node: `Generate LinkedIn Comment`**\n\n* **Type**: AI Agent (Tool Integrator)\n* **Purpose**: Acts as the mediator between the scraped post content and the AI model.\n* **Function**:\n\n * Extracts post content from the fetched data.\n * Sends it to the AI for contextual understanding and comment generation.\n\n---\n\n### ๐Ÿง  **Node: `Comment Generation Model`**\n\n* **Type**: OpenAI Chat Model (e.g., GPT)\n* **Purpose**: Generates a personalized, thoughtful comment based on the LinkedIn post.\n* **Input**: Post content and context.\n* **Output**: Human-like comment relevant to the post's theme.\n\n---\n\n## ๐Ÿ”น Section 3: LinkedIn Post Engagement\n\n### ๐Ÿ‘ **Node: `Like LinkedIn Post`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/โ€ฆ`\n* **Purpose**: Likes the target LinkedIn post.\n* **Function**:\n\n * Increases post visibility.\n * Adds a lightweight engagement action before commenting.\n\n---\n\n### ๐Ÿ’ฌ **Node: `Post LinkedIn Comment`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/โ€ฆ`\n* **Purpose**: Posts the AI-generated comment to the post.\n* **Function**:\n\n * Completes the engagement cycle.\n * Ensures comments are context-aware and professional.\n\n---\n\n## ๐Ÿ”น Section 4: Logging & Storage\n\n### ๐Ÿ“„ **Node: `Log Activity to Sheet`**\n\n* **Type**: Google Sheets (Append)\n\n* **Purpose**: Logs all workflow results into a Google Sheet.\n\n* **Data Logged**:\n\n * Post URL\n * Post content (optional)\n * AI-generated comment\n * Status of like/comment actions\n * Timestamps\n\n* **Benefit**: Provides a centralized log for auditing, review, or further analytics.\n\n---\n\n## โœ… **Key Benefits of This Workflow**\n\n* **Automation**: Runs daily with zero manual effort.\n* **Intelligent Engagement**: AI-powered comment generation ensures relevance and tone.\n* **Tracking & Transparency**: Google Sheets logging ensures every step is recorded.\n* **Scalability**: Easily extendable to more profiles or engagement types.\n\n---\n\n## ๐Ÿ“ˆ **Future Enhancements (Suggestions)**\n\n* Add error handling and retry logic for failed API calls.\n* Include sentiment analysis to refine comment tone.\n* Enable Slack/Email alerts for daily summary.\n* Add filters to only comment on posts with certain keywords or engagement levels.\n\n"},"typeVersion":1}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"6db64df0-bacb-483a-833c-e23893831a22","connections":{"Commenter Agent":{"main":[[{"node":"Like LinkedIn Post","type":"main","index":0},{"node":"Post LinkedIn Comment","type":"main","index":0}]]},"Like LinkedIn Post":{"main":[[{"node":"Log Activity to Sheet","type":"main","index":0}]]},"Daily Trigger - 9 AM":{"main":[[{"node":"LinkedIn Posts Scraper","type":"main","index":0}]]},"Fetch Scraper Results":{"main":[[{"node":"Commenter Agent","type":"main","index":0}]]},"Post LinkedIn Comment":{"main":[[{"node":"Log Activity to Sheet","type":"main","index":0}]]},"LinkedIn Posts Scraper":{"main":[[{"node":"Fetch Scraper Results","type":"main","index":0}]]},"Comment Generation Model":{"ai_languageModel":[[{"node":"Commenter Agent","type":"ai_languageModel","index":0}]]}}} \ No newline at end of file