{"workflow":{"id":13304,"name":"Schedule approved LinkedIn page posts from Google Sheets with precise timing","views":82,"recentViews":0,"totalViews":82,"createdAt":"2026-02-11T13:54:36.016Z","description":"## Description\n\nAutomate LinkedIn organization page posting with precise time scheduling and Google Drive media management. Runs hourly during business hours, processes approved posts scheduled for today, waits until exact time, publishes to LinkedIn, and updates tracking sheet—perfect for maintaining consistent LinkedIn presence.\n\n---\n\n## What this workflow does\n\nThis workflow automates LinkedIn organization page posting with precise timing control and a centralized Google Sheets content calendar. It runs four times daily (9:45 AM, 10:45 AM, 11:45 AM, 12:45 PM) and reads your Google Sheet to find posts marked with Approval Status = \"Good\" and Platform = \"LinkedIn\" that are scheduled for today. Unlike batch processing workflows, this processes ONE post per run to prevent duplicate scheduling. Once it finds a post, it marks it as \"Scheduled\" in your sheet, then uses a Wait node to pause the workflow execution until the exact scheduled time (with automatic timezone conversion from Eastern to India time). At the scheduled moment, it either downloads an image from Google Drive and publishes a Creative Post, or publishes an Article link—depending on the Post Type. After successfully publishing to your LinkedIn organization page, it updates your Google Sheet with the live post URL and changes the Approval Status to \"Published\", creating a complete audit trail with precise timing control.\n\nPerfect for social media managers maintaining consistent LinkedIn presence, marketing agencies scheduling client LinkedIn content with approval checkpoints, content creators batch-planning professional posts, and teams needing collaborative LinkedIn calendars with exact time control.\n\n---\n\n## Key features\n\n**Precise time scheduling with Wait node:** Unlike immediate publishing, this workflow uses n8n's Wait node to pause execution until the exact scheduled time—ensuring posts publish at 10:00 AM sharp, not 9:45 AM when the workflow runs.\n\n**Timezone conversion included:** Automatically converts \"Scheduled On\" times from Eastern Time (content creator's timezone) to India Time (server timezone) using DateTime.fromFormat—no manual calculation needed.\n\n**One post per run:** Processes only the first pending post each time the workflow runs, preventing duplicate scheduling if multiple posts share the same time slot—ensures clean execution and tracking.\n\n**Dual post type support:** Handles both Creative Posts (image posts downloaded from Google Drive) and Articles (link posts with article URL)—automatically routes based on Post Type column.\n\n**LinkedIn organization posting:** Posts directly to your LinkedIn organization/company page (not personal profile) using LinkedIn Community Management API with proper OAuth authentication.\n\n**Status progression tracking:** Three-stage workflow: Good (approved) → Scheduled (waiting for time) → Published (live on LinkedIn)—always know what's queued vs. what's live.\n\n**Google Sheets content calendar:** Manage LinkedIn posts in a familiar spreadsheet with columns for Scheduled On, Platform, Post Type, Caption, Media URL, and Approval Status—no complex tools needed.\n\n**Google Drive media integration:** Stores images in Google Drive (centralized storage), then automatically downloads them when publishing Creative Posts—supports shared drives and private files.\n\n**Post URL tracking:** After publishing, updates Google Sheet with the live LinkedIn post URL (https://www.linkedin.com/feed/update/{urn})—enables easy performance tracking and reporting.\n\n**Runs during business hours only:** Schedule trigger fires at :45 minutes (9-12 AM) to catch morning posts—won't run at night or on weekends unless you modify the cron.\n\n---\n\n## How it works\n\n### 1. Hourly trigger during business hours\nA cron trigger runs at 9:45 AM, 10:45 AM, 11:45 AM, and 12:45 PM every day. The :45 timing gives a 15-minute buffer before the hour to schedule posts for :00, :15, :30, or :45 times.\n\n### 2. Load LinkedIn credentials\nThe workflow reads a separate \".env\" sheet in your Google Sheets document containing:\n- **LinkedIn Organization ID:** Your company page's unique ID (e.g., 56420402)\n- Other LinkedIn-specific configuration\n\nThis centralizes credentials so multiple workflows can share the same settings.\n\n### 3. Fetch approved LinkedIn posts\nThe workflow reads your main \"Post URL\" sheet and applies two filters:\n- **Approval Status = \"Good\":** Only processes approved posts\n- **Platform = \"LinkedIn\":** Filters out Facebook, Instagram, etc.\n\nThis returns all approved LinkedIn posts regardless of date.\n\n### 4. Filter posts scheduled for today\nA Code node compares the \"Scheduled On\" column value against today's date (ignores time, just checks the date part). Only posts scheduled for today pass through.\n\n**Supported date format:**\n- \"2025-10-30 10:00\" (YYYY-MM-DD HH:MM)\n- Time uses 24-hour format\n\n### 5. Process first post only\n**Critical difference from Facebook workflow:** A Code node extracts only the FIRST item from the filtered posts.\n\n**Why only one post?**\n- Prevents duplicate scheduling if workflow runs multiple times\n- Wait node works on single execution paths\n- Ensures precise timing per post\n- Next run will pick up the next pending post\n\n### 6. Route by post type\nA Switch node checks the Post Type column:\n- **Output 0 (Creative Post):** Posts with images (routes to Branch A)\n- **Output 1 (Article):** Posts with article links (routes to Branch B)\n\n---\n\n### Branch A: Creative Post with Image\n\n### 7a. Mark as scheduled in sheet\nBefore waiting, the workflow updates the Google Sheet:\n- **Approval Status:** \"Scheduled\"\n\nThis prevents the same post from being picked up again in the next hourly run.\n\n### 8a. Wait until scheduled time\n**Most critical node:** The Wait node pauses workflow execution until the exact scheduled time.\n\n**Timezone conversion logic:**\n```javascript\nDateTime.fromFormat(\n  $('Route by Post Type').item.json['Scheduled On'],\n  'yyyy-MM-dd HH-mm',\n  { zone: 'America/New_York' }  // Input timezone (Eastern)\n)\n.setZone('Asia/Kolkata')        // Server timezone (India)\n.toFormat(\"yyyy-MM-dd'T'HH:mm:ss\")\n```\n\n**Example:**\n- Sheet value: \"2025-10-30 14:00\" (Eastern Time)\n- Converted to: \"2025-10-30T23:30:00\" (India Time)\n- Workflow resumes at exactly 11:30 PM India time = 2:00 PM Eastern\n\n### 9a. Prepare post data\nAggregate node (keeps data structure intact for next nodes).\n\n### 10a. Download image from Google Drive\nUses the Media URL (Google Drive sharing link) to download the image file. Supports:\n- Direct Google Drive file URLs\n- Shared Drive files\n- Public or private files (as long as OAuth account has access)\n\nThe image is downloaded as binary data.\n\n### 11a. Publish creative post to LinkedIn\nUses n8n's LinkedIn node with these settings:\n- **Authentication:** communityManagement (LinkedIn Community Management API)\n- **Post as:** organization\n- **Organization:** 56420402 (your company page ID)\n- **Text:** Caption from Google Sheet\n- **Share media category:** IMAGE\n- **Binary data:** Downloaded image\n\nThe LinkedIn API returns a URN (unique post identifier).\n\n### 12a. Save post URL & mark published\nConstructs the LinkedIn post URL:\n```\nhttps://www.linkedin.com/feed/update/{urn}\n```\n\nThen updates the Google Sheet row:\n- **Approval Status:** \"Published\"\n- **Post URL:** Constructed LinkedIn URL\n\n---\n\n### Branch B: Article Post with Link\n\n### 7b. Mark article as scheduled\nUpdates Google Sheet: **Approval Status = \"Scheduled\"**\n\n### 8b. Wait until article scheduled time\nSame Wait node logic as Creative Posts—pauses until exact scheduled time with timezone conversion.\n\n### 9b. Prepare article data\nAggregate node.\n\n### 10b. Publish article link to LinkedIn\nUses LinkedIn node with these settings:\n- **Authentication:** communityManagement\n- **Post as:** organization\n- **Organization:** 56420402\n- **Text:** Caption from Google Sheet\n- **Share media category:** ARTICLE\n- **Original URL:** Media URL (the article link)\n\nLinkedIn scrapes the article URL and creates a rich preview card.\n\n### 11b. Save article URL & mark published\nSame as Creative Posts—constructs post URL and updates sheet with \"Published\" status.\n\n---\n\n## Setup requirements\n\n**Tools you'll need:**\n\n- Active n8n instance (self-hosted or n8n Cloud)\n- Google Sheets with OAuth access\n- Google Drive with OAuth access\n- LinkedIn organization/company page (not personal profile)\n- LinkedIn Community Management API credentials\n\n**Estimated setup time:** 35–40 minutes\n\n---\n\n## Configuration steps\n\n### 1. Set up LinkedIn Community Management API\n- Go to [LinkedIn Developer Console](https://www.linkedin.com/developers/)\n- Create an app (or use existing)\n- Add \"Community Management API\" product\n- Request access for your organization page\n- Under **Auth → OAuth 2.0 settings:**\n  - Add redirect URL: `https://your-n8n-instance.com/rest/oauth2-credential/callback`\n  - Note your Client ID and Client Secret\n- In n8n: **Credentials → Add credential → LinkedIn Community Management OAuth2 API**\n- Complete OAuth flow and select your organization page\n\n### 2. Find your LinkedIn Organization ID\n**Method 1 (URL):**\n- Go to your LinkedIn company page\n- URL will be: `https://www.linkedin.com/company/{company-name}/`\n- View page source and search for \"organizationId\"\n- Copy the numeric ID (e.g., 56420402)\n\n**Method 2 (API):**\n- Use LinkedIn API endpoint: `/v2/organizationalEntityAcls?q=roleAssignee`\n- Find your organization in the response\n\n### 3. Set up Google Sheets\n**Create two sheets in one Google Sheets document:**\n\n**Sheet 1: \".env\" (credentials)**\n| LinkedIn Organization ID |\n|---|\n| 56420402 |\n\n**Sheet 2: \"Post URL\" (content calendar)**\n| Scheduled On | Platform | Post Type | Caption | Media URL | Approval Status | Post URL | row_number |\n|---|---|---|---|---|---|---|---|\n| 2025-10-30 10:00 | LinkedIn | Creative Post | Excited to announce our new product! | https://drive.google.com/file/d/xxx | Good | | 1 |\n| 2025-10-30 14:00 | LinkedIn | Article | Check out our latest blog post | https://blog.example.com/post | Good | | 2 |\n\n**Important column details:**\n- **Scheduled On:** Format YYYY-MM-DD HH-MM (24-hour, Eastern Time)\n- **Platform:** Must be \"LinkedIn\" (case-sensitive)\n- **Post Type:** \"Creative Post\" (with image) or \"Article\" (with link)\n- **Caption:** Post text (LinkedIn supports up to 3,000 characters)\n- **Media URL:** Google Drive URL for Creative Post, article URL for Article\n- **Approval Status:** \"Good\" (publish), \"Pending\" (hold), \"Rejected\" (skip)\n- **Post URL:** Leave empty (auto-filled after publishing)\n- **row_number:** Auto-generated by Google Sheets\n\n### 4. Connect Google Sheets OAuth\n- In n8n: **Credentials → Add credential → Google Sheets OAuth2 API**\n- Complete OAuth authentication\n- Update these nodes with your sheet URL:\n  - \"Load LinkedIn Organization Credentials\" → .env sheet\n  - \"Fetch Approved LinkedIn Posts\" → Post URL sheet\n  - \"Mark as Scheduled in Sheet\" → Post URL sheet\n  - \"Save Post URL & Mark Published\" → Post URL sheet\n  - \"Mark Article as Scheduled\" → Post URL sheet\n  - \"Save Article URL & Mark Published\" → Post URL sheet\n\n### 5. Connect Google Drive OAuth\n- In n8n: **Credentials → Add credential → Google Drive OAuth2 API**\n- Complete OAuth authentication\n- Open \"Download Image from Google Drive\" node\n- Select your Google Drive credential\n\n### 6. Update LinkedIn Organization ID\nOpen these nodes and replace \"56420402\" with your organization ID:\n- **\"Publish Creative Post to LinkedIn\"**\n- **\"Publish Article Link to LinkedIn\"**\n\n### 7. Adjust timezone (if needed)\nIf your content calendar uses a different timezone than Eastern:\n- Open \"Wait Until Scheduled Time\" node\n- Change `{ zone: 'America/New_York' }` to your timezone\n- Common values: 'America/Los_Angeles' (Pacific), 'UTC', 'Europe/London'\n\nIf your n8n server is not in India Time:\n- Change `.setZone('Asia/Kolkata')` to your server's timezone\n\n### 8. Test the workflow\n- Add a test post scheduled for 5 minutes from now\n- Set Platform = \"LinkedIn\", Post Type = \"Creative Post\", Approval Status = \"Good\"\n- Manually trigger the workflow (or wait for next hourly run)\n- Verify:\n  - Sheet updated to \"Scheduled\"\n  - Workflow execution shows as \"Waiting\" in n8n\n  - At scheduled time, post publishes to LinkedIn\n  - Sheet updated to \"Published\" with URL\n\n### 9. Activate the workflow\n- Toggle the workflow to **Active**\n- The workflow will now run automatically 4 times daily\n- Check your LinkedIn page to verify posts are publishing correctly\n\n---\n\n## Use cases\n\n**Social media managers:** Schedule 15-20 LinkedIn posts per week from one Google Sheet. Team members add content, you approve, workflow handles precise timing and publishing—no manual LinkedIn.com logins.\n\n**B2B marketing teams:** Maintain consistent LinkedIn company page presence with thought leadership articles, product updates, and team highlights. Schedule weeks in advance, let automation publish at optimal times.\n\n**Content creators:** Batch-create LinkedIn content on Mondays, schedule throughout the week with precise timing. Focus on creation, not distribution—workflow handles publishing.\n\n**Agencies managing client pages:** One Google Sheet per client, separate workflows per organization ID. Centralized content calendar with approval workflow before posting to client pages.\n\n**Recruiting teams:** Schedule hiring posts, culture updates, and employee spotlights to maintain active company presence. Track all post URLs for performance analysis.\n\n**Personal brands using company pages:** If you manage a LinkedIn company page for your personal brand or business, schedule promotional content, case studies, and announcements with professional timing control.\n\n---\n\n## Customization options\n\n### Process multiple posts per run\nChange \"Process First Post Only\" node logic:\n- Current: Returns only item 0\n- Modified: Return all items (use Loop node to process sequentially)\n- Note: Wait nodes won't work with loops—consider using scheduled_publish_time if LinkedIn API supports it\n\n### Change scheduling frequency\nEdit the \"Run Every Hour\" cron expression:\n- Current: `45 9-12 * * *` (9:45-12:45 AM hourly)\n- All day: `45 * * * *` (every hour at :45)\n- Business hours extended: `45 9-17 * * 1-5` (9 AM-5 PM, Monday-Friday)\n- Twice daily: `0 9,15 * * *` (9:00 AM and 3:00 PM)\n\n### Add video post support\nLinkedIn supports video posts via Community Management API:\n- Add \"Post Type\" = \"Video\"\n- Download video from Google Drive (instead of image)\n- Change share media category to VIDEO\n- Upload video to LinkedIn media upload endpoint first, then create post\n\n### Support personal profiles\nIf you want to post to personal profiles (not organization):\n- Change authentication from \"communityManagement\" to \"oAuth2\"\n- Change \"Post as\" from \"organization\" to \"person\"\n- Use LinkedIn OAuth2 API credentials (not Community Management)\n\n### Add Slack notifications\nAfter publishing nodes, add:\n- **Slack node** to send confirmation\n- **Format:** \"Published LinkedIn post: [URL] at [time]\"\n- **Include:** Post caption preview for context\n\n### Multi-organization support\nModify .env sheet to support multiple company pages:\n| Organization Name | LinkedIn Organization ID |\n|---|---|\n| Main Brand | 56420402 |\n| Sub Brand | 78901234 |\n\nAdd \"Organization Name\" column to Post URL sheet, then filter and route by organization.\n\n---\n\n## Troubleshooting\n\n### Posts not publishing\n- **OAuth expired:** Re-authenticate LinkedIn Community Management API credentials in n8n.\n- **Organization permissions:** Verify your LinkedIn account has admin/content creator role on the organization page.\n- **API access:** Ensure your LinkedIn app has Community Management API product added and approved.\n- **Organization ID wrong:** Double-check the ID matches your actual company page.\n\n### Wait node not working\n- **Scheduled time in past:** n8n Wait node requires future times. If \"Scheduled On\" is in the past when workflow runs, it fails. Ensure posts are scheduled for future times only.\n- **Timezone mismatch:** If posts publish at wrong times, verify timezone conversion is correct (Eastern → your server timezone).\n- **DateTime format error:** Ensure \"Scheduled On\" uses exactly \"YYYY-MM-DD HH-MM\" format with space between date and time.\n\n### Images not downloading from Google Drive\n- **OAuth expired:** Re-authenticate Google Drive credentials.\n- **File permissions:** Ensure the Google account connected to n8n has \"Viewer\" access to Drive files.\n- **Sharing link format:** Media URL must be full Google Drive URL (https://drive.google.com/file/d/FILE_ID/view), not shortened.\n\n### Multiple posts with same time\n- **Current limitation:** This workflow processes ONE post per run. If multiple posts share the same scheduled time, only the first will publish.\n- **Solution:** Stagger times by 1 minute (10:00, 10:01, 10:02) or modify workflow to process multiple posts.\n\n### Sheet not updating\n- **OAuth expired:** Re-authenticate Google Sheets credentials.\n- **Sheet name mismatch:** Verify sheet tab name is exactly \"Post URL\" and \".env\" (case-sensitive).\n- **row_number missing:** Ensure the sheet has a `row_number` column auto-generated by formula: `=ROW()-1`\n\n### Article previews not showing\n- **URL not accessible:** LinkedIn needs to scrape the article URL. Ensure it's publicly accessible (not behind login/paywall).\n- **No Open Graph tags:** Article pages need Open Graph meta tags (og:title, og:description, og:image) for LinkedIn to generate previews.\n- **LinkedIn cache:** Sometimes LinkedIn caches old previews. Use [LinkedIn Post Inspector](https://www.linkedin.com/post-inspector/) to refresh cache.\n\n---\n\n## Resources\n\n- [n8n documentation](https://docs.n8n.io/)\n- [LinkedIn Community Management API](https://docs.microsoft.com/en-us/linkedin/marketing/community-management/shares)\n- [LinkedIn OAuth Guide](https://docs.microsoft.com/en-us/linkedin/shared/authentication/authentication)\n- [Google Sheets API](https://developers.google.com/sheets/api)\n- [Google Drive API](https://developers.google.com/drive/api)\n- [n8n Wait node](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/)\n- [n8n LinkedIn node](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.linkedin/)\n\n---\n\n## Support\n\nNeed help or custom development?\n\n📧 Email: info@isawow.com  \n🌐 Website: https://isawow.com/","workflow":{"meta":{"instanceId":"bc8ca75c203589705ae2e446cad7181d6f2a7cc1766f958ef9f34810e53b8cb2"},"nodes":[{"id":"c3e34a88-f780-405c-9f56-e6a609d394ef","name":"Run Every Hour","type":"n8n-nodes-base.scheduleTrigger","position":[-1312,16],"parameters":{"rule":{"interval":[{"field":"cronExpression","expression":"45 9-12 * * *"}]}},"typeVersion":1.2},{"id":"30d3dec6-7680-4018-bca6-be912c72d5cb","name":"Load LinkedIn Organization Credentials","type":"n8n-nodes-base.googleSheets","position":[-1104,16],"parameters":{"sheetName":{"__rl":true,"mode":"list","value":"","cachedResultUrl":"","cachedResultName":""},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"313dc714-48f6-462b-9a86-a4b010dd4932","name":"Fetch Approved LinkedIn Posts","type":"n8n-nodes-base.googleSheets","position":[-896,16],"parameters":{"sheetName":{"__rl":true,"mode":"list","value":"","cachedResultUrl":"","cachedResultName":""},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"d08ff1e5-0996-49a3-b2d1-d355fc50e347","name":"Filter Posts Scheduled for Today","type":"n8n-nodes-base.code","position":[-688,16],"parameters":{"jsCode":"// Get today's date (just the date part, no time)\nconst today = new Date();\nconst todayDateString = today.toISOString().split('T')[0]; // Format: 2025-10-30\n\n// Filter items where Scheduled On matches today\nconst filteredItems = [];\n\nfor (const item of $input.all()) {\n  // Try different possible field names\n  const scheduledOn = item.json['Scheduled On'] || item.json['scheduled_on'] || item.json.scheduledOn;\n  \n  console.log(\"Scheduled On value:\", scheduledOn);\n  console.log(\"Type:\", typeof scheduledOn);\n  \n  if (scheduledOn) {\n    // Extract just the date part from the scheduled value\n    let scheduledDateString = '';\n    \n    if (typeof scheduledOn === 'string') {\n      // Extract YYYY-MM-DD from string like \"2025-10-30 10:00\" or \"2025-10-30 06-42\"\n      const dateMatch = scheduledOn.match(/(\\d{4}-\\d{2}-\\d{2})/);\n      if (dateMatch) {\n        scheduledDateString = dateMatch[1];\n      }\n    } else if (scheduledOn instanceof Date) {\n      scheduledDateString = scheduledOn.toISOString().split('T')[0];\n    }\n    \n    console.log(\"Extracted date:\", scheduledDateString);\n    console.log(\"Matches today?\", scheduledDateString === todayDateString);\n    \n    // If dates match, keep this item\n    if (scheduledDateString === todayDateString) {\n      filteredItems.push(item);\n    }\n  }\n}\n\nreturn filteredItems;"},"typeVersion":2},{"id":"0e655bcd-51ca-4504-911a-a976bf997e8b","name":"Process First Post Only","type":"n8n-nodes-base.code","position":[-480,16],"parameters":{"jsCode":"// Get all incoming items\nconst items = $input.all();\n\n// Return only the first item\nreturn [\n  items[0]\n];\n"},"typeVersion":2},{"id":"d4d889cc-29fd-452e-8edf-f765db5ac590","name":"Route by Post Type","type":"n8n-nodes-base.switch","position":[-272,16],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"62af730b-67b8-43a6-ad2d-3bc19807ae31","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json['Post Type'] }}","rightValue":"=Creative Post"}]}},{"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"77d31a46-40e7-4a8b-9757-657f8e957c64","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json['Post Type'] }}","rightValue":"Article"}]}}]},"options":{}},"typeVersion":3.3},{"id":"f868aab4-b455-413e-8973-55255732bb7c","name":"Mark as Scheduled in Sheet","type":"n8n-nodes-base.googleSheets","position":[0,0],"parameters":{"columns":{"value":{"row_number":"={{ $('Route by Post Type').item.json.row_number }}","Approval Status":"Scheduled"},"schema":[{"id":"Scheduled On","type":"string","display":true,"removed":true,"required":false,"displayName":"Scheduled On","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Platform","type":"string","display":true,"removed":true,"required":false,"displayName":"Platform","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post Type","type":"string","display":true,"removed":true,"required":false,"displayName":"Post Type","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Caption","type":"string","display":true,"removed":true,"required":false,"displayName":"Caption","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Media URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Media URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Approval Status","type":"string","display":true,"required":false,"displayName":"Approval Status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Notes: ADD SYBAL LOGO TO EACH IMAGE","type":"string","display":true,"removed":true,"required":false,"displayName":"Notes: ADD SYBAL LOGO TO EACH IMAGE","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Post URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":false,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":98565607,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/1rpCJPyjTumUaJ3oH71cHxIq2m3jY8RQB0YCsZGaxMKg/edit#gid=98565607","cachedResultName":"Post URL"},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"e9a9ffc0-6bbb-45dc-a1ab-528fbc9ba61d","name":"Wait Until Scheduled Time","type":"n8n-nodes-base.wait","position":[192,0],"webhookId":"1c35c969-2881-4137-b539-a1e4e416e4d6","parameters":{"resume":"specificTime","dateTime":"={{ DateTime.fromFormat($('Route by Post Type').item.json['Scheduled On'], 'yyyy-MM-dd HH-mm', { zone: 'America/New_York' }).setZone('Asia/Kolkata').toFormat(\"yyyy-MM-dd'T'HH:mm:ss\") }}"},"typeVersion":1.1},{"id":"00e87b7f-873e-4061-8e09-ee101e3e5f04","name":"Prepare Post Data","type":"n8n-nodes-base.aggregate","position":[400,0],"parameters":{"options":{},"fieldsToAggregate":{"fieldToAggregate":[{}]}},"typeVersion":1},{"id":"bd94dd58-f3f1-415c-9192-efd08f3a5a3c","name":"Download Image from Google Drive","type":"n8n-nodes-base.googleDrive","position":[608,0],"parameters":{"fileId":{"__rl":true,"mode":"url","value":"={{ $node['Route by Post Type'].json['Media URL'] }}"},"options":{},"operation":"download"},"credentials":{"googleDriveOAuth2Api":{"id":"eHqQKDvQRvklodvY","name":"Sourav_Singh"}},"typeVersion":3},{"id":"00b7c4b1-8d89-484d-87d5-283b7be98c01","name":"Publish Creative Post to LinkedIn","type":"n8n-nodes-base.linkedIn","position":[880,0],"parameters":{"text":"={{ $node['Route by Post Type'].json.Caption }}","postAs":"organization","organization":"56420402","additionalFields":{},"shareMediaCategory":"IMAGE"},"credentials":{"linkedInOAuth2Api":{"id":"OYCy5XCGwBeHyb2n","name":"TESTING_LINKEDIN"}},"typeVersion":1},{"id":"aaaa6703-293b-483d-b13c-b0dfe1e71bfd","name":"Save Post URL & Mark Published","type":"n8n-nodes-base.googleSheets","position":[1168,0],"parameters":{"columns":{"value":{"Post URL":"={{ \"https://www.linkedin.com/feed/update/\" + $json.urn }}","row_number":"={{ $node['Route by Post Type'].json.row_number }}","Approval Status":"Published"},"schema":[{"id":"Scheduled On","type":"string","display":true,"removed":true,"required":false,"displayName":"Scheduled On","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Platform","type":"string","display":true,"removed":true,"required":false,"displayName":"Platform","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post Type","type":"string","display":true,"removed":true,"required":false,"displayName":"Post Type","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Caption","type":"string","display":true,"removed":true,"required":false,"displayName":"Caption","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Media URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Media URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Approval Status","type":"string","display":true,"required":false,"displayName":"Approval Status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Notes: ADD SYBAL LOGO TO EACH IMAGE","type":"string","display":true,"removed":true,"required":false,"displayName":"Notes: ADD SYBAL LOGO TO EACH IMAGE","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post URL","type":"string","display":true,"removed":false,"required":false,"displayName":"Post URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":false,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":98565607,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/1rpCJPyjTumUaJ3oH71cHxIq2m3jY8RQB0YCsZGaxMKg/edit#gid=98565607","cachedResultName":"Post URL"},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"0f1d3405-1bc5-4803-9b11-f175140a9ea5","name":"Mark Article as Scheduled","type":"n8n-nodes-base.googleSheets","position":[64,544],"parameters":{"columns":{"value":{"row_number":"={{ $('Route by Post Type').item.json.row_number }}","Approval Status":"Scheduled"},"schema":[{"id":"Scheduled On","type":"string","display":true,"removed":true,"required":false,"displayName":"Scheduled On","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Platform","type":"string","display":true,"removed":true,"required":false,"displayName":"Platform","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post Type","type":"string","display":true,"removed":true,"required":false,"displayName":"Post Type","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Caption","type":"string","display":true,"removed":true,"required":false,"displayName":"Caption","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Media URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Media URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Approval Status","type":"string","display":true,"required":false,"displayName":"Approval Status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Notes: ADD SYBAL LOGO TO EACH IMAGE","type":"string","display":true,"removed":true,"required":false,"displayName":"Notes: ADD SYBAL LOGO TO EACH IMAGE","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Post URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":false,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":98565607,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/1rpCJPyjTumUaJ3oH71cHxIq2m3jY8RQB0YCsZGaxMKg/edit#gid=98565607","cachedResultName":"Post URL"},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"4f41f744-eee1-47d7-adc2-5dce7035e2cc","name":"Wait Until Article Scheduled Time","type":"n8n-nodes-base.wait","position":[256,544],"webhookId":"1c35c969-2881-4137-b539-a1e4e416e4d6","parameters":{"resume":"specificTime","dateTime":"={{ DateTime.fromFormat($('Route by Post Type').item.json['Scheduled On'], 'yyyy-MM-dd HH-mm', { zone: 'America/New_York' }).setZone('Asia/Kolkata').toFormat(\"yyyy-MM-dd'T'HH:mm:ss\") }}"},"typeVersion":1.1},{"id":"3c53407e-0d38-4317-843d-c2df3907ca5f","name":"Prepare Article Data","type":"n8n-nodes-base.aggregate","position":[464,544],"parameters":{"options":{},"fieldsToAggregate":{"fieldToAggregate":[{}]}},"typeVersion":1},{"id":"8543dd4c-ec1c-45f2-a1cd-55a1dfbcb2e1","name":"Publish Article Link to LinkedIn","type":"n8n-nodes-base.linkedIn","position":[688,544],"parameters":{"text":"={{ $node['Route by Post Type'].json.Caption }}","postAs":"organization","organization":"56420402","additionalFields":{"originalUrl":"={{ $node['Route by Post Type'].json['Media URL'] }}"},"shareMediaCategory":"ARTICLE"},"credentials":{"linkedInOAuth2Api":{"id":"OYCy5XCGwBeHyb2n","name":"TESTING_LINKEDIN"}},"typeVersion":1},{"id":"a02fadd8-013f-4ac4-a674-863398cb8bb6","name":"Save Article URL & Mark Published","type":"n8n-nodes-base.googleSheets","position":[944,544],"parameters":{"columns":{"value":{"Post URL":"={{ \"https://www.linkedin.com/feed/update/\" + $json.urn }}","row_number":"={{ $node['Route by Post Type'].json.row_number }}","Approval Status":"Published"},"schema":[{"id":"Scheduled On","type":"string","display":true,"removed":true,"required":false,"displayName":"Scheduled On","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Platform","type":"string","display":true,"removed":true,"required":false,"displayName":"Platform","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post Type","type":"string","display":true,"removed":true,"required":false,"displayName":"Post Type","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Caption","type":"string","display":true,"removed":true,"required":false,"displayName":"Caption","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Media URL","type":"string","display":true,"removed":true,"required":false,"displayName":"Media URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Approval Status","type":"string","display":true,"required":false,"displayName":"Approval Status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Notes: ADD SYBAL LOGO TO EACH IMAGE","type":"string","display":true,"removed":true,"required":false,"displayName":"Notes: ADD SYBAL LOGO TO EACH IMAGE","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Post URL","type":"string","display":true,"removed":false,"required":false,"displayName":"Post URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":false,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":98565607,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/1rpCJPyjTumUaJ3oH71cHxIq2m3jY8RQB0YCsZGaxMKg/edit#gid=98565607","cachedResultName":"Post URL"},"documentId":{"__rl":true,"mode":"url","value":"=YOUR_SHEET_URL"}},"credentials":{"googleSheetsOAuth2Api":{"id":"kKmkWGcI4HPIvmor","name":"TESTING_SHEET"}},"typeVersion":4.7},{"id":"b542a43b-5ca7-46ca-a888-95a299a6678f","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-1792,-400],"parameters":{"width":432,"height":976,"content":"# Schedule and auto-publish LinkedIn posts from Google Sheets\n\nAutomate LinkedIn organization page posting with precise time scheduling, Google Drive media management, and smart status tracking. Runs hourly during business hours, processes approved posts scheduled for today, waits until exact time, publishes to LinkedIn, and updates tracking sheet automatically.\n\n## How it works\n\nThe workflow triggers 4 times daily (9-12 AM) and loads your LinkedIn credentials from a Google Sheet. It fetches all posts marked \"Good\" for approval and \"LinkedIn\" as platform, then filters only those scheduled for today's date. For Creative Posts with images, it marks the post as \"Scheduled\", waits until the exact scheduled time (with timezone conversion from Eastern to India time), downloads the image from Google Drive, publishes to your LinkedIn organization page, and saves the live post URL back to the sheet with \"Published\" status. For Article posts with links, it follows the same flow but publishes as article type instead of image.\n\n## Setup steps\n\n1. **Add credentials**: Google Sheets OAuth, LinkedIn Community Management OAuth, Google Drive OAuth\n2. **Prepare tracking sheet**: Create columns for Scheduled On, Platform, Post Type, Caption, Media URL, Approval Status, Post URL, and row_number\n3. **Set credentials sheet**: Create a separate \".env\" sheet tab with LinkedIn organization ID and other config\n4. **Configure organization ID**: Update organization ID in both LinkedIn post nodes (currently: 56420402)\n5. **Set timezone**: Adjust timezone conversion in Wait nodes if not using Eastern → India conversion\n6. **Test workflow**: Add a test post scheduled for current time and verify it publishes correctly"},"typeVersion":1},{"id":"4ad19b59-37e8-47cc-b52c-c2212cb7bf86","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-1296,-160],"parameters":{"color":7,"width":496,"height":224,"content":"## Trigger & Data Loading\n\nRuns 4 times daily at :45 minutes (9-12 AM), loads LinkedIn credentials, fetches approved posts filtered by platform and approval status, then filters for today's scheduled posts only"},"typeVersion":1},{"id":"b56fde7b-08ca-4f5d-a556-0b229a95e383","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-688,-160],"parameters":{"color":7,"width":304,"height":224,"content":"## Post Type Routing\n\nProcesses first pending post and routes to appropriate publishing branch based on post type (Creative Post with image or Article with link)"},"typeVersion":1},{"id":"3b2cdc27-c567-44ca-81ef-5ef92a8e58ec","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[-64,-192],"parameters":{"color":7,"width":400,"height":240,"content":"## Creative Post Publishing (Image)\n\nMarks as scheduled, waits until exact time, downloads image from Google Drive, publishes to LinkedIn organization page, saves live URL and updates status to Published"},"typeVersion":1},{"id":"57f75d04-2020-4dda-afb6-3209e62e4259","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[48,352],"parameters":{"color":7,"width":304,"height":240,"content":"## Article Post Publishing (Link)\n\nMarks article as scheduled, waits until exact time, publishes article link to LinkedIn organization page, saves post URL and marks as Published"},"typeVersion":1}],"pinData":{},"connections":{"Run Every Hour":{"main":[[{"node":"Load LinkedIn Organization Credentials","type":"main","index":0}]]},"Prepare Post Data":{"main":[[{"node":"Download Image from Google Drive","type":"main","index":0}]]},"Route by Post Type":{"main":[[{"node":"Mark as Scheduled in Sheet","type":"main","index":0}],[{"node":"Mark Article as Scheduled","type":"main","index":0}]]},"Prepare Article Data":{"main":[[{"node":"Publish Article Link to LinkedIn","type":"main","index":0}]]},"Process First Post Only":{"main":[[{"node":"Route by Post Type","type":"main","index":0}]]},"Mark Article as Scheduled":{"main":[[{"node":"Wait Until Article Scheduled Time","type":"main","index":0}]]},"Wait Until Scheduled Time":{"main":[[{"node":"Prepare Post Data","type":"main","index":0}]]},"Mark as Scheduled in Sheet":{"main":[[{"node":"Wait Until Scheduled Time","type":"main","index":0}]]},"Fetch Approved LinkedIn Posts":{"main":[[{"node":"Filter Posts Scheduled for Today","type":"main","index":0}]]},"Download Image from Google Drive":{"main":[[{"node":"Publish Creative Post to LinkedIn","type":"main","index":0}]]},"Filter Posts Scheduled for Today":{"main":[[{"node":"Process First Post Only","type":"main","index":0}]]},"Publish Article Link to LinkedIn":{"main":[[{"node":"Save Article URL & Mark Published","type":"main","index":0}]]},"Publish Creative Post to LinkedIn":{"main":[[{"node":"Save Post URL & Mark Published","type":"main","index":0}]]},"Wait Until Article Scheduled Time":{"main":[[{"node":"Prepare Article Data","type":"main","index":0}]]},"Load LinkedIn Organization Credentials":{"main":[[{"node":"Fetch Approved LinkedIn Posts","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":22,"nodeTypes":{"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.wait":{"count":2},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.linkedIn":{"count":2},"n8n-nodes-base.aggregate":{"count":2},"n8n-nodes-base.stickyNote":{"count":5},"n8n-nodes-base.googleDrive":{"count":1},"n8n-nodes-base.googleSheets":{"count":6},"n8n-nodes-base.scheduleTrigger":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"isaWOW","username":"isawow","bio":"","verified":true,"links":[""],"avatar":"https://gravatar.com/avatar/8e8c1f17a2be80c0d1b0248585660dff3062cefeda523bbafeafcdb813f52ffa?r=pg&d=retro&size=200"},"nodes":[{"id":18,"icon":"file:googleSheets.svg","name":"n8n-nodes-base.googleSheets","codex":{"data":{"alias":["CSV","Sheet","Spreadsheet","GS"],"resources":{"generic":[{"url":"https://n8n.io/blog/love-at-first-sight-ricardos-n8n-journey/","icon":"❤️","label":"Love at first sight: Ricardo’s n8n journey"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/","icon":"🎫","label":"Supercharging your conference registration process with n8n"},{"url":"https://n8n.io/blog/creating-triggers-for-n8n-workflows-using-polling/","icon":"⏲","label":"Creating triggers for n8n workflows using polling"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/migrating-community-metrics-to-orbit-using-n8n/","icon":"📈","label":"Migrating Community Metrics to Orbit using n8n"},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/your-business-doesnt-need-you-to-operate/","icon":" 🖥️","label":"Hey founders! Your business doesn't need you to operate"},{"url":"https://n8n.io/blog/how-honest-burgers-use-automation-to-save-100k-per-year/","icon":"🍔","label":"How Honest Burgers Use Automation to Save $100k per year"},{"url":"https://n8n.io/blog/how-a-digital-strategist-uses-n8n-for-online-marketing/","icon":"💻","label":"How a digital strategist uses n8n for online marketing"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Data & Storage","Productivity"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\",\"output\"]","defaults":{"name":"Google Sheets"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNS42OSAxIDUyIDE3LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0OC4yOTMgNjBIMTIuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDkgNTYuMzEyVjQuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTIuNzA3IDF6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM1LjY5IDEgNTIgMTcuMjI1SDM5LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzkuMjExIDE3LjIyNSA1MiAyMi40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTIwLjEyIDMxLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMS42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzEuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNC42OSAwIDUxIDE2LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0Ny4yOTMgNTlIMTEuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDggNTUuMzEyVjMuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTEuNzA3IDB6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM0LjY5IDAgNTEgMTYuMjI1SDM4LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzguMjExIDE2LjIyNSA1MSAyMS40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTE5LjEyIDMwLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMC42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzAuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjwvZz48L3N2Zz4="},"displayName":"Google Sheets","typeVersion":5,"nodeCategories":[{"id":3,"name":"Data & Storage"},{"id":4,"name":"Productivity"}]},{"id":58,"icon":"file:googleDrive.svg","name":"n8n-nodes-base.googleDrive","codex":{"data":{"resources":{"generic":[{"url":"https://n8n.io/blog/your-business-doesnt-need-you-to-operate/","icon":" 🖥️","label":"Hey founders! Your business doesn't need you to operate"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Data & Storage"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\"]","defaults":{"name":"Google Drive"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgODEgNzMiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzAwNjZkYSIgZD0ibTYuMDQ4IDYxLjI2IDMuNTI4IDYuMDk0Yy43MzMgMS4yODMgMS43ODcgMi4yOTEgMy4wMjQgMy4wMjRsMTIuNi0yMS44MUgwYTguMyA4LjMgMCAwIDAgMS4xIDQuMTI0eiIvPjxwYXRoIGZpbGw9IiMwMGFjNDciIGQ9Ik00MCAyMi45MSAyNy40IDEuMWMtMS4yMzcuNzMzLTIuMjkxIDEuNzQxLTMuMDI0IDMuMDI0TDEuMSA0NC40NDVBOC4zIDguMyAwIDAgMCAwIDQ4LjU2OGgyNS4yeiIvPjxwYXRoIGZpbGw9IiNlYTQzMzUiIGQ9Ik02Ny40IDcwLjM3OGMxLjIzNy0uNzMzIDIuMjkxLTEuNzQxIDMuMDI0LTMuMDI0bDEuNDY2LTIuNTIgNy4wMS0xMi4xNDJhOC4zIDguMyAwIDAgMCAxLjEtNC4xMjRINTQuNzk4bDUuMzYzIDEwLjUzOHoiLz48cGF0aCBmaWxsPSIjMDA4MzJkIiBkPSJNNDAgMjIuOTEgNTIuNiAxLjFDNTEuMzYzLjM2NyA0OS45NDMgMCA0OC40NzcgMEgzMS41MjRjLTEuNDY2IDAtMi44ODcuNDEyLTQuMTI0IDEuMXoiLz48cGF0aCBmaWxsPSIjMjY4NGZjIiBkPSJNNTQuNzk5IDQ4LjU2OEgyNS4ybC0xMi42IDIxLjgxYzEuMjM3LjczMyAyLjY1NyAxLjEgNC4xMjQgMS4xaDQ2LjU1MmMxLjQ2NiAwIDIuODg3LS40MTIgNC4xMjQtMS4xeiIvPjxwYXRoIGZpbGw9IiNmZmJhMDAiIGQ9Ik02Ny4yNjIgMjQuMjg0IDU1LjYyNCA0LjEyNEM1NC44OTEgMi44NDEgNTMuODM3IDEuODMzIDUyLjYgMS4xTDQwIDIyLjkxbDE0LjggMjUuNjU5aDI1LjE1NWE4LjMgOC4zIDAgMCAwLTEuMS00LjEyNHoiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Google Drive","typeVersion":3,"nodeCategories":[{"id":3,"name":"Data & Storage"}]},{"id":112,"icon":"fa:map-signs","name":"n8n-nodes-base.switch","codex":{"data":{"alias":["Router","If","Path","Filter","Condition","Logic","Branch","Case"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"Switch","color":"#506000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"Switch","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":367,"icon":"file:linkedin.svg","name":"n8n-nodes-base.linkedIn","codex":{"data":{"resources":{"generic":[{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.linkedin/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/linkedin/"}]},"categories":["Marketing","Communication"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\"]","defaults":{"name":"LinkedIn"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNjcgNjYiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9IjEiIHk9IjEiLz48c3ltYm9sIGlkPSJhIiBvdmVyZmxvdz0idmlzaWJsZSI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBzdHJva2U9Im5vbmUiPjxwYXRoIGZpbGw9IiMwMTc3YjUiIGQ9Ik01OS4yNiAwSDQuNzI0QzIuMTIgMCAwIDIuMDY2IDAgNC42MXY1NC43ODhjMCAyLjUzIDIuMTIgNC42IDQuNzI0IDQuNmg1NC41NGMyLjYxIDAgNC43MzYtMi4wNyA0LjczNi00LjZWNC42MUM2NCAyLjA2NiA2MS44NzQgMCA1OS4yNiAwIi8+PHBhdGggZD0iTTkuNDkgMjMuOTkySDE5djMwLjU0SDkuNDl6bTQuNzQ4LTE1LjJjMy4wMzQgMCA1LjUgMi40NjYgNS41IDUuNWE1LjUxIDUuNTEgMCAwIDEtNS40OTggNS41MDYgNS41MiA1LjUyIDAgMCAxLTUuNTA4LTUuNTA2IDUuNSA1LjUgMCAwIDEgNS41MDYtNS41bTEwLjcgMTUuMmg5LjEwNHY0LjE3NGguMTI2YzEuMjY4LTIuNCA0LjM2NC00LjkzMiA5LTQuOTMyIDkuNjEyIDAgMTEuMzg2IDYuMzI2IDExLjM4NiAxNC41NDh2MTYuNzUyaC05LjQ4NlYzOS42NzhjMC0zLjU0LS4wNjQtOC4xLTQuOTMyLTguMS00Ljk0IDAtNS43IDMuODYtNS43IDcuODR2MTUuMTA4aC05LjQ4NHYtMzAuNTR6Ii8+PC9nPjwvc3ltYm9sPjwvc3ZnPg=="},"displayName":"LinkedIn","typeVersion":1,"nodeCategories":[{"id":6,"name":"Communication"},{"id":27,"name":"Marketing"}]},{"id":514,"icon":"fa:pause-circle","name":"n8n-nodes-base.wait","codex":{"data":{"alias":["pause","sleep","delay","timeout"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Wait","color":"#804050"},"iconData":{"icon":"pause-circle","type":"icon"},"displayName":"Wait","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1236,"icon":"file:aggregate.svg","name":"n8n-nodes-base.aggregate","codex":{"data":{"alias":["Aggregate","Combine","Flatten","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.aggregate/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Aggregate"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjRkY2RDVBIiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTMyIDE0OGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDE0NmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0YzAgNi42MjctNS4zNzMgMTItMTIgMTJINDRjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6bTAgOTZjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxNDZjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYyNGMwIDYuNjI3LTUuMzczIDEyLTEyIDEySDQ0Yy02LjYyNyAwLTEyLTUuMzczLTEyLTEyem0wIDk2YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTQ2YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkg0NGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGQ9Ik03NCA3NmMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDExNi4yMTdjMTcuNjczIDAgMzIgMTQuMzI3IDMyIDMydjU2YzAgMjYuOTc4IDEwLjI3MiA1MS41NTcgMjcuMTE5IDcwLjAzOSA1LjA1NSA1LjU0NSA1LjA1NSAxNC4zNzcgMCAxOS45MjItMTYuODQ3IDE4LjQ4Mi0yNy4xMTkgNDMuMDYxLTI3LjExOSA3MC4wMzl2NTZjMCAxNy42NzMtMTQuMzI3IDMyLTMyIDMySDg2Yy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoMTE2LjIxN2M0NC4xODMgMCA4MC0zNS44MTcgODAtODB2LTU2YzAtMzAuOTI4IDI1LjA3Mi01NiA1Ni01NmE1Ljc4MyA1Ljc4MyAwIDAgMCA1Ljc4My01Ljc4M3YtMzYuNDM0YTUuNzgzIDUuNzgzIDAgMCAwLTUuNzgzLTUuNzgzYy0zMC45MjggMC01Ni0yNS4wNzItNTYtNTZ2LTU2YzAtNDQuMTgzLTM1LjgxNy04MC04MC04MEg4NmMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNzYgMjQ0YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkgzODhjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUxMnY1MTJIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4="},"displayName":"Aggregate","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":33,"name":"Social Media"}],"image":[]}}