Enriquecimiento de datos de CRM HDW
Este es unSales, AIflujo de automatización del dominio deautomatización que contiene 42 nodos.Utiliza principalmente nodos como If, Hubspot, HubspotTool, PipedriveTool, HubspotTrigger, combinando tecnología de inteligencia artificial para lograr automatización inteligente. usoGPTy多CRM支持a través deLinkedIn资料丰富Pipedrive CRM联系人datos
- •Clave de API de HubSpot
- •Credenciales de API de LinkedIn
- •Clave de API de OpenAI
Nodos utilizados (42)
Categoría
{
"id": "reF98YdsmqqRYRfs",
"meta": {
"instanceId": "9bce59fa408e249dab636faffc5a13e5aa1a2e4af3383a551051e8bd22b2a1b9",
"templateCredsSetupCompleted": true
},
"name": "HDW CRM Enrichment",
"tags": [],
"nodes": [
{
"id": "3c5a9019-48f6-4ec8-a375-65b312a5ca8b",
"name": "Modelo de chat OpenAI",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
20,
300
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "DzKhX3E7SSLddnv4",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "67d2d4a7-cf92-40b0-8f9d-5a9001f5a9d4",
"name": "Obtener Empresa del CRM",
"type": "n8n-nodes-base.pipedriveTool",
"onError": "continueRegularOutput",
"position": [
200,
300
],
"parameters": {
"resource": "organization",
"operation": "get",
"organizationId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Organization_ID', `org_id`, 'number') }}",
"descriptionType": "manual",
"toolDescription": "Get information about company from CRM (name)"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1,
"alwaysOutputData": false
},
{
"id": "517cb827-8581-417e-ad66-62ce48958d3c",
"name": "Modelo de chat OpenAI1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
40,
960
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "DzKhX3E7SSLddnv4",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "ccb4f7f2-15f7-41ae-a0c5-6f836956e32a",
"name": "Obtener Empresa del CRM1",
"type": "n8n-nodes-base.pipedriveTool",
"onError": "continueRegularOutput",
"position": [
220,
960
],
"parameters": {
"resource": "organization",
"operation": "get",
"organizationId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Organization_ID', `org_id`, 'number') }}",
"descriptionType": "manual",
"toolDescription": "Get information about company from CRM (name)"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1,
"alwaysOutputData": false
},
{
"id": "97df8c33-3cbd-4739-add2-07550ddd3d59",
"name": "Modelo de chat OpenAI2",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
340,
1720
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "DzKhX3E7SSLddnv4",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "9ba0bf56-cefb-48a0-8133-111dd4199ddb",
"name": "HubSpot Trigger",
"type": "n8n-nodes-base.hubspotTrigger",
"position": [
-400,
1380
],
"webhookId": "f23339ab-755f-4730-b941-440a3aabd531",
"parameters": {
"eventsUi": {
"eventValues": [
{},
{
"name": "contact.propertyChange",
"property": "need_enrichment"
}
]
},
"additionalFields": {}
},
"credentials": {
"hubspotDeveloperApi": {
"id": "YoTxoBbdZ9jgzVZI",
"name": "HubSpot Developer account"
}
},
"typeVersion": 1
},
{
"id": "1601abfa-2d1f-4cf0-8e8b-272544adf088",
"name": "If1",
"type": "n8n-nodes-base.if",
"position": [
40,
1380
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "07631805-59b3-4985-9bb1-e9d8bed4ba6c",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $('HubSpot Trigger').item.json.subscriptionType }}",
"rightValue": "contact.creation"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "3782caf0-a426-40dd-b822-af718c00a143",
"name": "If2",
"type": "n8n-nodes-base.if",
"position": [
200,
1520
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "8a2e7666-3353-426a-a52f-b25fcce4b6b1",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $('HubSpot Trigger').item.json.subscriptionType }}",
"rightValue": "contact.propertyChange"
},
{
"id": "98e06926-e30b-4ee5-b723-6acada900e43",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.properties.need_enrichment.value }}",
"rightValue": "true"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "65865367-746a-4e58-ad21-4b728bf1f22c",
"name": "Pipedrive Trigger New Contact",
"type": "n8n-nodes-base.pipedriveTrigger",
"position": [
-220,
40
],
"webhookId": "57f88f55-eaac-4545-8798-5c85b74de8aa",
"parameters": {
"action": "create",
"entity": "person"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1.1
},
{
"id": "94a1a81e-8023-42ec-a607-9ad639dab6b1",
"name": "Agentee de IA para Enriquecimiento de Datos",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
180,
40
],
"parameters": {
"text": "=User data:\nemail - {{ $json.data.emails[0].value }}\nname - {{ $json.data.name }}\norganization id - {{ $json.data.org_id }}",
"options": {
"systemMessage": "# LinkedIn Data Enrichment Agent\n\nYou are an advanced data enrichment agent specialized in augmenting CRM records with LinkedIn profile data. Your purpose is to analyze incoming Pipedrive CRM person data, find matching LinkedIn profiles, extract valuable information, and update the CRM with enhanced professional insights.\n\n## Input Data Structure\nYou will receive a JSON array containing Pipedrive person data with the following structure:\n- Person's name, email, and other contact information\n- Custom fields and metadata\n- Timestamp and system information\n\n## Available Tools\n1. `get_linkedin_email_user` - Search for LinkedIn profiles by email address\n2. `get_organisation_info` - Get information about company from CRM\n3. `get_linkedin_user_posts` - Retrieve recent posts from a LinkedIn profile\n4. `get_linkedin_profile` - Get detailed information about a LinkedIn profile\n5. `update_pipedrive_data` - Update CRM data with LinkedIn insights\n6. `search_linkedin_users` - Search for profiles using parameters like name, title, location, company\n\n## Processing Algorithm\n1. SEARCH BY EMAIL: First, attempt to find the LinkedIn profile using the person's email address.\n2. ALTERNATIVE SEARCH: If no profile is found via email, Get company details from CRM to get a company name and use available parameters (name, company, location) to search for potential matches. \n3. PROFILE DETAILS: Once a profile is found, retrieve comprehensive profile details.\n4. PROFILE SUMMARY: Create a concise, informative summary of the profile highlighting key professional information.\n5. POST RETRIEVAL: Obtain the person's recent LinkedIn posts.\n6. POST SUMMARY: Analyze posts to identify patterns, interests, and professional focus areas.\n7. CRM UPDATE: Update the Pipedrive record with:\n - LinkedIn profile URL\n - Profile summary\n - Post activity summary\n\n## Output Requirements\nFor each profile processed, you must:\n1. Use structured, consistent data format for CRM updates\n2. Include relevant professional insights that could aid in business relationship development\n3. Format all summaries in clear, concise language\n4. Handle errors gracefully, documenting any profiles that could not be enriched\n\nAlways respect privacy and data protection standards throughout this process. Process each record thoroughly before moving to the next one."
},
"promptType": "define"
},
"typeVersion": 1.9
},
{
"id": "1416e6a9-07b3-4ae0-89d9-a02d2210b263",
"name": "HDW Obtener perfil de LinkedIn por Correo electrónico",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
360,
300
],
"parameters": {
"count": 1,
"email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email', `user email`, 'string') }}",
"resource": "email"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "0497e923-2172-460e-be39-a892f86bdc44",
"name": "Actualizar datos en Pipedrive",
"type": "n8n-nodes-base.pipedriveTool",
"position": [
520,
300
],
"parameters": {
"personId": "={{ $('Pipedrive Trigger New Contact').item.json.data.id }}",
"resource": "person",
"operation": "update",
"updateFields": {
"customProperties": {
"property": [
{
"name": "aaff6b5725bba77a29b560b3e9755c37795c8b02",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property0_Property_Value', `User post summary`, 'string') }}"
},
{
"name": "9e32b0cdeabbcb1cc9c60e0691b6a3c68c9ecbf3",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property1_Property_Value', `linkedin profile url`, 'string') }}"
},
{
"name": "16b938b8c25aff3ee2a0bcab7382ddf8785f9fc3",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property2_Property_Value', `profile summary`, 'string') }}"
}
]
}
},
"descriptionType": "manual",
"toolDescription": "Update data in Pipedrive\nUse this tool for update customer data from linkedin profile:\nPost summary\nProfile URL\nProfile summary"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1
},
{
"id": "a0a8ad5d-ee64-48d0-88f5-12393138e07a",
"name": "HDW Buscar Perfil de LinkedIn",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
660,
300
],
"parameters": {
"keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Keywords', ``, 'string') }}",
"additionalFields": {
"location": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Location', `location`, 'string') }}",
"last_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Last_Name', `last name`, 'string') }}",
"first_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('First_Name', `first name`, 'string') }}",
"company_keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Company_Keywords', `company`, 'string') }}"
}
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "679e5c8c-4597-4286-a356-2e7746644d65",
"name": "HDW Obtener Detalles del Perfil LinkedIn",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
820,
300
],
"parameters": {
"user": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User', `user alias`, 'string') }}",
"operation": "getProfile"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "76231a56-fa8e-44f2-9e02-3407cc776098",
"name": "HDW Obtener Publicaciones del Perfil LinkedIn",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
980,
300
],
"parameters": {
"urn": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User_URN', `user URN with prefix: fsd_profile:ACoAA..`, 'string') }}",
"operation": "getPosts"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "ef79759b-283d-4a03-8c3a-2cc2f67c1183",
"name": "Pipedrive Trigger Update Data for Existing Client",
"type": "n8n-nodes-base.pipedriveTrigger",
"position": [
-180,
700
],
"webhookId": "57f88f55-eaac-4545-8798-5c85b74de8aa",
"parameters": {
"action": "change",
"entity": "person"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1.1
},
{
"id": "86b8c79b-5d0f-40f5-b6fb-6a675a6d5165",
"name": "Enrich Flag is True",
"type": "n8n-nodes-base.if",
"position": [
20,
700
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "c4337b59-91a5-4f3b-b384-0790e1494595",
"operator": {
"type": "number",
"operation": "equals"
},
"leftValue": "={{ $json.data.custom_fields['84e4db043440773b8550825d3112e4a0292ef0f2'].id }}",
"rightValue": 29
}
]
}
},
"typeVersion": 2.2
},
{
"id": "e8878f73-5d53-4e5c-a974-f3fe99481585",
"name": "HDW Obtener perfil de LinkedIn por Correo electrónico1",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
400,
960
],
"parameters": {
"count": 1,
"email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email', `user email`, 'string') }}",
"resource": "email"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "f8fa0c6a-b598-40dd-8ddb-e6606aa78ace",
"name": "HDW Obtener perfil de LinkedIn por Correo electrónico2",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
640,
1720
],
"parameters": {
"count": 1,
"email": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Email', `user email`, 'string') }}",
"resource": "email"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "e3457e56-7a83-46e7-8926-5a3152d2d863",
"name": "Agentee de IA para Enriquecimiento de Datos1",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
540,
1400
],
"parameters": {
"text": "=User data:\nemail - {{ $json['identity-profiles'][0].identities[0].value }}\nname - {{ $json.properties.hs_full_name_or_email.value }}\nCompany name - {{ $json.properties.company.value }}",
"options": {
"systemMessage": "# LinkedIn Data Enrichment Agent\n\nYou are an advanced data enrichment agent specialized in augmenting CRM records with LinkedIn profile data. Your purpose is to analyze incoming Pipedrive CRM person data, find matching LinkedIn profiles, extract valuable information, and update the CRM with enhanced professional insights.\n\n## Input Data Structure\nYou will receive a JSON array containing Pipedrive person data with the following structure:\n- Person's name, email, and other contact information\n- Custom fields and metadata\n- Timestamp and system information\n\n## Available Tools\n1. `get_linkedin_email_user` - Search for LinkedIn profiles by email address\n2. `get_linkedin_user_posts` - Retrieve recent posts from a LinkedIn profile\n3. `get_linkedin_profile` - Get detailed information about a LinkedIn profile\n4. `update_hubspot_data` - Update CRM data with LinkedIn insights\n5. `search_linkedin_users` - Search for profiles using parameters like name, title, location, company\n\n## Processing Algorithm\n1. SEARCH BY EMAIL: First, attempt to find the LinkedIn profile using the person's email address.\n2. ALTERNATIVE SEARCH: If no profile is found via email, available parameters (name, company, location) to search for potential matches. \n3. PROFILE DETAILS: Once a profile is found, retrieve comprehensive profile details.\n4. PROFILE SUMMARY: Create a concise, informative summary of the profile highlighting key professional information.\n5. POST RETRIEVAL: Obtain the person's recent LinkedIn posts.\n6. POST SUMMARY: Analyze posts to identify patterns, interests, and professional focus areas. If profile has no posts - update \"no post\"\n7. CRM UPDATE: Update the Pipedrive record with:\n - LinkedIn profile URL\n - Profile summary\n - Post activity summary\n\n## Output Requirements\nFor each profile processed, you must:\n1. Use structured, consistent data format for CRM updates\n2. Include relevant professional insights that could aid in business relationship development\n3. Format all summaries in clear, concise language\n4. Handle errors gracefully, documenting any profiles that could not be enriched\n\nAlways respect privacy and data protection standards throughout this process. Process each record thoroughly before moving to the next one."
},
"promptType": "define"
},
"typeVersion": 1.9
},
{
"id": "be290e43-8d1c-47b9-8768-5b28c1fec310",
"name": "Agentee de IA para Enriquecimiento de Datos2",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
240,
640
],
"parameters": {
"text": "=User data:\nemail - {{ $json.data.emails[0].value }}\nname - {{ $json.data.name }}\norganization id - {{ $json.data.org_id }}",
"options": {
"systemMessage": "# LinkedIn Data Enrichment Agent\n\nYou are an advanced data enrichment agent specialized in augmenting CRM records with LinkedIn profile data. Your purpose is to analyze incoming Pipedrive CRM person data, find matching LinkedIn profiles, extract valuable information, and update the CRM with enhanced professional insights.\n\n## Input Data Structure\nYou will receive a JSON array containing Pipedrive person data with the following structure:\n- Person's name, email, and other contact information\n- Custom fields and metadata\n- Timestamp and system information\n\n## Available Tools\n1. `get_linkedin_email_user` - Search for LinkedIn profiles by email address\n2. `get_organisation_info` - Get information about company from CRM\n3. `get_linkedin_user_posts` - Retrieve recent posts from a LinkedIn profile\n4. `get_linkedin_profile` - Get detailed information about a LinkedIn profile\n5. `update_pipedrive_data` - Update CRM data with LinkedIn insights\n6. `search_linkedin_users` - Search for profiles using parameters like name, title, location, company\n\n## Processing Algorithm\n1. SEARCH BY EMAIL: First, attempt to find the LinkedIn profile using the person's email address.\n2. ALTERNATIVE SEARCH: If no profile is found via email, Get company details from CRM to get a company name and use available parameters (name, company, location) to search for potential matches. \n3. PROFILE DETAILS: Once a profile is found, retrieve comprehensive profile details.\n4. PROFILE SUMMARY: Create a concise, informative summary of the profile highlighting key professional information.\n5. POST RETRIEVAL: Obtain the person's recent LinkedIn posts.\n6. POST SUMMARY: Analyze posts to identify patterns, interests, and professional focus areas.\n7. CRM UPDATE: Update the Pipedrive record with:\n - LinkedIn profile URL\n - Profile summary\n - Post activity summary\n\n## Output Requirements\nFor each profile processed, you must:\n1. Use structured, consistent data format for CRM updates\n2. Include relevant professional insights that could aid in business relationship development\n3. Format all summaries in clear, concise language\n4. Handle errors gracefully, documenting any profiles that could not be enriched\n\nAlways respect privacy and data protection standards throughout this process. Process each record thoroughly before moving to the next one."
},
"promptType": "define"
},
"typeVersion": 1.9
},
{
"id": "db2ff73b-eab1-4334-91e7-e79d49c3dc75",
"name": "Actualizar datos en Pipedrive1",
"type": "n8n-nodes-base.pipedriveTool",
"position": [
580,
960
],
"parameters": {
"personId": "={{ $('Pipedrive Trigger Update Data for Existing Client').item.json.data.id }}",
"resource": "person",
"operation": "update",
"updateFields": {
"customProperties": {
"property": [
{
"name": "aaff6b5725bba77a29b560b3e9755c37795c8b02",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property0_Property_Value', `User post summary`, 'string') }}"
},
{
"name": "9e32b0cdeabbcb1cc9c60e0691b6a3c68c9ecbf3",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property1_Property_Value', `linkedin profile url`, 'string') }}"
},
{
"name": "16b938b8c25aff3ee2a0bcab7382ddf8785f9fc3",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('property2_Property_Value', `profile summary`, 'string') }}"
},
{
"name": "84e4db043440773b8550825d3112e4a0292ef0f2"
}
]
}
},
"descriptionType": "manual",
"toolDescription": "Update data in Pipedrive\nUse this tool for update customer data from linkedin profile:\nPost summary\nProfile URL\nProfile summary"
},
"credentials": {
"pipedriveApi": {
"id": "Np1lpjHWyDnuQBzh",
"name": "Pipedrive account"
}
},
"typeVersion": 1
},
{
"id": "603575e8-6177-4a15-ba26-c4c050ebbc8d",
"name": "Actualizar datos en HubSpot",
"type": "n8n-nodes-base.hubspotTool",
"position": [
500,
1720
],
"parameters": {
"email": "={{ $json.properties.email.value }}",
"options": {},
"authentication": "appToken",
"descriptionType": "manual",
"toolDescription": "Update HubSpot CRM Data",
"additionalFields": {
"customPropertiesUi": {
"customPropertiesValues": [
{
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('customPropertiesValues0_Value', `LinkedIn Post Summary`, 'string') }}",
"property": "linkedin_posts_summary"
},
{
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('customPropertiesValues1_Value', `LinkedIn Profile Summary`, 'string') }}",
"property": "profile_summary"
},
{
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('customPropertiesValues3_Value', `Linkedin URL`, 'string') }}",
"property": "linkedin_url"
}
]
}
}
},
"credentials": {
"hubspotAppToken": {
"id": "SMSkOh9sYnPkB155",
"name": "HubSpot App Token account"
}
},
"typeVersion": 2.1
},
{
"id": "02935731-b9b1-490c-9416-f297106bb148",
"name": "HDW Buscar Perfil de LinkedIn1",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
720,
960
],
"parameters": {
"keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Keywords', ``, 'string') }}",
"additionalFields": {
"location": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Location', `location`, 'string') }}",
"last_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Last_Name', `last name`, 'string') }}",
"first_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('First_Name', `first name`, 'string') }}",
"company_keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Company_Keywords', `company`, 'string') }}"
}
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "9354223f-88de-4a79-9ac8-19fa711ca341",
"name": "HDW Buscar Perfil de LinkedIn2",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
800,
1720
],
"parameters": {
"keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Keywords', ``, 'string') }}",
"additionalFields": {
"location": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Location', `location`, 'string') }}",
"last_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Last_Name', `last name`, 'string') }}",
"first_name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('First_Name', `first name`, 'string') }}",
"company_keywords": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Company_Keywords', `company`, 'string') }}"
}
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "373b2006-b5f2-4903-add3-0ed48a17ab97",
"name": "HDW Obtener Detalles del Perfil LinkedIn1",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
880,
960
],
"parameters": {
"user": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User', `user alias`, 'string') }}",
"operation": "getProfile"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "53f71433-2806-4c66-8a46-44ed9f5d688d",
"name": "HDW Obtener Detalles del Perfil LinkedIn2",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
960,
1720
],
"parameters": {
"user": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User', `user alias`, 'string') }}",
"operation": "getProfile"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "00c64271-b0c7-4eee-b412-74eec1c390c5",
"name": "HDW Obtener Publicaciones del Perfil LinkedIn1",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
1040,
960
],
"parameters": {
"urn": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User_URN', `user URN with prefix: fsd_profile:ACoAA..`, 'string') }}",
"operation": "getPosts"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "21727229-4e20-48ad-939d-4f620829cb62",
"name": "HDW Obtener Publicaciones del Perfil LinkedIn2",
"type": "n8n-nodes-hdw.hdwLinkedinTool",
"position": [
1120,
1720
],
"parameters": {
"urn": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User_URN', `user URN with prefix: fsd_profile:ACoAA..`, 'string') }}",
"operation": "getPosts"
},
"credentials": {
"hdwLinkedinApi": {
"id": "ZT0V5HkxTZIlAkvE",
"name": "HDW LinkedIn account"
}
},
"typeVersion": 1
},
{
"id": "6fd5f3e8-4a2c-4ef3-a9c3-b10e5420f20e",
"name": "HubSpot Get Contact Data",
"type": "n8n-nodes-base.hubspot",
"position": [
-180,
1380
],
"parameters": {
"contactId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.contactId }}"
},
"operation": "get",
"authentication": "appToken",
"additionalFields": {
"propertiesCollection": {
"propertiesValues": {
"properties": [
"firstname",
"lastname",
"email",
"company"
],
"propertyMode": "valueOnly"
}
}
}
},
"credentials": {
"hubspotAppToken": {
"id": "SMSkOh9sYnPkB155",
"name": "HubSpot App Token account"
}
},
"typeVersion": 2.1
},
{
"id": "cbda84b3-6b42-400e-9926-428d5759714a",
"name": "Nota Adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
-500,
-20
],
"parameters": {
"width": 2100,
"height": 1180,
"content": "## PipeDrive Agent"
},
"typeVersion": 1
},
{
"id": "5824df79-605d-4fd4-aa86-a50f0425d0cc",
"name": "Nota Adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-500,
1240
],
"parameters": {
"width": 2100,
"height": 660,
"content": "## HubSpot Agent"
},
"typeVersion": 1
},
{
"id": "50321ab6-d818-4160-ada5-4b5bd5ab432f",
"name": "Nota Adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-440,
1280
],
"parameters": {
"color": 3,
"width": 400,
"height": 280,
"content": "1. Create custom fields in your CRM\n2. Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "c9adb7de-0a6f-4800-807c-d67b2ffb4814",
"name": "Nota Adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
480,
1280
],
"parameters": {
"color": 3,
"width": 400,
"height": 280,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "022986b3-26e9-4ecc-b700-7cb61fca3ca2",
"name": "Nota Adhesiva4",
"type": "n8n-nodes-base.stickyNote",
"position": [
460,
1660
],
"parameters": {
"color": 3,
"width": 150,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "7cb9b84a-ef8e-40db-9c9a-03513a2c778a",
"name": "Nota Adhesiva5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-340,
600
],
"parameters": {
"color": 3,
"width": 320,
"height": 260,
"content": "1. Create custom fields in your CRM\n2. Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "4f0f1330-5a20-485a-be61-3e19fe8ae7cb",
"name": "Nota Adhesiva6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-260,
-20
],
"parameters": {
"color": 3,
"width": 320,
"height": 220,
"content": "1. Create custom fields in your CRM\n2. Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "9cb66045-3364-473d-94a9-a07e014997c6",
"name": "Nota Adhesiva7",
"type": "n8n-nodes-base.stickyNote",
"position": [
200,
580
],
"parameters": {
"color": 3,
"width": 400,
"height": 280,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "eeccfac0-afa0-4990-b74f-c6fd06364d9b",
"name": "Nota Adhesiva8",
"type": "n8n-nodes-base.stickyNote",
"position": [
140,
-20
],
"parameters": {
"color": 3,
"width": 400,
"height": 280,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "e734b8c3-4df3-4c53-87f7-80a093b4177d",
"name": "Nota Adhesiva9",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
900
],
"parameters": {
"color": 3,
"width": 150,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "a9a31bf4-f1e4-4980-9ff8-f84310e8a6ee",
"name": "Nota Adhesiva10",
"type": "n8n-nodes-base.stickyNote",
"position": [
480,
240
],
"parameters": {
"color": 3,
"width": 150,
"content": "Check the fields mapping in the node"
},
"typeVersion": 1
},
{
"id": "492448e0-cc3c-4a5c-94fd-5eb5cf7c135f",
"name": "Nota Adhesiva11",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1780,
-440
],
"parameters": {
"width": 960,
"height": 2700,
"content": "# CRM Data Enrichment Workflow\nhorizondatawave.ai\n\n## Overview\nThis n8n workflow automates the enrichment of CRM contact data with professional insights from LinkedIn profiles. The workflow integrates with both Pipedrive and HubSpot CRMs, finding LinkedIn profiles that match your contacts and updating your CRM with valuable information about their professional background and recent activities.\n\n## Key Features\n- **Multi-CRM Support**: Works with both Pipedrive and HubSpot\n- **AI-Powered Data Enrichment**: Uses an advanced AI agent to analyze and summarize professional information\n- **Automated Triggers**: Activates when new contacts are added or when enrichment is requested\n- **Comprehensive Profile Analysis**: Captures LinkedIn profile summaries and post activity\n\n## How It Works\n\n### Triggers\nThe workflow activates in three scenarios:\n1. When a new contact is created in CRM\n2. When a contact is updated in CRM with an enrichment flag\n\n### LinkedIn Data Collection Process\n1. **Email Lookup**: First tries to find the LinkedIn profile using the contact's email\n2. **Advanced Search**: If email lookup fails, uses name and company details to find potential matches\n3. **Profile Analysis**: Collects comprehensive profile information\n4. **Post Analysis**: Gathers and analyzes the contact's recent LinkedIn activity\n\n### CRM Updates\nThe workflow updates your CRM with:\n- LinkedIn profile URL\n- Professional summary (skills, experience, background)\n- Analysis of recent LinkedIn posts and activity\n\n## Setup Instructions\n\n### Requirements\n1. Self-hosted n8n instance with the HDW LinkedIn community node installed\n2. API access to OpenAI (for GPT-4o)\n3. Pipedrive and/or HubSpot account\n4. HDW API key [https://app.horizondatawave.ai](https://app.horizondatawave.ai)\n\n\n### Installation Steps\n1. **Install the HDW LinkedIn Node**:\n ```\n npm install n8n-nodes-hdw\n ```\n - Follow the detailed instructions at: [https://www.npmjs.com/package/n8n-nodes-hdw](https://www.npmjs.com/package/n8n-nodes-hdw)\n\n2. **Configure Credentials**:\n - **OpenAI**: Add your OpenAI API key\n - **Pipedrive**: Connect your Pipedrive account (if using)\n - **HubSpot**: Connect your HubSpot account (if using)\n - **HDW LinkedIn**: Add your API key from [https://app.horizondatawave.ai](https://app.horizondatawave.ai)\n\n3. **CRM Custom Fields Setup**:\n \n **For Pipedrive:**\n - Go to Settings → Data Fields → Contact Fields → + Add Field\n - Create the following custom fields:\n - **LinkedIn Profile**: Field type - Large text\n - **Profile Summary**: Field type - Large text \n - **LinkedIn Posts Summary**: Field type - Large text\n - **Need Enrichment**: Field type - Single option (Yes/No)\n \n Detailed instructions for creating custom fields in Pipedrive: \n [https://support.pipedrive.com/en/article/custom-fields](https://support.pipedrive.com/en/article/custom-fields)\n \n **For HubSpot:**\n - Go to Settings → Properties → Create property\n - Create the following properties for Contact object:\n - **linkedin_url**: Field type - Single-line text\n - **profile_summary**: Field type - Multi-line text\n - **linkedin_posts_summary**: Field type - Multi-line text\n - **need_enrichment**: Field type - Checkbox (Boolean)\n \n Detailed instructions for creating properties in HubSpot:\n [https://knowledge.hubspot.com/properties/create-and-edit-properties](https://knowledge.hubspot.com/properties/create-and-edit-properties)\n\n4. **Import the Workflow**:\n - Import the \"HDW_CRM_Enrichment.json\" file into your n8n instance\n\n5. **Activate Webhooks**:\n - Enable the webhook triggers for your CRM to ensure the workflow activates correctly\n\n## Customization Options\n\n### AI Agent Prompts\nYou can modify the system prompts in the \"Data Enrichment AI Agent\" nodes to:\n- Change the focus of profile analysis\n- Adjust the tone and detail level of summaries\n- Customize what information is extracted from posts\n\n### CRM Field Mapping\nThe workflow is pre-configured to update specific custom fields in Pipedrive and HubSpot. Update the field/property mappings in:\n- \"Update data in Pipedrive\" nodes\n- \"Update data in HubSpot\" node\n\n## Troubleshooting\n\n### Common Issues\n- **LinkedIn Profile Not Found**: Check if the contact's email is their work email; consider adjusting the search parameters\n- **Webhook Not Triggering**: Verify webhook configuration in your CRM\n- **Missing Custom Fields**: Ensure all required custom fields are created in your CRM with correct names\n\n### Rate Limits\n- Be aware of LinkedIn API rate limits (managed by HDW LinkedIn node)\n- Consider implementing delays if processing large batches of contacts\n\n## Best Practices\n- Use enrichment flags to selectively update contacts rather than enriching all contacts\n- Review and clean contact data in your CRM before enrichment\n- Periodically review the AI-generated summaries to ensure quality and relevance\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "590fdecb-0bdb-4019-8602-ead5ada0e6c1",
"connections": {
"1601abfa-2d1f-4cf0-8e8b-272544adf088": {
"main": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "main",
"index": 0
}
],
[
{
"node": "3782caf0-a426-40dd-b822-af718c00a143",
"type": "main",
"index": 0
}
]
]
},
"3782caf0-a426-40dd-b822-af718c00a143": {
"main": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "main",
"index": 0
}
]
]
},
"9ba0bf56-cefb-48a0-8133-111dd4199ddb": {
"main": [
[
{
"node": "6fd5f3e8-4a2c-4ef3-a9c3-b10e5420f20e",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"OpenAI Chat Model2": {
"ai_languageModel": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"86b8c79b-5d0f-40f5-b6fb-6a675a6d5165": {
"main": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "main",
"index": 0
}
]
]
},
"67d2d4a7-cf92-40b0-8f9d-5a9001f5a9d4": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"ccb4f7f2-15f7-41ae-a0c5-6f836956e32a": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"603575e8-6177-4a15-ba26-c4c050ebbc8d": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_tool",
"index": 0
}
]
]
},
"Agente de IA para Enriquecimiento de Datos": {
"main": [
[]
]
},
"6fd5f3e8-4a2c-4ef3-a9c3-b10e5420f20e": {
"main": [
[
{
"node": "1601abfa-2d1f-4cf0-8e8b-272544adf088",
"type": "main",
"index": 0
}
]
]
},
"0497e923-2172-460e-be39-a892f86bdc44": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"db2ff73b-eab1-4334-91e7-e79d49c3dc75": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"a0a8ad5d-ee64-48d0-88f5-12393138e07a": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"02935731-b9b1-490c-9416-f297106bb148": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"9354223f-88de-4a79-9ac8-19fa711ca341": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_tool",
"index": 0
}
]
]
},
"65865367-746a-4e58-ad21-4b728bf1f22c": {
"main": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "main",
"index": 0
}
]
]
},
"76231a56-fa8e-44f2-9e02-3407cc776098": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"00c64271-b0c7-4eee-b412-74eec1c390c5": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"21727229-4e20-48ad-939d-4f620829cb62": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_tool",
"index": 0
}
]
]
},
"679e5c8c-4597-4286-a356-2e7746644d65": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"373b2006-b5f2-4903-add3-0ed48a17ab97": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"53f71433-2806-4c66-8a46-44ed9f5d688d": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_tool",
"index": 0
}
]
]
},
"HDW Obtener perfil de LinkedIn por Email": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos",
"type": "ai_tool",
"index": 0
}
]
]
},
"HDW Obtener perfil de LinkedIn por Email1": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos2",
"type": "ai_tool",
"index": 0
}
]
]
},
"HDW Obtener perfil de LinkedIn por Email2": {
"ai_tool": [
[
{
"node": "Agente de IA para Enriquecimiento de Datos1",
"type": "ai_tool",
"index": 0
}
]
]
},
"ef79759b-283d-4a03-8c3a-2cc2f67c1183": {
"main": [
[
{
"node": "86b8c79b-5d0f-40f5-b6fb-6a675a6d5165",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado - Ventas, Inteligencia Artificial
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Andrey
@kuliaCompartir este flujo de trabajo