AutomationFlowsMarketing & Ads › Build Backlink Prospecting Lead Lists with Apify and Google Sheets

Build Backlink Prospecting Lead Lists with Apify and Google Sheets

ByFabian Maume @fabian-m on n8n.io

This workflow runs manually or on a schedule to pull search queries and excluded domains from Google Sheets, launches Apify’s Link Prospecting Tool, then uses an Apify “run succeeded” webhook to fetch the resulting datasets and append leads and newly discovered domains back into…

Event trigger★★★★☆ complexity26 nodesGoogle Sheets@Apify/N8N Nodes Apify
Marketing & Ads Trigger: Event Nodes: 26 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #15930 — we link there as the canonical source.

This workflow follows the Apifyn8N Nodes Apify → Google Sheets recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "qOkhVSuTvNZOPyYZ",
  "name": "Backlink builder",
  "tags": [],
  "nodes": [
    {
      "id": "9f384afb-6f69-4256-92b6-9a2e31f7cf6a",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 480,
        "height": 896,
        "content": "## Backlink builder\n\n### How it works\n\nThis workflow builds backlink prospect lists by reading search queries and a blacklist from Google Sheets, formatting them, and launching an Apify link prospecting tool. When Apify reports completion through a webhook, the workflow retrieves the latest run outputs and saves leads, batch data, and newly processed domains back into Google Sheets. The canvas is organized into a left-to-right launch flow and separate result-writing branches on the right.\n\n### Setup steps\n\n- Make a copy of [the template spreadsheet](https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=sharing)\n- Configure Google Sheets credentials in n8n and select the correct spreadsheet, tabs, and ranges for queries, blacklist, leads, and batch output.\n- Configure Apify credentials and confirm the link prospecting actor/tool input fields match the formatted data produced by the code node.\n- Set the desired schedule in the Schedule Trigger, or use the manual trigger for ad hoc runs.\n- Register or configure the Webhook URL as the callback endpoint used by the Apify run completion process.\n\n### Customization\n\nAdjust the Brand, ownDowmains and organicResults input in \"Execute Link Prospecting\" node.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ee36e690-b7da-41e5-bf6c-259b2ee2d93e",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        0
      ],
      "parameters": {
        "color": 7,
        "width": 272,
        "height": 672,
        "content": "## Start workflow runs\n\nManual and scheduled triggers start the prospecting workflow and fan out to load the required spreadsheet inputs."
      },
      "typeVersion": 1
    },
    {
      "id": "82c11e92-7758-4e70-922b-e90267ea5dda",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        960,
        48
      ],
      "parameters": {
        "color": 7,
        "height": 560,
        "content": "## Load prospecting inputs\n\nReads the search queries and existing blacklist from Google Sheets so the run can avoid already-processed or excluded domains."
      },
      "typeVersion": 1
    },
    {
      "id": "79de3dcb-d5e6-4dd2-8147-e2d78b1d04a4",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1248,
        192
      ],
      "parameters": {
        "color": 7,
        "width": 496,
        "height": 448,
        "content": "## Prepare and launch search\n\nFormats the query and domain data, then starts the Apify link prospecting tool with the prepared input."
      },
      "typeVersion": 1
    },
    {
      "id": "7fabe4b8-4e56-4033-85b7-5be6ab36b919",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2528,
        112
      ],
      "parameters": {
        "color": 7,
        "width": 198,
        "height": 592,
        "content": "## Receive run completion\n\nA webhook receives the completion callback and retrieves metadata for the latest Apify run before branching into result collection."
      },
      "typeVersion": 1
    },
    {
      "id": "6b5d8f01-ea52-4d01-ba91-e019089d4e7d",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2784,
        0
      ],
      "parameters": {
        "color": 7,
        "width": 576,
        "height": 320,
        "content": "## Save lead results\n\nFetches lead records from Apify and appends them to the main leads sheet in Google Sheets."
      },
      "typeVersion": 1
    },
    {
      "id": "f0d1c0a4-292f-4e4e-a9bb-518dd477b5a3",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2784,
        352
      ],
      "parameters": {
        "color": 7,
        "width": 576,
        "height": 336,
        "content": "## Save first batch\n\nRetrieves the first batch of prospecting results and writes that batch into its dedicated Google Sheets tab or range."
      },
      "typeVersion": 1
    },
    {
      "id": "04f4118b-944a-4b05-bfbc-30c13e6c3c2f",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2800,
        720
      ],
      "parameters": {
        "color": 7,
        "width": 592,
        "height": 368,
        "content": "## Update domain blacklist\n\nCollects domains that produced leads and adds them to the blacklist sheet so future runs do not target them again."
      },
      "typeVersion": 1
    },
    {
      "id": "4addd197-404e-4744-95e5-169d82b6ebc6",
      "name": "Manual Trigger Execution",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        688,
        176
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "ac830328-679b-4952-9706-ec45e21a7eb7",
      "name": "Read Queries from Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1008,
        256
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit#gid=0",
          "cachedResultName": "[input] query"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=drivesdk",
          "cachedResultName": "N8N template: link building"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "6c86030f-0940-4548-a985-dd39df181926",
      "name": "Read Blacklist Domains",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1008,
        448
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1781870514,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit#gid=1781870514",
          "cachedResultName": "[input & output] excluded domains"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=drivesdk",
          "cachedResultName": "N8N template: link building"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "429e2e3b-f7e9-4427-8d96-601e1a530093",
      "name": "Execute Link Prospecting",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        1536,
        448
      ],
      "parameters": {
        "actorId": {
          "__rl": true,
          "mode": "list",
          "value": "PsHRUvw5ETmwNomF0",
          "cachedResultUrl": "https://console.apify.com/actors/PsHRUvw5ETmwNomF0/input",
          "cachedResultName": "Link Prospecting Tool (apify/link-prospecting-tool)"
        },
        "customBody": "={{ { \"brand\": \"Tetriz\", \"ownDomains\": [\"Tetriz.io\"], \"organicResult\": 10, \"queries\": $json.queries, ignoreDomains: $json.ignoreDomains } }}",
        "authentication": "apifyOAuth2Api"
      },
      "typeVersion": 1
    },
    {
      "id": "fdc23b26-331a-4472-a3d9-2f74f439a2f7",
      "name": "Format Queries and Domains",
      "type": "n8n-nodes-base.code",
      "position": [
        1296,
        448
      ],
      "parameters": {
        "jsCode": "const blacklist = $('Read Blacklist Domains')\n  .all()\n  .map((item) => item.json.blacklist);\n  \nconst queries = $('Read Queries from Sheets')\n  .all()\n  .map((item) => item.json.Queries);\n\nlet queryString = queries[0]\nlet x = 0\nwhile (x < queries.length){\n  queryString = queryString + \"\\n\" + queries[x]\n  x = x + 1\n}\n\n\nreturn [{ json: { ignoreDomains: blacklist, queries: queryString } }];"
      },
      "typeVersion": 2
    },
    {
      "id": "8de84969-bb05-4bda-a92c-236c09978798",
      "name": "Scheduled Monthly Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        608,
        512
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "months"
            }
          ]
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "1d310958-db98-44ce-9211-513c6c2f10d2",
      "name": "Webhook POST Handler",
      "type": "n8n-nodes-base.webhook",
      "position": [
        2272,
        464
      ],
      "parameters": {
        "path": "4e22d4fb-6915-4351-9d8b-216941002b65",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2.1
    },
    {
      "id": "20e795fc-4b77-40e4-a085-203009c0f015",
      "name": "Retrieve Last Run Status",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        2544,
        336
      ],
      "parameters": {
        "operation": "Get last run",
        "userActorId": {
          "__rl": true,
          "mode": "list",
          "value": "PsHRUvw5ETmwNomF0",
          "cachedResultUrl": "https://console.apify.com/actors/PsHRUvw5ETmwNomF0/input",
          "cachedResultName": "Link Prospecting Tool (apify/link-prospecting-tool)"
        },
        "authentication": "apifyOAuth2Api"
      },
      "typeVersion": 1
    },
    {
      "id": "b8919e5d-4827-40e6-be70-c70d266c6ae1",
      "name": "Fetch Leads from API",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        2832,
        144
      ],
      "parameters": {
        "offset": {},
        "resource": "Datasets",
        "datasetId": "={{ $json.storageIds.datasets.default }}",
        "authentication": "apifyOAuth2Api"
      },
      "typeVersion": 1
    },
    {
      "id": "675eb61f-32ed-484c-8e66-933959f73167",
      "name": "Fetch Batch 1 Data",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        2832,
        512
      ],
      "parameters": {
        "offset": {},
        "resource": "Datasets",
        "datasetId": "={{ $json.storageIds.datasets.Batch1 }}",
        "authentication": "apifyOAuth2Api"
      },
      "typeVersion": 1
    },
    {
      "id": "3162189d-cb9e-44b2-b5d5-24b378101a52",
      "name": "Fetch Domain Leads",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        2848,
        848
      ],
      "parameters": {
        "offset": {},
        "resource": "Datasets",
        "datasetId": "={{ $json.storageIds.datasets.domainWithLeads }}",
        "authentication": "apifyOAuth2Api"
      },
      "typeVersion": 1
    },
    {
      "id": "86574f2b-2251-49e2-b416-9b51b299f34a",
      "name": "Append to Blacklist Domains",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3248,
        912
      ],
      "parameters": {
        "columns": {
          "value": {
            "blacklist": "={{ $json.domain }}"
          },
          "schema": [
            {
              "id": "blacklist",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "blacklist",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "blacklist"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1781870514,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit#gid=1781870514",
          "cachedResultName": "[input & output] excluded domains"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=drivesdk",
          "cachedResultName": "N8N template: link building"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "aa58a56f-ca8f-4c9e-91ff-023866c5203f",
      "name": "Append Leads to Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3216,
        128
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "personId",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "personId",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "firstName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "firstName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "lastName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "lastName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "fullName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "fullName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "linkedinProfile",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "linkedinProfile",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "mobileNumber",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "mobileNumber",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "jobTitle",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "jobTitle",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "industry",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "industry",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "city",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "city",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "state",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "state",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "country",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "country",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyId",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyId",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyWebsite",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyWebsite",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companySize",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companySize",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyLinkedin",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyLinkedin",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyCity",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyCity",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyState",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyState",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyCountry",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyCountry",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyPhoneNumber",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "companyPhoneNumber",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "headline",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "headline",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "departments",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "departments",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "seniority",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "seniority",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "photoUrl",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "photoUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "twitter",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "twitter",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "emailVerification",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "emailVerification",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "domain",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "domain",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "source_url",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "source_url",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "brand_mentioned",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "brand_mentioned",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [
            "blacklist"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1887102024,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit#gid=1887102024",
          "cachedResultName": "[output] leads"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=drivesdk",
          "cachedResultName": "N8N template: link building"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "49090bcc-40ac-464f-ba4c-bd85a1a7cbad",
      "name": "Append to Batch 1 Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3216,
        480
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "personId",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "personId",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "firstName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "firstName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "lastName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "lastName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "fullName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "fullName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "linkedinProfile",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "linkedinProfile",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "mobileNumber",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "mobileNumber",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "jobTitle",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "jobTitle",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "industry",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "industry",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "city",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "city",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "state",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "state",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "country",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "country",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyId",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyId",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyWebsite",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyWebsite",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companySize",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companySize",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyLinkedin",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyLinkedin",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyCity",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyCity",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyState",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyState",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyCountry",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyCountry",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyPhoneNumber",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyPhoneNumber",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "headline",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "headline",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "departments",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "departments",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "seniority",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "seniority",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "photoUrl",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "photoUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "twitter",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "twitter",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "emailVerification",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "emailVerification",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "domain",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "domain",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "source_url",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "source_url",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "brand_mentioned",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "brand_mentioned",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 170741036,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit#gid=170741036",
          "cachedResultName": "[output] batch 1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1ONk8m88kmYjl7R7CP0ixAYYNUgo5FHO50Im5QCAyJjs/edit?usp=drivesdk",
          "cachedResultName": "N8N template: link building"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "8ea887a3-0796-4889-81fd-be1aba745d3c",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2176,
        272
      ],
      "parameters": {
        "width": 336,
        "height": 336,
        "content": "## Setup Web Hook\nGo to your list of Actor\nGo to Link Prospecting tool\nGo to integration\nClick on \"add integration\"\nSelect http request\nSelect \"Run succeeded\" in \"Start when\"\nPast webhook url in Url"
      },
      "typeVersion": 1
    },
    {
      "id": "629689e8-b254-4e80-a602-1b76b4e649a5",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1456,
        320
      ],
      "parameters": {
        "width": 256,
        "height": 304,
        "content": "## Customize\nEdit: Brand, ownDomains and organicResults "
      },
      "typeVersion": 1
    },
    {
      "id": "44d170f1-a6fb-4f8b-ae6b-391cb9a1e98a",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        528,
        -96
      ],
      "parameters": {
        "color": 4,
        "width": 1328,
        "height": 816,
        "content": "## launch the Link Prospecting tool\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b4e05b2c-e356-4755-a7d4-c9401527aed8",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2080,
        -64
      ],
      "parameters": {
        "color": 4,
        "width": 1328,
        "height": 1216,
        "content": "## Process the results\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "binaryMode": "separate",
    "executionOrder": "v1"
  },
  "versionId": "b1ab8dbc-aa52-45d7-a182-4c3b56b61dcf",
  "connections": {
    "Fetch Batch 1 Data": {
      "main": [
        [
          {
            "node": "Append to Batch 1 Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Domain Leads": {
      "main": [
        [
          {
            "node": "Append to Blacklist Domains",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Leads from API": {
      "main": [
        [
          {
            "node": "Append Leads to Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Webhook POST Handler": {
      "main": [
        [
          {
            "node": "Retrieve Last Run Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Blacklist Domains": {
      "main": [
        [
          {
            "node": "Format Queries and Domains",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Manual Trigger Execution": {
      "main": [
        [
          {
            "node": "Read Blacklist Domains",
            "type": "main",
            "index": 0
          },
          {
            "node": "Read Queries from Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Queries from Sheets": {
      "main": [
        [
          {
            "node": "Format Queries and Domains",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve Last Run Status": {
      "main": [
        [
          {
            "node": "Fetch Leads from API",
            "type": "main",
            "index": 0
          },
          {
            "node": "Fetch Domain Leads",
            "type": "main",
            "index": 0
          },
          {
            "node": "Fetch Batch 1 Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Scheduled Monthly Trigger": {
      "main": [
        [
          {
            "node": "Read Queries from Sheets",
            "type": "main",
            "index": 0
          },
          {
            "node": "Read Blacklist Domains",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Queries and Domains": {
      "main": [
        [
          {
            "node": "Execute Link Prospecting",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This workflow runs manually or on a schedule to pull search queries and excluded domains from Google Sheets, launches Apify’s Link Prospecting Tool, then uses an Apify “run succeeded” webhook to fetch the resulting datasets and append leads and newly discovered domains back into…

Source: https://n8n.io/workflows/15930/ — original creator credit. Request a take-down →

More Marketing & Ads workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Marketing & Ads

Run professional email campaigns with A/B testing, Google Sheets tracking, and Slack analytics. FEATURES:

Google Sheets, Slack, Gmail +1
Marketing & Ads

This workflow allows you to send multi-step email campaigns using n8n, Gmail and Google Sheets.

Google Sheets, Gmail, Execute Workflow Trigger
Marketing & Ads

Enrich And Veryify Leads. Uses httpRequest, googleSheets, googleSheetsTrigger. Event-driven trigger; 32 nodes.

HTTP Request, Google Sheets, Google Sheets Trigger
Marketing & Ads

Google Maps Lead Generation with Email Discovery. Uses @hasdata/n8n-nodes-hasdata, googleSheets, formTrigger. Event-driven trigger; 25 nodes.

@Hasdata/N8N Nodes Hasdata, Google Sheets, Form Trigger
Marketing & Ads

This workflow automates sales contact follow-ups and engagement tracking by integrating HighLevel CRM, Gmail, Slack, and Google Sheets. It fetches all contacts from HighLevel, filters inactive contact

High Level, Google Sheets, Gmail +1