{
  "name": "Generate personalized cold email icebreakers with GPT-4 from Google Sheets to instantly",
  "nodes": [
    {
      "id": "9854b4a2-8cc6-4a21-a505-27f6e07a0dd7",
      "name": "Get row(s) in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1312,
        48
      ]
    },
    {
      "id": "16f4af89-d852-4a41-a889-d4e95851615a",
      "name": "Append or update row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -752,
        32
      ]
    },
    {
      "id": "1c1fd3d4-5b40-4f8c-9ed3-8edef97809ea",
      "name": "Notify Master",
      "type": "n8n-nodes-base.telegram",
      "position": [
        0,
        -96
      ]
    },
    {
      "id": "ba5af28a-b788-46e1-a281-408558906ed2",
      "name": "Limit",
      "type": "n8n-nodes-base.limit",
      "position": [
        -192,
        -96
      ]
    },
    {
      "id": "19a2fc1a-56db-419c-ada1-7b4f497fc0d6",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -480,
        16
      ]
    },
    {
      "id": "116da4da-359e-48b9-b8c1-011ed86e0c15",
      "name": "IBC V3",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        144,
        192
      ]
    },
    {
      "id": "1173cb3a-4df7-49e5-9dc4-65569ded0472",
      "name": "Add leads to instantly",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        608,
        192
      ]
    },
    {
      "id": "584f8685-eda7-497d-b461-2f8983401d0f",
      "name": "Format Names",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -192,
        192
      ]
    },
    {
      "id": "8f6afa72-e7d8-4570-98b4-b1d8622a5bf6",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1360,
        -176
      ],
      "parameters": {
        "width": 464,
        "height": 368,
        "content": "## Read Sheets and Filter Variables\n\nThis workflow begins with a Google Sheets file that contains your scraped lead data. Checks if it has all the necessary variables to proceed and filters out ones t"
      }
    },
    {
      "id": "3fcfb5cb-5b20-406d-8e8f-ef30af7f7780",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -288,
        -400
      ],
      "parameters": {
        "width": 576,
        "height": 448,
        "content": "## Notify \n\nWhen the loop is complete it will send a notification to telegram to notify you that your workflow is complete and you can start using the newly added campaign on instantly.\n\nThe Limit nod"
      }
    },
    {
      "id": "e164dbea-9e30-4f8a-98b6-4bcc46d33074",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -352,
        384
      ],
      "parameters": {
        "width": 352,
        "height": 336,
        "content": "## Format Names\nIn this node we focus on cleaning and standardizing the user's first and last name. This step improves the quality of the icebreaker by giving the AI a clean, natural name to work with"
      }
    },
    {
      "id": "e02fab04-a203-45c0-b4fc-4ac33268b196",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        32,
        384
      ],
      "parameters": {
        "width": 416,
        "height": 224,
        "content": "## Ice Breaker Generator\n\nUsing the person’s first name, last name, email, bio, summary, and company name, we will generate a personalized icebreaker for cold email outreach or linkedin direct message"
      }
    },
    {
      "id": "d71a6f90-b912-4103-9300-4c0d10c9eeaf",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        512,
        384
      ],
      "parameters": {
        "width": 336,
        "height": 320,
        "content": "## Add leads to a campaign\n\nThis includes adding all required variables to the campaign. Refer to the documentation for the correct process of adding leads: \nhttps://developer.instantly.ai/api/v2/lead"
      }
    },
    {
      "id": "3ba8e563-f33c-4f4f-ab3e-c2148fb2115b",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -864,
        -192
      ],
      "parameters": {
        "width": 304,
        "height": 384,
        "content": "## Creating and populating new sheet within your Google sheet\nWe are grabbing all the rows that can be useful to us and attaching it to a new sheet within the same google sheet document we previously "
      }
    },
    {
      "id": "1b6d0980-d550-487d-b9cc-06fba2b88a0c",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        -144
      ],
      "parameters": {
        "width": 192,
        "height": 288,
        "content": "## Loop over each name \nthat we are pulling from pervious node. "
      }
    },
    {
      "id": "41dbf052-6287-4440-8a1a-4c33d81816bf",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2224,
        -224
      ],
      "parameters": {
        "width": 560,
        "height": 768,
        "content": "## Goal / Overview\n\nThe purpose of this workflow is to extract all the information from a excel sheet or excel any kind of .xlsx file type with rows of information which will contain infromation about"
      }
    },
    {
      "id": "01df4ece-5e34-437f-8112-0ab6985b9638",
      "name": "When clicking ‘Execute workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1600,
        48
      ]
    },
    {
      "id": "5f87c025-00e5-47b9-b249-d55efe5e2e08",
      "name": "If has all variables",
      "type": "n8n-nodes-base.if",
      "position": [
        -1072,
        48
      ]
    }
  ],
  "connections": {
    "Limit": {
      "main": [
        [
          {
            "node": "Notify Master",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IBC V3": {
      "main": [
        [
          {
            "node": "Add leads to instantly",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Names": {
      "main": [
        [
          {
            "node": "IBC V3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Format Names",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet": {
      "main": [
        [
          {
            "node": "If has all variables",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If has all variables": {
      "main": [
        [
          {
            "node": "Append or update row in sheet",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Add leads to instantly": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Append or update row in sheet": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking ‘Execute workflow’": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}