{
  "workflow": {
    "id": 6028,
    "name": "Scrape Upwork job listings & generate daily email reports with Apify & Google Sheets",
    "views": 741,
    "recentViews": 0,
    "totalViews": 741,
    "createdAt": "2025-07-15T14:21:31.160Z",
    "description": "This automated n8n workflow scrapes job listings from Upwork using Apify, processes and cleans the data, and generates daily email reports with job summaries. The system uses Google Sheets for data storage and keyword management, providing a comprehensive solution for tracking relevant job opportunities and market trends.\n\n## **What is Apify?**\nApify is a web scraping and automation platform that provides reliable APIs for extracting data from websites like Upwork. It handles the complexities of web scraping including rate limiting, proxy management, and data extraction while maintaining compliance with website terms of service.\n\n## **Good to Know**\n* Apify API calls may incur costs based on usage; check Apify pricing for details\n* Google Sheets access must be properly authorized to avoid data sync issues\n* The workflow includes data cleaning and deduplication to ensure high-quality results\n* Email reports provide structured summaries for easy review and decision-making\n* Keyword management through Google Sheets allows for flexible job targeting\n\n## **How It Works**\n\nThe workflow is organized into three main phases:\n\n**Phase 1: Job Scraping & Initial Processing**\nThis phase handles the core data collection and initial storage:\n1. **Trigger Manual Run** - Manually starts the workflow for on-demand job scraping\n2. **Fetch Keywords from Google Sheet** - Reads the list of job-related keywords from the All Keywords sheet\n3. **Loop Through Keywords** - Iterates over each keyword to trigger Apify scraping\n4. **Trigger Apify Scraper** - Sends HTTP request to start Apify actor for job scraping\n5. **Wait for Apify Completion** - Waits for the Apify actor to finish execution\n6. **Delay Before Dataset Read** - Waits a few seconds to ensure dataset is ready for processing\n7. **Fetch Scraped Job Dataset** - Fetches the latest dataset from Apify\n8. **Process Raw Job Data** - Filters jobs posted in the last 24 hours and formats the data\n9. **Save Jobs to Daily Sheet** - Appends new job data to the daily Google Sheet\n10. **Update Keyword Job Count** - Updates job count in the All Keywords summary sheet\n\n**Phase 2: Data Cleaning & Deduplication**\nThis phase ensures data quality and removes duplicates:\n1. **Load Today's Daily Jobs** - Loads all jobs added in today's sheet for processing\n2. **Remove Duplicates by Title/Desc** - Removes duplicates based on title and description matching\n3. **Save Clean Job Data** - Saves the cleaned, unique entries back to the sheet\n4. **Clear Old Daily Sheet Data** - Deletes old or duplicate entries from the sheet\n5. **Reload Clean Job Data** - Loads clean data again after deletion for final processing\n\n**Phase 3: Daily Summary & Email Report**\nThis phase generates summaries and delivers the final report:\n1. **Generate Keyword Summary Stats** - Counts job totals per keyword for analysis\n2. **Update Summary Sheet** - Updates the summary sheet with keyword statistics\n3. **Fetch Final Summary Data** - Reads the summary sheet for reporting purposes\n4. **Build Email Body** - Formats email with statistics and sheet link\n5. **Send Daily Report Email** - Sends the structured daily summary email to recipients\n\n## **Data Sources**\nThe workflow utilizes Google Sheets for data management:\n\n1. **AI Keywords Sheet** - Contains keyword management data with columns:\n   - Keyword (text) - Job search terms\n   - Job Count (number) - Number of jobs found for each keyword\n   - Status (text) - Active/Inactive status\n   - Last Updated (timestamp) - When keyword was last processed\n\n2. **Daily Jobs Sheet** - Contains scraped job data with columns:\n   - Job Title (text) - Title of the job posting\n   - Description (text) - Job description content\n   - Budget (text) - Job budget or hourly rate\n   - Client Rating (number) - Client's rating on Upwork\n   - Posted Date (timestamp) - When job was posted\n   - Job URL (text) - Direct link to the job posting\n   - Keyword (text) - Which keyword found this job\n   - Scraped At (timestamp) - When data was collected\n\n3. **Summary Sheet** - Contains daily statistics with columns:\n   - Date (date) - Report date\n   - Total Jobs (number) - Total jobs found\n   - Keywords Processed (number) - Number of keywords searched\n   - Top Keyword (text) - Most productive keyword\n   - Average Budget (currency) - Average job budget\n   - Report Generated (timestamp) - When summary was created\n\n## **How to Use**\n* Import the workflow into n8n\n* Configure Apify API credentials and Google Sheets API access\n* Set up email credentials for daily report delivery\n* Create three Google Sheets with the specified column structures\n* Add relevant job keywords to the AI Keywords sheet\n* Test with sample keywords and adjust as needed\n\n## **Requirements**\n1. Apify API credentials and actor access\n2. Google Sheets API access\n3. Email service credentials (Gmail, SMTP, etc.)\n4. Upwork job search keywords for targeting\n\n## **Customizing This Workflow**\nModify the Process Raw Job Data node to filter jobs by additional criteria like budget range, client rating, or job type. Adjust the email report format to include more detailed statistics or add visual aids, such as charts. Customize the data cleaning logic to better handle duplicate detection based on your specific requirements, or add additional data sources beyond Upwork for comprehensive job market analysis.",
    "workflow": {
      "id": "jWtAzmLnP037vKY3",
      "meta": {
        "instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
        "templateCredsSetupCompleted": true
      },
      "name": "Scrape Upwork Job Listings & Generate Daily Email Report with Apify and Google Sheets",
      "tags": [],
      "nodes": [
        {
          "id": "6d9a33ff-82da-4139-a749-bac62bc01ecf",
          "name": "Delete rows or columns from sheet",
          "type": "n8n-nodes-base.googleSheets",
          "onError": "continueRegularOutput",
          "position": [
            580,
            420
          ],
          "parameters": {
            "operation": "delete",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 526241451,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=526241451",
              "cachedResultName": "15 July 2025"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount",
            "numberToDelete": "={{ $('Load Today’s Daily Jobs\t').all().length}}"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "executeOnce": true,
          "typeVersion": 4.6,
          "alwaysOutputData": true
        },
        {
          "id": "55a3d757-0537-4ec6-b27d-e3c30f953a41",
          "name": "Loop Through Keywords\t",
          "type": "n8n-nodes-base.splitInBatches",
          "position": [
            -300,
            620
          ],
          "parameters": {
            "options": {}
          },
          "typeVersion": 3
        },
        {
          "id": "12267de9-f78a-446e-9c94-19a95d859edc",
          "name": "Trigger Manual Run\t",
          "type": "n8n-nodes-base.manualTrigger",
          "position": [
            -740,
            620
          ],
          "parameters": {},
          "typeVersion": 1
        },
        {
          "id": "8f332163-712f-4cbf-bb2d-fb8b189e81e2",
          "name": "Fetch Keywords from Google Sheet\t",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            -520,
            620
          ],
          "parameters": {
            "options": {},
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 602446703,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=602446703",
              "cachedResultName": "All Keywords combined"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4.6
        },
        {
          "id": "7d5e9736-8457-4548-a8ba-78d72fff7ced",
          "name": "Trigger Apify Scraper\t",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            -80,
            620
          ],
          "parameters": {
            "url": "https://api.apify.com/v2/acts/XYTgO05GT5qAoSlxy/runs",
            "method": "POST",
            "options": {},
            "jsonBody": "={\n    \"clientHistory\": [\n        \"noHires\",\n        \"1to9Hires\",\n        \"10+Hires\"\n    ],\n    \"experienceLevel\": [\n        \"entry\",\n        \"intermediate\",\n        \"expert\"\n    ],\n     \"maxJobAge\": {\n        \"value\": 23,\n        \"unit\": \"hours\"\n    },\n    \"paymentVerified\": false,\n    \"query\": \"{{ $json.Keywords }}\",\n    \"page\": 1,\n    \"perPage\": 100,\n    \"sort\": \"newest\"\n} ",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {
                  "name": "Content-Type",
                  "value": "application/json"
                }
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "b0e3b87d-b88e-4960-86f7-a4d408114e1d",
          "name": "Wait for Apify Completion\t",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            140,
            620
          ],
          "parameters": {
            "url": "=https://api.apify.com/v2/actor-runs/{{ $json.data.id }}",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "waitForFinish",
                  "value": "150"
                }
              ]
            },
            "headerParameters": {
              "parameters": [
                {
                  "name": "Content-Type",
                  "value": "application/json"
                }
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "cc44ba4d-e04e-43b7-a2e9-3bb01aea0572",
          "name": "Delay Before Dataset Read\t",
          "type": "n8n-nodes-base.wait",
          "position": [
            360,
            620
          ],
          "webhookId": "3b380880-9271-4abe-922c-0fe9a0f588d4",
          "parameters": {
            "amount": 20
          },
          "typeVersion": 1.1
        },
        {
          "id": "0b738f7e-2ba4-4963-9ad4-631b80e1be7e",
          "name": "Fetch Scraped Job Dataset\t",
          "type": "n8n-nodes-base.httpRequest",
          "onError": "continueRegularOutput",
          "position": [
            580,
            620
          ],
          "parameters": {
            "url": "=https://api.apify.com/v2/datasets/{{ $json.data.defaultDatasetId }}/items",
            "options": {},
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth"
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2,
          "alwaysOutputData": true
        },
        {
          "id": "b033a7cd-e23c-4e80-8f24-baa2a4b5983b",
          "name": "Process Raw Job Data\t",
          "type": "n8n-nodes-base.code",
          "onError": "continueRegularOutput",
          "position": [
            800,
            620
          ],
          "parameters": {
            "jsCode": "const now = new Date();\nconst hoursThreshold = 23;\nconst thresholdTime = new Date(now.getTime() - hoursThreshold * 60 * 60 * 1000);\n\nconst filteredJobs = $input.all().filter(item => {\n  const jobDate = new Date(item.json.absoluteDate);\n  return jobDate > thresholdTime;\n});\n\nreturn filteredJobs;\n"
          },
          "typeVersion": 2,
          "alwaysOutputData": true
        },
        {
          "id": "8f9d5563-0edc-445d-ba03-ec392fded600",
          "name": "Save Jobs to Daily Sheet\t",
          "type": "n8n-nodes-base.googleSheets",
          "onError": "continueRegularOutput",
          "position": [
            1020,
            620
          ],
          "parameters": {
            "columns": {
              "value": {
                "url": "={{ $json.url  == undefined ? \"--\" : $json.url}}",
                "tags": "={{ $json.tags  == undefined ? \"--\" : $json.tags}}",
                "title": "={{ $json.title == undefined ? \"No records found in last 24 hours\": $json.title }}",
                "budget": "={{ $json.budget  == undefined ? \"--\" : $json.budget}}",
                "jobType": "={{ $json.jobType  == undefined ? \"--\" : $json.jobType}}",
                "description": "={{ $json.description  == undefined ? \"--\" : $json.description}}",
                "absoluteDate": "={{ $json.absoluteDate  == undefined ? \"--\" : $json.absoluteDate}}",
                "relativeDate": "={{ $json.relativeDate  == undefined ? \"--\" : $json.relativeDate}}",
                "Keyword Title": "={{ $('Loop Through Keywords\t').item.json.Keywords }}",
                "clientLocation": "={{ $json.clientLocation  == undefined ? \"Not Found\" : $json.clientLocation}}",
                "experienceLevel": "={{ $json.experienceLevel  == undefined ? \"--\" : $json.experienceLevel}}",
                "paymentVerified": "={{ $json.paymentVerified  == undefined ? \"--\" : $json.paymentVerified}}",
                "allowedApplicantCountries": "={{ $json.allowedApplicantCountries  == undefined ? \"Not Found\" : $json.allowedApplicantCountries}}"
              },
              "schema": [
                {
                  "id": "title",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "title",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "description",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "description",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "url",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "url",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "budget",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "budget",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "relativeDate",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "relativeDate",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "absoluteDate",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "absoluteDate",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "jobType",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "jobType",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "experienceLevel",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "experienceLevel",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "paymentVerified",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "paymentVerified",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "tags",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "tags",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "clientLocation",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "clientLocation",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "allowedApplicantCountries",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "allowedApplicantCountries",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Keyword Title",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Keyword Title",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Done by",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Done by",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Client details found",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Client details found",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Client name",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Client name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Company name",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Company name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Email ID",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Email ID",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Phone Number",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Phone Number",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "LinkedIn",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "LinkedIn",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Website URL",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Website URL",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Follow up status",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Follow up status",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "1st Email sent date",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "1st Email sent date",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "append",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 526241451,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=526241451",
              "cachedResultName": "15 July 2025"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4.6
        },
        {
          "id": "6a3c8073-7559-4552-82f2-29ff50d6e069",
          "name": "Update Keyword Job Count\t",
          "type": "n8n-nodes-base.googleSheets",
          "onError": "continueRegularOutput",
          "position": [
            1240,
            695
          ],
          "parameters": {
            "columns": {
              "value": {
                "Keywords": "={{ $('Loop Through Keywords\t').item.json.Keywords }}",
                "Total Count 15-07-2025": "={{ $('Process Raw Job Data\t').first().json.title == undefined ? \"0\" : $('Process Raw Job Data\t').all().length}}"
              },
              "schema": [
                {
                  "id": "Keywords",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Keywords",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Keyword Type",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Keyword Type",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 15-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Total Count 15-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 14-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 14-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 11-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 11-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 10-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 10-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 09-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 09-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 08-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 08-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 07-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 07-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 04-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 04-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 03-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 03-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 02-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 02-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 01-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 01-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 30-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 30-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 27-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 27-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 26-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 26-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 25-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 25-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 24-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 24-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 23-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 23-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 20-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 20-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 19-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 19-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 18-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 18-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 17-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 17-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 16-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 16-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 13-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 13-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 12-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 12-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 11-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 11-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 10-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 10-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 09-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 09-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 06-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 06-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 05-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 05-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 04-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 04-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 03-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 03-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [
                "Keywords"
              ],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 602446703,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=602446703",
              "cachedResultName": "All Keywords combined"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4.6,
          "alwaysOutputData": true
        },
        {
          "id": "beada4c6-c622-4c44-ac14-4d3273b89db4",
          "name": "Load Today’s Daily Jobs\t",
          "type": "n8n-nodes-base.googleSheets",
          "onError": "continueRegularOutput",
          "position": [
            -80,
            420
          ],
          "parameters": {
            "options": {},
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 526241451,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=526241451",
              "cachedResultName": "15 July 2025"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "executeOnce": true,
          "typeVersion": 4.6
        },
        {
          "id": "772ba1be-e39a-4393-a411-ea0570fc049e",
          "name": "Remove Duplicates by Title/Desc\t",
          "type": "n8n-nodes-base.code",
          "position": [
            140,
            420
          ],
          "parameters": {
            "jsCode": "\n// Initialize a Set to track seen combinations\nconst seen = new Set();\nconst uniqueItems = [];\n\nfor (const item of  $input.all()) {\n  const title = item.json.title?.trim().toLowerCase() || '';\n  const description = item.json.description?.trim().toLowerCase() || '';\n  const key = `${title}|||${description}`;\nif(title != \"No records found in last 24 hours\".trim().toLowerCase()){\n  if (!seen.has(key)) {\n    seen.add(key);\n    uniqueItems.push(item);\n  }\n}\n}\n\nreturn uniqueItems;\n\n\n\nreturn $input.all();"
          },
          "typeVersion": 2
        },
        {
          "id": "2b4782b2-6388-4414-a537-28d45b5b751c",
          "name": "Save Clean Job Data\t",
          "type": "n8n-nodes-base.googleSheets",
          "onError": "continueRegularOutput",
          "position": [
            360,
            420
          ],
          "parameters": {
            "columns": {
              "value": {
                "url": "={{ $json.url }}",
                "tags": "={{ $json.tags }}",
                "title": "={{ $json.title }}",
                "budget": "={{ $json.budget }}",
                "jobType": "={{ $json.jobType }}",
                "description": "={{ $json.description }}",
                "absoluteDate": "={{ $json.absoluteDate }}",
                "relativeDate": "={{ $json.relativeDate }}",
                "Keyword Title": "={{ $json['Keyword Title'] }}",
                "clientLocation": "={{ $json.clientLocation }}",
                "experienceLevel": "={{ $json.experienceLevel }}",
                "paymentVerified": "={{ $json.paymentVerified }}",
                "allowedApplicantCountries": "={{ $json.allowedApplicantCountries }}"
              },
              "schema": [
                {
                  "id": "title",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "title",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "description",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "description",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "url",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "url",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "budget",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "budget",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "relativeDate",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "relativeDate",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "absoluteDate",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "absoluteDate",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "jobType",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "jobType",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "experienceLevel",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "experienceLevel",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "paymentVerified",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "paymentVerified",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "tags",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "tags",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "clientLocation",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "clientLocation",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "allowedApplicantCountries",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "allowedApplicantCountries",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Keyword Title",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Keyword Title",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Done by",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Done by",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Client details found",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Client details found",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Client name",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Client name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Company name",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Company name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Email ID",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Email ID",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Phone Number",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Phone Number",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "LinkedIn",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "LinkedIn",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Website URL",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Website URL",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Follow up status",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Follow up status",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "1st Email sent date",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "1st Email sent date",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "append",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 526241451,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=526241451",
              "cachedResultName": "15 July 2025"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "executeOnce": false,
          "typeVersion": 4.6
        },
        {
          "id": "6403bebf-0937-405d-9f29-536aaff298bb",
          "name": "Reload Clean Job Data\t",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            800,
            420
          ],
          "parameters": {
            "options": {},
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 602446703,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=602446703",
              "cachedResultName": "All Keywords combined"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4.6
        },
        {
          "id": "1a9524a6-53c0-4db2-802a-deb418e46255",
          "name": "Generate Keyword Summary Stats\t",
          "type": "n8n-nodes-base.code",
          "position": [
            1020,
            420
          ],
          "parameters": {
            "jsCode": "// Get keyword rows\nconst keywordsInput = $('Reload Clean Job Data\t').all().map(item => item.json.Keywords);\n\n// Initialize keyword count map\nconst counts = [];\n\n// Go through each keyword\nfor (const keyword of keywordsInput) {\n\tlet count = 0;\n\n\tfor (const job of $('Save Clean Job Data\t').all()) {\n\t\tconst content = job.json['Keyword Title'];\n\t\tif (content.includes(keyword)) {\n            if(job.json[\"title\"] != \"No records found in last 24 hours\"){\n\t\t\tcount++;\n            }\n\t\t}\n\t}\n\n\tcounts.push({\n\t\tjson: {\n\t\t\tkeyword: keyword,\n\t\t\tcount: count,\n\t\t\tdate: '15-07-2025' // optional for context\n\t\t}\n\t});\n}\n\nreturn counts;\n"
          },
          "typeVersion": 2
        },
        {
          "id": "ea4b198a-1a29-4e34-b6a0-3ca8ef86c1ba",
          "name": "Update Summary Sheet\t",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            1240,
            420
          ],
          "parameters": {
            "columns": {
              "value": {
                "Keywords": "={{ $json.keyword }}",
                "Total Count 15-07-2025": "={{ $json.count }}"
              },
              "schema": [
                {
                  "id": "Keywords",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Keywords",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Keyword Type",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Keyword Type",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 15-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Total Count 15-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 14-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 14-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 11-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 11-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 10-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 10-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 09-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 09-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 08-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 08-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 07-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 07-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 04-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 04-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 03-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 03-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 02-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 02-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 01-07-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 01-07-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 30-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 30-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 27-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 27-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 26-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 26-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 25-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 25-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 24-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 24-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 23-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 23-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 20-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 20-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 19-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 19-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 18-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 18-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 17-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 17-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 16-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 16-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 13-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 13-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 12-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 12-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 11-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 11-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 10-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 10-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 09-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 09-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 06-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 06-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 05-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 05-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 04-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 04-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Total Count 03-06-2025",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "required": false,
                  "displayName": "Total Count 03-06-2025",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [
                "Keywords"
              ],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 602446703,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=602446703",
              "cachedResultName": "All Keywords combined"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4.6
        },
        {
          "id": "fefc7df7-b21d-4b6a-98c9-aaa1d1cb22d2",
          "name": "Fetch Final Summary Data\t",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            1460,
            420
          ],
          "parameters": {
            "options": {},
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": 602446703,
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit#gid=602446703",
              "cachedResultName": "All Keywords combined"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=drivesdk",
              "cachedResultName": "apify upwork scraped data"
            },
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "executeOnce": true,
          "typeVersion": 4.6
        },
        {
          "id": "2919b71f-c8c2-48da-b2eb-3119c86bd3e4",
          "name": "Build Email Body\t",
          "type": "n8n-nodes-base.code",
          "position": [
            1680,
            420
          ],
          "parameters": {
            "jsCode": "const rows = $input.all();\nconst totals = {};\n\nfor (const row of rows) {\n  const type = row.json[\"Keyword Type\"];\n  const count = parseInt(row.json[\"Total Count 15-07-2025\"]) || 0;\n\n  totals[type] = (totals[type] || 0) + count;\n}\n\nreturn [\n  {\n    json: {\n      date: \"15-07-2025\",\n      counts_by_type: totals\n    }\n  }\n];\n"
          },
          "typeVersion": 2
        },
        {
          "id": "982c3239-093e-44d4-b791-4ee50aae4110",
          "name": "Send Daily Report Email\t",
          "type": "n8n-nodes-base.gmail",
          "position": [
            1900,
            420
          ],
          "webhookId": "2d9e39cd-11b2-491d-9234-7dbbeb84321f",
          "parameters": {
            "sendTo": "=bd@itoneclick.com,james@itoneclick.com,nikunj@itoneclick.com,drashti@itoneclick.com,sahil@itoneclick.com ",
            "message": "=Hello Team,<br><br>  \nPlease find the details for the Apify scraped data below.<br><br>  \n\n\n\n<b>Scraping Date:</b>{{ $json.date }}<br> \n<b>Total Scraped Data:</b> {{ $('Remove Duplicates by Title/Desc\t').all().length }} Records<br> \n<b>Travel-related Data Scraped Count:</b> {{ $json.counts_by_type.Web }} Records<br> \n<b>Mobile App-related Data Scraped Count:</b> {{ $json.counts_by_type.Mobile }} Records<br><br>  \n\n\n\n<b>Sheet link with all data:</b><br> \n<a href=\"https://docs.google.com/spreadsheets/d/15VOzDUfPIKy3TcFEYEEwXfeYrF2LtAkhkm5ba9gNERI/edit?usp=sharing\">Click here to view the data</a><br>\n\n\n\n<br>  Thanks,<br> Ajay Mishra",
            "options": {
              "appendAttribution": true
            },
            "subject": "Apify data details - 15 July 2025"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "executeOnce": true,
          "typeVersion": 2.1
        },
        {
          "id": "844bd1ab-cbc9-4c81-b4eb-3871162fdfc1",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -860,
            80
          ],
          "parameters": {
            "width": 700,
            "height": 520,
            "content": "## Job Scraping & Initial Processing\nScrapes job data using Apify and stores it in the daily sheet.\n\n🔁 Trigger Manual Run: Manually starts the workflow.\n\n📄 Fetch Keywords from Google Sheet: Reads the list of job-related keywords from the All Keywords sheet.\n\n🔂 Loop Through Keywords: Iterates over each keyword to trigger Apify.\n\n🌐 Trigger Apify Scraper: Sends HTTP request to start Apify actor for scraping jobs.\n\n⏳ Wait for Apify Completion: Waits for the Apify actor to finish execution.\n\n⏱️ Delay Before Dataset Read: Waits a few seconds to ensure dataset is ready.\n\n📦 Fetch Scraped Job Dataset: Fetches the latest dataset from Apify.\n\n🧹 Process Raw Job Data: Filters jobs posted in the last 24 hours and formats the data.\n\n📥 Save Jobs to Daily Sheet: Appends new job data to the daily Google Sheet.\n\n🔢 Update Keyword Job Count: Updates job count in the All Keywords summary sheet."
          },
          "typeVersion": 1
        },
        {
          "id": "f026e7c3-c558-4b2a-85f7-9b3f8b444be9",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            100,
            60
          ],
          "parameters": {
            "color": 4,
            "width": 600,
            "height": 300,
            "content": "## Data Cleaning & Deduplication\nCleans and deduplicates today's job data.\n\n📥 Load Today’s Daily Jobs: Loads all jobs added in today’s sheet.\n\n🧽 Remove Duplicates by Title/Desc: Removes duplicates based on title & description.\n\n✅ Save Clean Job Data: Saves the cleaned, unique entries.\n\n🗑️ Clear Old Daily Sheet Data: Deletes old or duplicate entries from the sheet.\n\n🔄 Reload Clean Job Data: Loads clean data again after deletion.\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "1a92fdfa-d121-4922-adb0-3a971eed5c10",
          "name": "Sticky Note2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            1440,
            40
          ],
          "parameters": {
            "color": 3,
            "width": 500,
            "height": 340,
            "content": "## Daily Summary & Email Report\nGenerates a job summary and sends it via email.\n\n📊 Generate Keyword Summary Stats: Counts job totals per keyword.\n\n📈 Update Summary Sheet: Updates the summary sheet with keyword stats.\n\n📑 Fetch Final Summary Data: Reads the summary sheet for reporting.\n\n📨 Build Email Body: Formats email with stats and sheet link.\n\n📬 Send Daily Report Email: Sends the structured daily summary email to recipients.\n\n"
          },
          "typeVersion": 1
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "0f9b8517-78f3-402b-bd56-c0aece2efb04",
      "connections": {
        "Build Email Body\t": {
          "main": [
            [
              {
                "node": "Send Daily Report Email\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Trigger Manual Run\t": {
          "main": [
            [
              {
                "node": "Fetch Keywords from Google Sheet\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save Clean Job Data\t": {
          "main": [
            [
              {
                "node": "Delete rows or columns from sheet",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Process Raw Job Data\t": {
          "main": [
            [
              {
                "node": "Save Jobs to Daily Sheet\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Update Summary Sheet\t": {
          "main": [
            [
              {
                "node": "Fetch Final Summary Data\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Loop Through Keywords\t": {
          "main": [
            [
              {
                "node": "Load Today’s Daily Jobs\t",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Trigger Apify Scraper\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Reload Clean Job Data\t": {
          "main": [
            [
              {
                "node": "Generate Keyword Summary Stats\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Trigger Apify Scraper\t": {
          "main": [
            [
              {
                "node": "Wait for Apify Completion\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Fetch Final Summary Data\t": {
          "main": [
            [
              {
                "node": "Build Email Body\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save Jobs to Daily Sheet\t": {
          "main": [
            [
              {
                "node": "Update Keyword Job Count\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Update Keyword Job Count\t": {
          "main": [
            [
              {
                "node": "Loop Through Keywords\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Delay Before Dataset Read\t": {
          "main": [
            [
              {
                "node": "Fetch Scraped Job Dataset\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Fetch Scraped Job Dataset\t": {
          "main": [
            [
              {
                "node": "Process Raw Job Data\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Load Today’s Daily Jobs\t": {
          "main": [
            [
              {
                "node": "Remove Duplicates by Title/Desc\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Wait for Apify Completion\t": {
          "main": [
            [
              {
                "node": "Delay Before Dataset Read\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Generate Keyword Summary Stats\t": {
          "main": [
            [
              {
                "node": "Update Summary Sheet\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Remove Duplicates by Title/Desc\t": {
          "main": [
            [
              {
                "node": "Save Clean Job Data\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Delete rows or columns from sheet": {
          "main": [
            [
              {
                "node": "Reload Clean Job Data\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Fetch Keywords from Google Sheet\t": {
          "main": [
            [
              {
                "node": "Loop Through Keywords\t",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 23,
      "nodeTypes": {
        "n8n-nodes-base.code": {
          "count": 4
        },
        "n8n-nodes-base.wait": {
          "count": 1
        },
        "n8n-nodes-base.gmail": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 3
        },
        "n8n-nodes-base.httpRequest": {
          "count": 3
        },
        "n8n-nodes-base.googleSheets": {
          "count": 9
        },
        "n8n-nodes-base.manualTrigger": {
          "count": 1
        },
        "n8n-nodes-base.splitInBatches": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Oneclick AI Squad",
      "username": "oneclick-ai",
      "bio": "The AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations  from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.",
      "verified": true,
      "links": [
        "https://www.oneclickitsolution.com/"
      ],
      "avatar": "https://gravatar.com/avatar/848fca91367142f65f9e5c55d64e5c9952b160d7b060d103b52aa343c6bc7b3d?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": 19,
        "icon": "file:httprequest.svg",
        "name": "n8n-nodes-base.httpRequest",
        "codex": {
          "data": {
            "alias": [
              "API",
              "Request",
              "URL",
              "Build",
              "cURL"
            ],
            "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/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-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/",
                  "icon": "✍️",
                  "label": "Learn how to automatically cross-post your content with n8n"
                },
                {
                  "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/running-n8n-on-ships-an-interview-with-maranics/",
                  "icon": "🛳",
                  "label": "Running n8n on ships: An interview with Maranics"
                },
                {
                  "url": "https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/",
                  "icon": " 🪢",
                  "label": "What are APIs and how to use them with no code"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/world-poetry-day-workflow/",
                  "icon": "📜",
                  "label": "Celebrating World Poetry Day with a daily poem in Telegram"
                },
                {
                  "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/automate-designs-with-bannerbear-and-n8n/",
                  "icon": "🎨",
                  "label": "Automate Designs with Bannerbear and n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/",
                  "icon": "🧰",
                  "label": "How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/",
                  "icon": "🦄",
                  "label": "Learn how to use webhooks with Mattermost slash commands"
                },
                {
                  "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/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/automations-for-activists/",
                  "icon": "✨",
                  "label": "How Common Knowledge use workflow automation for activism"
                },
                {
                  "url": "https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/",
                  "icon": "🤟",
                  "label": "Creating scheduled text affirmations with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "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.httprequest/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "HTTP Request",
          "color": "#0004F5"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "HTTP Request",
        "typeVersion": 4,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 39,
        "icon": "fa:sync",
        "name": "n8n-nodes-base.splitInBatches",
        "codex": {
          "data": {
            "alias": [
              "Loop",
              "Concatenate",
              "Batch",
              "Split",
              "Split In Batches"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"organization\"]",
        "defaults": {
          "name": "Loop Over Items",
          "color": "#007755"
        },
        "iconData": {
          "icon": "sync",
          "type": "icon"
        },
        "displayName": "Loop Over Items (Split in Batches)",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 356,
        "icon": "file:gmail.svg",
        "name": "n8n-nodes-base.gmail",
        "codex": {
          "data": {
            "alias": [
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "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"
                },
                {
                  "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/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "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/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/using-automation-to-boost-productivity-in-the-workplace/",
                  "icon": "💪",
                  "label": "Using Automation to Boost Productivity in the Workplace"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.gmail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Gmail"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMTkzIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZmlsbD0iIzQyODVGNCIgZD0iTTU4LjE4MiAxOTIuMDVWOTMuMTRMMjcuNTA3IDY1LjA3NyAwIDQ5LjUwNHYxMjUuMDkxYzAgOS42NTggNy44MjUgMTcuNDU1IDE3LjQ1NSAxNy40NTV6Ii8+PHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTE5Ny44MTggMTkyLjA1aDQwLjcyN2M5LjY1OSAwIDE3LjQ1NS03LjgyNiAxNy40NTUtMTcuNDU1VjQ5LjUwNWwtMzEuMTU2IDE3LjgzNy0yNy4wMjYgMjUuNzk4eiIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im01OC4xODIgOTMuMTQtNC4xNzQtMzguNjQ3IDQuMTc0LTM2Ljk4OUwxMjggNjkuODY4bDY5LjgxOC01Mi4zNjQgNC42NyAzNC45OTItNC42NyA0MC42NDRMMTI4IDE0NS41MDR6Ii8+PHBhdGggZmlsbD0iI0ZCQkMwNCIgZD0iTTE5Ny44MTggMTcuNTA0VjkzLjE0TDI1NiA0OS41MDRWMjYuMjMxYzAtMjEuNTg1LTI0LjY0LTMzLjg5LTQxLjg5LTIwLjk0NXoiLz48cGF0aCBmaWxsPSIjQzUyMjFGIiBkPSJtMCA0OS41MDQgMjYuNzU5IDIwLjA3TDU4LjE4MiA5My4xNFYxNy41MDRMNDEuODkgNS4yODZDMjQuNjEtNy42NiAwIDQuNjQ2IDAgMjYuMjN6Ii8+PC9zdmc+"
        },
        "displayName": "Gmail",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "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": 838,
        "icon": "fa:mouse-pointer",
        "name": "n8n-nodes-base.manualTrigger",
        "codex": {
          "data": {
            "resources": {
              "generic": [],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "When clicking ‘Execute workflow’",
          "color": "#909298"
        },
        "iconData": {
          "icon": "mouse-pointer",
          "type": "icon"
        },
        "displayName": "Manual Trigger",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 32,
        "name": "Market Research"
      }
    ],
    "image": []
  }
}