Recherche de prospects LinkedIn et approche personnalisée pilotée par Gemini (Google Sheets)
Ceci est unLead Generation, Multimodal AIworkflow d'automatisation du domainecontenant 13 nœuds.Utilise principalement des nœuds comme SplitOut, EmailSend, FormTrigger, HttpRequest, GoogleSheets. Recherche de prospects LinkedIn et approche personnalisée pilotée par Gemini (Google Sheets)
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Informations d'identification Google Sheets API
Nœuds utilisés (13)
Catégorie
{
"meta": {
"instanceId": "783d2046f405cc6ecb20ef185376ed1023323a3da628b9d8156b1fb75c75e037",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "75d06417-5d15-4372-9aa5-bc9bf008cf37",
"name": "Diviser",
"type": "n8n-nodes-base.splitOut",
"position": [
3472,
-1072
],
"parameters": {
"options": {},
"fieldToSplitOut": "items"
},
"typeVersion": 1
},
{
"id": "bfcd5fd4-3ab1-44ed-ade4-c39ce5fca1e4",
"name": "Boucler sur les éléments",
"type": "n8n-nodes-base.splitInBatches",
"position": [
3696,
-1072
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "7d25973b-07b0-43b3-a067-85dc340b4d8d",
"name": "Soumission de formulaire",
"type": "n8n-nodes-base.formTrigger",
"position": [
2768,
-1072
],
"webhookId": "1bd6594d-7541-4e65-a2fe-0311eca49001",
"parameters": {
"options": {},
"formTitle": "1.0 S_LG_Find LinkedIn Accounts by keywords and Write personal message for contact",
"formFields": {
"values": [
{
"fieldLabel": "Keywords to find Company / Professional"
},
{
"fieldLabel": "Purpose of Contact"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "4106578e-1721-4da3-8ec0-a85584d32c0d",
"name": "Créer des chaînes de recherche booléenne",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
2960,
-1072
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"content": "=You are a tool that generates Boolean search strings for Google, in order to search for companies or professionals on LinkedIn. \n\n# Task:\n- Based on the keyword and the purpose, generate a suitable keyword string for searching on LinkedIn. \n- Only return the keyword string, without any explanation or additional information. \n- Always add site:linkedin.com to the keyword string. \n\n# Input:\nKeyword: {{ $json['Keywords to find Company / Professional'] }}\nPurpose: {{ $json['Purpose of Contact'] }}"
}
]
}
},
"credentials": {
"googlePalmApi": {
"id": "Atcc45Iqep6u15qs",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "e64562e8-dd4c-448d-8c8c-0d1e3cc00c87",
"name": "Obtenir Linkedin Company",
"type": "n8n-nodes-base.httpRequest",
"position": [
3264,
-1072
],
"parameters": {
"url": "https://www.googleapis.com/customsearch/v1",
"options": {},
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "key",
"value": "xxxxxxxxx"
},
{
"name": "cx",
"value": "xxxxx"
},
{
"name": "q",
"value": "={{ $json.content.parts[0].text }}"
},
{
"name": "num",
"value": "20"
},
{
"name": "hl",
"value": "vi"
},
{
"name": "gl",
"value": "vn"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "a69b91dd-72c7-4050-82c7-418175c21d10",
"name": "Rédaction du message",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
4176,
-1056
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-1.5-flash",
"cachedResultName": "models/gemini-1.5-flash"
},
"options": {},
"messages": {
"values": [
{
"content": "=You are an AI that drafts outreach messages.\n\n# Requirements\nBased on the purpose: {{ $('Form submit').item.json['Purpose of Contact'] }}\nand the company information: \nname: {{ $json.name }} \ndescription: {{ $json.des }} \n\nWrite a suitable and personalized outreach message for that specific company. \n\nOnly return the outreach message, without any explanation or additional text. \nIf some information is missing, use placeholders. "
}
]
}
},
"credentials": {
"googlePalmApi": {
"id": "Atcc45Iqep6u15qs",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "f5eefcd1-cfb8-45fc-bc4a-67f88500b2c4",
"name": "Mettre à jour la feuille",
"type": "n8n-nodes-base.googleSheets",
"position": [
4496,
-1056
],
"parameters": {
"columns": {
"value": {
"message": "={{ $json.content.parts[0].text }}",
"row_number": 0,
"linkedin_url": "={{ $('Append row in sheet').item.json.linkedin_url }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "linkedin_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "linkedin_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "des",
"type": "string",
"display": true,
"required": false,
"displayName": "des",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "message",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "message",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": false,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"linkedin_url"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TlZ5uDYJAWm_hx_wkI7HXvXwuOL5WBdxRIMwjQ1kpEU/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "=xxxxx"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "urlO8dciDPm5B2zv",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "5159d49c-52fb-43c6-bb1e-9becc104fdcf",
"name": "Envoyer un email",
"type": "n8n-nodes-base.emailSend",
"position": [
3952,
-1232
],
"webhookId": "f322979e-146f-4022-9f44-bc4eb261e33c",
"parameters": {
"html": "[Link to sheet]",
"options": {},
"subject": "Your auto writing message be completed",
"toEmail": "info@example.com",
"fromEmail": "admin@example.com"
},
"credentials": {
"smtp": {
"id": "CmiyUJFKtSRuiioY",
"name": "SMTP account"
}
},
"typeVersion": 2.1
},
{
"id": "1d35af31-c2cf-42c9-8e5b-e6796990925b",
"name": "Ajouter une ligne dans la feuille",
"type": "n8n-nodes-base.googleSheets",
"position": [
3952,
-1056
],
"parameters": {
"columns": {
"value": {
"des": "={{ $json.pagemap.metatags[0][\"og:description\"] }}",
"name": "={{ $json.title }}",
"linkedin_url": "={{ $json.link }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "linkedin_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "linkedin_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "des",
"type": "string",
"display": true,
"required": false,
"displayName": "des",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "message",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "message",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"linkedin_url"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TlZ5uDYJAWm_hx_wkI7HXvXwuOL5WBdxRIMwjQ1kpEU/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "=xxxxx"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "urlO8dciDPm5B2zv",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "e7a90a44-a1bb-4727-9cbd-7d86e6a7a5d0",
"name": "Note adhésive 3",
"type": "n8n-nodes-base.stickyNote",
"position": [
3840,
-864
],
"parameters": {
"width": 352,
"content": "## Google Sheets Mapping\n- **name** → Company/Person name \n- **linkedin_url** → LinkedIn profile/company URL \n- **des** → Description or tagline \n- **message** → AI-generated outreach text \n"
},
"typeVersion": 1
},
{
"id": "8bf56071-28f3-4b9d-81dc-c425695ee7a0",
"name": "Note adhésive 4",
"type": "n8n-nodes-base.stickyNote",
"position": [
3200,
-1168
],
"parameters": {
"width": 224,
"height": 272,
"content": "### Update hl & gl to fit with your location"
},
"typeVersion": 1
},
{
"id": "414c16fb-3015-489e-bbb5-f51272f45d2a",
"name": "Note adhésive 5",
"type": "n8n-nodes-base.stickyNote",
"position": [
2768,
-832
],
"parameters": {
"color": 3,
"width": 448,
"height": 240,
"content": "## Overview\n1. Collect keywords & purpose from a form \n2. Generate Boolean LinkedIn search queries with AI \n3. Search LinkedIn profiles/companies via Google Custom Search \n4. Save results (name, URL, description) into Google Sheets \n5. Generate personalized outreach messages with AI \n6. Update the sheet with the message and send notification email \n"
},
"typeVersion": 1
},
{
"id": "bbc5b875-1b07-406c-b856-ca285a73770e",
"name": "Note adhésive 6",
"type": "n8n-nodes-base.stickyNote",
"position": [
2768,
-560
],
"parameters": {
"color": 6,
"width": 448,
"height": 176,
"content": "## Setup Required\n1. Configure Google Sheets OAuth2 credentials \n2. Configure Gemini API credentials \n3. Configure SMTP credentials (for email notifications) \n4. Update Custom Search Engine ID (`cx`) and API Key \n5. Adjust `hl` & `gl` parameters for your location \n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"75d06417-5d15-4372-9aa5-bc9bf008cf37": {
"main": [
[
{
"node": "bfcd5fd4-3ab1-44ed-ade4-c39ce5fca1e4",
"type": "main",
"index": 0
}
]
]
},
"7d25973b-07b0-43b3-a067-85dc340b4d8d": {
"main": [
[
{
"node": "4106578e-1721-4da3-8ec0-a85584d32c0d",
"type": "main",
"index": 0
}
]
]
},
"f5eefcd1-cfb8-45fc-bc4a-67f88500b2c4": {
"main": [
[
{
"node": "bfcd5fd4-3ab1-44ed-ade4-c39ce5fca1e4",
"type": "main",
"index": 0
}
]
]
},
"bfcd5fd4-3ab1-44ed-ade4-c39ce5fca1e4": {
"main": [
[
{
"node": "5159d49c-52fb-43c6-bb1e-9becc104fdcf",
"type": "main",
"index": 0
}
],
[
{
"node": "1d35af31-c2cf-42c9-8e5b-e6796990925b",
"type": "main",
"index": 0
}
]
]
},
"a69b91dd-72c7-4050-82c7-418175c21d10": {
"main": [
[
{
"node": "f5eefcd1-cfb8-45fc-bc4a-67f88500b2c4",
"type": "main",
"index": 0
}
]
]
},
"1d35af31-c2cf-42c9-8e5b-e6796990925b": {
"main": [
[
{
"node": "a69b91dd-72c7-4050-82c7-418175c21d10",
"type": "main",
"index": 0
}
]
]
},
"e64562e8-dd4c-448d-8c8c-0d1e3cc00c87": {
"main": [
[
{
"node": "75d06417-5d15-4372-9aa5-bc9bf008cf37",
"type": "main",
"index": 0
}
]
]
},
"4106578e-1721-4da3-8ec0-a85584d32c0d": {
"main": [
[
{
"node": "e64562e8-dd4c-448d-8c8c-0d1e3cc00c87",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Génération de leads, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Cong Nguyen
@cong-nguyenI’m a developer specialized in building web and mobile applications with AI integration and intelligent automation. With a solid background in data science, I help businesses build smarter digital solutions using cutting-edge technologies.
Partager ce workflow