{
  "workflow": {
    "id": 6744,
    "name": "Invoice creator with Google Sheets & automated email payment reminder system",
    "views": 782,
    "recentViews": 0,
    "totalViews": 782,
    "createdAt": "2025-07-31T12:53:24.516Z",
    "description": "This automated n8n workflow streamlines invoice creation and payment reminders. It generates invoices on a monthly schedule and sends reminders for overdue payments, updating records in Google Sheets.\n\n## Good to Know\n- Supports monthly invoice generation and daily overdue checks\n- Integrates with Google Sheets for data management\n- Uses email notifications for invoice delivery and reminders\n- Includes logging for tracking and auditing\n- Features multiple reminder types based on overdue duration\n\n## How It Works\n### Invoice Creation Flow:\n- **Monthly Invoice Trigger** - Initiates workflow on a set monthly schedule\n- **Get Clients for Invoicing** - Reads client data from Google Sheet\n- **Filter Active Clients** - Filters out inactive clients\n- **Generate Invoice Data** - Creates invoice details in required format\n- **Save Invoice to Google Sheets** - Appends or updates invoice record in the sheet\n- **Send Invoice Email** - Sends the invoice to the client via email\n- **Log Invoice Creation** - Logs invoice creation for records/auditing\n\n### Reminder Flow:\n- **Daily Payment Reminder Check** - Triggers workflow daily to check overdue invoices\n- **Get Overdue Invoices** - Reads overdue invoices from Google Sheet\n- **Filter Overdue Invoices** - Filters invoices still unpaid\n- **Calculate Reminder Type** - Calculates how many days overdue\n- **Switch Reminder Type** - Decides which type of reminder to send\n- **Send Gentle / Follow-up / Urgent / Final Notice** - Sends respective reminder email\n- **Update Reminder Log** - Updates reminder status in the sheet\n\n## How to Use\n- Import workflow into n8n\n- Configure Google Sheets API for data access\n- Set up email service for notifications\n- Define monthly schedule for invoice trigger\n- Test with sample client data and monitor reminders\n- Adjust reminder thresholds as needed\n\n## Requirements\n- Access to Google Sheets API\n- Email service configuration\n- Scheduled trigger setup in n8n\n\n## Sheet Columns:\n- **Client Name**\n- **Invoice ID**\n- **Amount**\n- **Due Date**\n- **Status**\n- **Reminder Type**\n- **Last Updated**\n\n## Customizing This Workflow\n- Modify invoice generation schedule\n- Adjust reminder email templates\n- Configure custom Google Sheet columns\n- Set custom overdue thresholds\n- Integrate additional notification methods",
    "workflow": {
      "id": "yaudVbewTA3Zxsb4",
      "meta": {
        "instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
        "templateCredsSetupCompleted": true
      },
      "name": "Automated Invoice Creator & Payment Reminder Bot for Clients",
      "tags": [],
      "nodes": [
        {
          "id": "d75d7591-4afa-427c-b436-ada9d8eb90dc",
          "name": "Monthly Invoice Trigger",
          "type": "n8n-nodes-base.cron",
          "position": [
            -180,
            -180
          ],
          "parameters": {},
          "typeVersion": 1
        },
        {
          "id": "442fcd9c-dcff-4b5f-8d3e-17823048e40a",
          "name": "Daily Payment Reminder Check",
          "type": "n8n-nodes-base.cron",
          "position": [
            -180,
            380
          ],
          "parameters": {},
          "typeVersion": 1
        },
        {
          "id": "e291b555-c948-48c4-b5a8-0e39b4c16e0b",
          "name": "Get Clients for Invoicing",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            40,
            -180
          ],
          "parameters": {
            "options": {},
            "sheetName": "Clients",
            "documentId": "YOUR_GOOGLE_SHEET_ID",
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4
        },
        {
          "id": "d17d13ca-cf7b-42a2-8c0a-c41858b936ec",
          "name": "Get Overdue Invoices",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            40,
            380
          ],
          "parameters": {
            "options": {},
            "sheetName": "Invoices",
            "documentId": "YOUR_GOOGLE_SHEET_ID",
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4
        },
        {
          "id": "b7838069-c5ef-4a6b-8003-f976f5952c55",
          "name": "Filter Active Clients",
          "type": "n8n-nodes-base.code",
          "position": [
            260,
            -180
          ],
          "parameters": {
            "jsCode": "// Filter active clients ready for invoicing\nconst allClients = $input.all();\nconst today = new Date();\ntoday.setHours(0, 0, 0, 0);\n\nconst clientsToInvoice = allClients.filter(item => {\n  const client = item.json;\n  // Skip header row\n  if (client.A === 'client_id' || !client.A) return false;\n  \n  const status = client.F; // Column F = status\n  const billingDate = new Date(client.E); // Column E = billing_date\n  billingDate.setHours(0, 0, 0, 0);\n  \n  return status === 'active' && billingDate <= today;\n});\n\n// Transform to readable format\nconst transformedClients = clientsToInvoice.map(item => {\n  const client = item.json;\n  return {\n    json: {\n      client_id: client.A,\n      client_name: client.B,\n      email: client.C,\n      service_description: client.D,\n      billing_date: client.E,\n      status: client.F,\n      amount: parseFloat(client.G) || 0\n    }\n  };\n});\n\nreturn transformedClients;"
          },
          "typeVersion": 2
        },
        {
          "id": "66d888dd-020c-4d3b-845b-f93cd867e6a8",
          "name": "Filter Overdue Invoices",
          "type": "n8n-nodes-base.code",
          "position": [
            260,
            380
          ],
          "parameters": {
            "jsCode": "// Filter overdue invoices\nconst allInvoices = $input.all();\nconst today = new Date();\ntoday.setHours(0, 0, 0, 0);\n\nconst overdueInvoices = allInvoices.filter(item => {\n  const invoice = item.json;\n  // Skip header row\n  if (invoice.A === 'invoice_id' || !invoice.A) return false;\n  \n  const status = invoice.G; // Column G = status\n  const dueDate = new Date(invoice.F); // Column F = due_date\n  dueDate.setHours(0, 0, 0, 0);\n  \n  // Get yesterday's date\n  const yesterday = new Date(today);\n  yesterday.setDate(yesterday.getDate() - 1);\n  \n  return status === 'pending' && dueDate <= yesterday;\n});\n\n// Transform to readable format\nconst transformedInvoices = overdueInvoices.map(item => {\n  const invoice = item.json;\n  return {\n    json: {\n      invoice_id: invoice.A,\n      invoice_number: invoice.B,\n      client_name: invoice.C,\n      email: invoice.D,\n      amount: parseFloat(invoice.E) || 0,\n      due_date: invoice.F,\n      status: invoice.G,\n      last_reminder_sent: invoice.H,\n      reminder_count: parseInt(invoice.I) || 0\n    }\n  };\n});\n\nreturn transformedInvoices;"
          },
          "typeVersion": 2
        },
        {
          "id": "0253a4de-ca69-4dd0-9c75-7bb686d296be",
          "name": "Generate Invoice Data",
          "type": "n8n-nodes-base.code",
          "position": [
            480,
            -180
          ],
          "parameters": {
            "jsCode": "// Generate invoice number\nconst now = new Date();\nconst invoiceNumber = `INV-${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}-${String(Math.floor(Math.random() * 1000)).padStart(3, '0')}`;\n\n// Calculate due date (30 days from now)\nconst dueDate = new Date();\ndueDate.setDate(dueDate.getDate() + 30);\n\n// Get client data\nconst clientData = $input.first().json;\n\n// Create invoice data\nconst invoiceData = {\n  invoice_number: invoiceNumber,\n  client_id: clientData.client_id,\n  client_name: clientData.client_name,\n  email: clientData.email,\n  service_description: clientData.service_description,\n  amount: clientData.amount,\n  issue_date: now.toISOString().split('T')[0],\n  due_date: dueDate.toISOString().split('T')[0],\n  status: 'pending'\n};\n\nreturn { json: invoiceData };"
          },
          "typeVersion": 2
        },
        {
          "id": "b2bebed5-0a36-4d7f-9ae1-ce5aeb17803d",
          "name": "Save Invoice to Google Sheets",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            700,
            -180
          ],
          "parameters": {
            "columns": {
              "value": {},
              "schema": [],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": "Invoices",
            "documentId": "YOUR_GOOGLE_SHEET_ID",
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4
        },
        {
          "id": "d22a9ad6-41a6-4601-9fe4-6bb194854fbd",
          "name": "Send Invoice Email",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            920,
            -180
          ],
          "webhookId": "039267b7-9d76-4d9e-aa27-c38630f6a340",
          "parameters": {
            "text": "={{ $json.result }}",
            "options": {
              "allowUnauthorizedCerts": true
            },
            "subject": "New Invoice - {{ $json.invoice_number }}",
            "toEmail": "={{ $json.email }}",
            "fromEmail": "user@example.com"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "bb3d4b79-3a7e-4d7a-914a-4dbd85a8bca3",
          "name": "Calculate Reminder Type",
          "type": "n8n-nodes-base.code",
          "position": [
            480,
            380
          ],
          "parameters": {
            "jsCode": "// Calculate days overdue\nconst dueDate = new Date($json.due_date);\nconst today = new Date();\nconst daysOverdue = Math.floor((today - dueDate) / (1000 * 60 * 60 * 24));\n\n// Determine reminder type based on days overdue\nlet reminderType = 'gentle';-\nlet subject = 'Payment Reminder';\n\nif (daysOverdue >= 30) {\n  reminderType = 'final';\n  subject = 'FINAL NOTICE - Payment Required';\n} else if (daysOverdue >= 14) {\n  reminderType = 'urgent';\n  subject = 'URGENT - Payment Overdue';\n} else if (daysOverdue >= 7) {\n  reminderType = 'follow-up';\n  subject = 'Payment Follow-up Required';\n}\n\nreturn {\n  json: {\n    ...($json),\n    days_overdue: daysOverdue,\n    reminder_type: reminderType,\n    email_subject: subject\n  }\n};"
          },
          "typeVersion": 2
        },
        {
          "id": "8eacfac6-b3f0-41f8-9d45-6587f3f59333",
          "name": "Switch Reminder Type",
          "type": "n8n-nodes-base.switch",
          "position": [
            700,
            359
          ],
          "parameters": {
            "rules": {
              "values": [
                {
                  "conditions": {
                    "options": {
                      "version": 1,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "613ef87a-e0f6-45ee-9347-9db597b7dbf9",
                        "operator": {
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{$json.reminder_type}}",
                        "rightValue": "gentle"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 1,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "7c82cc7e-9659-48e8-9143-bc3bca67c8f4",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{$json.reminder_type}}",
                        "rightValue": "follow-up"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 1,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "66f7c6ba-5f18-4290-84c3-1ab9de84ef21",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{$json.reminder_type}}",
                        "rightValue": "urgent"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 1,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "6e481655-1f66-4b4c-9717-3564e811ace6",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{$json.reminder_type}}",
                        "rightValue": "final"
                      }
                    ]
                  }
                }
              ]
            },
            "options": {}
          },
          "typeVersion": 3
        },
        {
          "id": "aa11ccd1-090e-4544-8c89-1957368268ff",
          "name": "Send Gentle Reminder",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            920,
            80
          ],
          "webhookId": "7e1cb363-765e-44ab-8b06-87986f45f32b",
          "parameters": {
            "options": {},
            "subject": "={{ $json.email_subject }} - Invoice {{ $json.invoice_id }}",
            "toEmail": "={{ $json.email }}",
            "fromEmail": "user@example.com"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "aa04fbde-36fc-4c9d-bc0e-ef3725de3879",
          "name": "Send Follow-up Reminder",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            920,
            280
          ],
          "webhookId": "4bbdea59-2c15-462b-ab02-55bebc8ef40d",
          "parameters": {
            "options": {},
            "subject": "={{ $json.email_subject }} - Invoice {{ $json.invoice_id }}",
            "toEmail": "={{ $json.email }}",
            "fromEmail": "user@example.com"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "da991ec5-fa55-4cbb-8fe2-d9ee1f231ca1",
          "name": "Send Urgent Reminder",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            920,
            480
          ],
          "webhookId": "4ef3d5cc-ccb7-4c9e-9b1e-1c85e1ead937",
          "parameters": {
            "options": {},
            "subject": "={{ $json.email_subject }} - Invoice {{ $json.invoice_id }}",
            "toEmail": "={{ $json.email }}",
            "fromEmail": "user@example.com"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "03806211-8278-4e6e-9aa3-9511ae7b2d6a",
          "name": "Send Final Notice",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            920,
            680
          ],
          "webhookId": "2cd79d98-5ef3-4d4e-a8f1-d9f48bc2417b",
          "parameters": {
            "options": {},
            "subject": "={{ $json.email_subject }} - Invoice {{ $json.invoice_id }}",
            "toEmail": "={{ $json.email }}",
            "fromEmail": "user@example.com"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "b8d9735c-cf50-4b4e-b913-f21093e68dc2",
          "name": "Update Reminder Log",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            1140,
            380
          ],
          "parameters": {
            "columns": {
              "value": {},
              "schema": [],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "update",
            "sheetName": "Invoices",
            "documentId": "YOUR_GOOGLE_SHEET_ID",
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4
        },
        {
          "id": "11ef4edf-e5d2-4f0a-874c-af270b75b338",
          "name": "Log Invoice Creation",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            1140,
            -180
          ],
          "parameters": {
            "columns": {
              "value": {},
              "schema": [],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": "Activity_Log",
            "documentId": "YOUR_GOOGLE_SHEET_ID",
            "authentication": "serviceAccount"
          },
          "credentials": {
            "googleApi": {
              "id": "credential-id",
              "name": "googleApi Credential"
            }
          },
          "typeVersion": 4
        },
        {
          "id": "b41db4f5-4b6a-481a-b7ef-60028e651eff",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            100,
            -620
          ],
          "parameters": {
            "width": 760,
            "height": 340,
            "content": "## Invoice Creation Flow\n\n\n**Monthly Invoice Trigger** – Triggers workflow on a set monthly schedule.\n\n**Get Clients for Invoicing** – Reads client data from Google Sheet.\n\n**Filter Active Clients** – Filters out inactive clients.\n\n**Generate Invoice Data** – Creates invoice details in required format.\n\n**Save Invoice to Google Sheets** – Appends or updates invoice record in the sheet.\n\n**Send Invoice Email** – Sends the invoice to the client via email.\n\n**Log Invoice Creation** – Logs invoice creation for records/auditing."
          },
          "typeVersion": 1
        },
        {
          "id": "e50bfca0-4cc7-4837-a480-a29ef3d675e6",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -280,
            80
          ],
          "parameters": {
            "color": 4,
            "width": 980,
            "height": 220,
            "content": "## **Reminder Flow**\n\n**Daily Payment Reminder Check** – Triggers workflow daily to check overdue invoices.\n**Get Overdue Invoices** – Reads overdue invoices from Google Sheet.\n**Filter Overdue Invoices** – Filters invoices still unpaid.\n**Calculate Reminder Type** – Calculates how many days overdue.\n**Switch Reminder Type** – Decides which type of reminder to send.\n**Send Gentle / Follow-up / Urgent / Final Notice** – Sends respective reminder email.\n**Update Reminder Log** – Updates reminder status in the sheet."
          },
          "typeVersion": 1
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "af210e95-bedc-44a9-ab43-8129618f3429",
      "connections": {
        "Send Final Notice": {
          "main": [
            [
              {
                "node": "Update Reminder Log",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Invoice Email": {
          "main": [
            [
              {
                "node": "Log Invoice Creation",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Get Overdue Invoices": {
          "main": [
            [
              {
                "node": "Filter Overdue Invoices",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Gentle Reminder": {
          "main": [
            [
              {
                "node": "Update Reminder Log",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Urgent Reminder": {
          "main": [
            [
              {
                "node": "Update Reminder Log",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Switch Reminder Type": {
          "main": [
            [
              {
                "node": "Send Gentle Reminder",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Send Follow-up Reminder",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Send Urgent Reminder",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Send Final Notice",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Filter Active Clients": {
          "main": [
            [
              {
                "node": "Generate Invoice Data",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Generate Invoice Data": {
          "main": [
            [
              {
                "node": "Save Invoice to Google Sheets",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Calculate Reminder Type": {
          "main": [
            [
              {
                "node": "Switch Reminder Type",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Filter Overdue Invoices": {
          "main": [
            [
              {
                "node": "Calculate Reminder Type",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Monthly Invoice Trigger": {
          "main": [
            [
              {
                "node": "Get Clients for Invoicing",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Follow-up Reminder": {
          "main": [
            [
              {
                "node": "Update Reminder Log",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Get Clients for Invoicing": {
          "main": [
            [
              {
                "node": "Filter Active Clients",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Daily Payment Reminder Check": {
          "main": [
            [
              {
                "node": "Get Overdue Invoices",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save Invoice to Google Sheets": {
          "main": [
            [
              {
                "node": "Send Invoice Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 19,
      "nodeTypes": {
        "n8n-nodes-base.code": {
          "count": 4
        },
        "n8n-nodes-base.cron": {
          "count": 2
        },
        "n8n-nodes-base.switch": {
          "count": 1
        },
        "n8n-nodes-base.emailSend": {
          "count": 5
        },
        "n8n-nodes-base.stickyNote": {
          "count": 2
        },
        "n8n-nodes-base.googleSheets": {
          "count": 5
        }
      }
    },
    "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": 7,
        "icon": "fa:clock",
        "name": "n8n-nodes-base.cron",
        "codex": {
          "data": {
            "alias": [
              "Time",
              "Scheduler",
              "Polling",
              "Cron",
              "Interval"
            ],
            "details": "The Cron node uses Cron under the hood - a time-based job scheduler in Unix-like computer operating systems. Use this node when you want to trigger workflows periodically, especially in more complex scenarios like \"every Tuesday at 9 am\" or \"Weekdays\".",
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-goals-level-up-your-vocabulary-with-vonage-and-n8n/",
                  "icon": "🎯",
                  "label": "2021 Goals: Level Up Your Vocabulary With Vonage and n8n"
                },
                {
                  "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/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/why-i-chose-n8n-over-zapier-in-2020/",
                  "icon": "😍",
                  "label": "Why I chose n8n over Zapier in 2020"
                },
                {
                  "url": "https://n8n.io/blog/how-to-host-virtual-coffee-breaks-with-n8n/",
                  "icon": "☕️",
                  "label": "How to host virtual coffee breaks with n8n"
                },
                {
                  "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/how-to-sync-data-between-two-systems/",
                  "icon": "🏬",
                  "label": "How to synchronize data between two systems (one-way vs. two-way sync"
                },
                {
                  "url": "https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/",
                  "icon": "📡",
                  "label": "Database Monitoring and Alerting with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
                  "icon": "⚙️",
                  "label": "Automate your data processing pipeline in 9 steps"
                },
                {
                  "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/tracking-time-spent-in-meetings-with-google-calendar-twilio-and-n8n/",
                  "icon": "🗓",
                  "label": "Tracking Time Spent in Meetings With Google Calendar, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/creating-error-workflows-in-n8n/",
                  "icon": "🌪",
                  "label": "Creating Error Workflows in n8n"
                },
                {
                  "url": "https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/",
                  "icon": "💪",
                  "label": "Using Automation to Boost Productivity in the Workplace"
                },
                {
                  "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/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/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"
                },
                {
                  "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"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"trigger\",\"schedule\"]",
        "defaults": {
          "name": "Cron",
          "color": "#29a568"
        },
        "iconData": {
          "icon": "clock",
          "type": "icon"
        },
        "displayName": "Cron",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 11,
        "icon": "fa:envelope",
        "name": "n8n-nodes-base.emailSend",
        "codex": {
          "data": {
            "alias": [
              "SMTP",
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "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/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sendemail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/sendemail/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "Send Email",
          "color": "#00bb88"
        },
        "iconData": {
          "icon": "envelope",
          "type": "icon"
        },
        "displayName": "Send Email",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "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": 112,
        "icon": "fa:map-signs",
        "name": "n8n-nodes-base.switch",
        "codex": {
          "data": {
            "alias": [
              "Router",
              "If",
              "Path",
              "Filter",
              "Condition",
              "Logic",
              "Branch",
              "Case"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                },
                {
                  "url": "https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/",
                  "icon": "🏷️",
                  "label": "How to automatically manage contributions to open-source projects"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Switch",
          "color": "#506000"
        },
        "iconData": {
          "icon": "map-signs",
          "type": "icon"
        },
        "displayName": "Switch",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 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"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 34,
        "name": "Invoice Processing"
      }
    ],
    "image": []
  }
}