Automatización de recordatorios de leads de alto valor de GoHighLevel a Slack, Sheets y Calendar

Avanzado

Este es unLead Generationflujo de automatización del dominio deautomatización que contiene 17 nodos.Utiliza principalmente nodos como If, Code, Slack, HighLevel, GoogleSheets. Enviar recordatorios de leads de alto valor de GoHighLevel automáticamente a Slack, Sheets y Calendar

Requisitos previos
  • Bot Token de Slack o URL de Webhook
  • Credenciales de API de Google Sheets
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "S65jfvMZZfPk7EKf",
  "meta": {
    "instanceId": "8443f10082278c46aa5cf3acf8ff0f70061a2c58bce76efac814b16290845177",
    "templateCredsSetupCompleted": true
  },
  "name": "Automate High-Value Lead Alerts from GoHighLevel to Slack ,Sheets and Calender",
  "tags": [],
  "nodes": [
    {
      "id": "6539d6c2-4beb-42db-af71-48fa1853d0aa",
      "name": "Descripción General del Flujo de Trabajo",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2608,
        -320
      ],
      "parameters": {
        "color": 4,
        "width": 390,
        "height": 464,
        "content": "## 🎯 High-Value Lead Scoring & Alert System\n\nThis workflow automatically:\n- Fetches contacts from HighLevel CRM daily at 8 AM\n- Calculates lead scores from custom fields\n- Alerts sales team via Slack for leads scoring >80\n- Logs high-priority leads to Google Sheets\n- Creates follow-up calendar events automatically\n\n**Setup Required:**\n1. Connect HighLevel OAuth2 credentials\n2. Connect Slack API credentials\n3. Connect Google Sheets OAuth2\n4. Connect Google Calendar OAuth2\n5. Update Slack channel ID with your channel\n6. Update Google Sheet ID with your tracking sheet\n7. Map custom field IDs to match your CRM setup"
      },
      "typeVersion": 1
    },
    {
      "id": "c922fb0a-b1fd-468f-90e5-4aa414efc93c",
      "name": "Nota de Configuración de Programación",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2176,
        -304
      ],
      "parameters": {
        "width": 280,
        "height": 220,
        "content": "## ⏰ Daily Trigger\n\nRuns every day at 8:00 AM to check for new high-value leads.\n\n**Customization:**\nAdjust the trigger time in node settings to match your team's schedule."
      },
      "typeVersion": 1
    },
    {
      "id": "5180b1c3-1f23-4101-918e-cf970e5a19ac",
      "name": "Nota de Configuración de HighLevel",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1872,
        -368
      ],
      "parameters": {
        "width": 300,
        "height": 280,
        "content": "## 📥 Fetch All Contacts\n\n**Before Using:**\n1. Connect your HighLevel OAuth2 credentials\n2. Ensure API access is enabled in your HighLevel account\n3. Test with a small batch first\n\n**Note:** This retrieves ALL contacts. Consider adding filters if you have a large database."
      },
      "typeVersion": 1
    },
    {
      "id": "ff5451e2-b740-4c16-a7b9-879083678689",
      "name": "Nota de Lógica de Filtro",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1712,
        80
      ],
      "parameters": {
        "width": 280,
        "height": 220,
        "content": "## 🔍 Filter Contacts with Custom Fields\n\nOnly processes contacts that have custom fields populated.\n\nThis prevents errors when trying to extract lead scores from incomplete data."
      },
      "typeVersion": 1
    },
    {
      "id": "51cf93d7-a03e-4eed-b4c2-0cf0821d8536",
      "name": "Nota de Configuración de Código",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1472,
        -384
      ],
      "parameters": {
        "width": 300,
        "height": 300,
        "content": "## ⚙️ Transform Contact Data\n\n**Custom Field IDs to Update:**\n- Lead Score Field: `sEic9OWa5yndTAitjgoe`\n- Assigned Rep Field: `YHJqNOSAvMbI08mnabNb`\n\n**Action Required:**\nReplace these IDs with YOUR actual custom field IDs from HighLevel.\n\nFind them in: HighLevel → Settings → Custom Fields → Copy Field ID"
      },
      "typeVersion": 1
    },
    {
      "id": "6f3ad72f-c5d5-476d-90dc-3ffc5181dca1",
      "name": "Nota de Umbral de Puntuación",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1328,
        96
      ],
      "parameters": {
        "width": 280,
        "height": 220,
        "content": "## 🎯 Lead Score Filter\n\nOnly leads with score **>80** proceed to alerting.\n\n**Customization:**\nAdjust the threshold (currently 80) to match your lead qualification criteria."
      },
      "typeVersion": 1
    },
    {
      "id": "ead078ba-ec45-4702-bf08-d14d2fed451d",
      "name": "Nota de Configuración de Slack",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1056,
        -512
      ],
      "parameters": {
        "width": 300,
        "height": 332,
        "content": "## 🚨 Slack Alert Setup\n\n**Required Configuration:**\n1. Create a Slack App with chat:write permissions\n2. Install app to your workspace\n3. Get your channel ID:\n   - Right-click channel → View channel details → Copy ID\n4. Replace `YOUR_SLACK_CHANNEL_ID` in node settings\n\n**Security:** Never commit channel IDs to public repositories."
      },
      "typeVersion": 1
    },
    {
      "id": "81620101-5cd3-477e-aa1f-265fee1765ac",
      "name": "Nota de Configuración de Google Sheets",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -800,
        144
      ],
      "parameters": {
        "width": 340,
        "height": 380,
        "content": "## 📊 Google Sheets Logging\n\n**Setup Steps:**\n1. Create a Google Sheet with these columns:\n   contact_id, contact_name, first_name, last_name, email, phone, company_name, lead_score, assigned_rep, assigned_rep_slack_id, location_id, source, tags, country, date_added, date_updated, is_high_priority\n\n2. Share sheet with your service account email\n3. Copy the Sheet ID from URL\n4. Replace `YOUR_GOOGLE_SHEET_ID` in node settings\n\n**Security:** Use environment variables for Sheet IDs in production."
      },
      "typeVersion": 1
    },
    {
      "id": "708a9b3f-9dc4-4e79-9457-7e4524d4c22e",
      "name": "Nota de Configuración de Calendar",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -544,
        -368
      ],
      "parameters": {
        "width": 320,
        "height": 348,
        "content": "## 📅 Auto-Schedule Follow-up\n\nCreates a calendar event 1 hour from now for immediate follow-up.\n\n**Configuration:**\n1. Connect Google Calendar OAuth2\n2. Replace `YOUR_CALENDAR_EMAIL` with your team calendar\n3. Adjust timing: Currently set to 1-1.5 hours from trigger\n\n**Tip:** Use a shared team calendar for better visibility."
      },
      "typeVersion": 1
    },
    {
      "id": "c29fd9ed-1582-488b-b4a6-0f02de537e46",
      "name": "Activador Diario a las 8 AM",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -2064,
        -64
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 8
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "3a243805-b158-479c-afd4-431d5989fa24",
      "name": "Obtener Contactos de HighLevel",
      "type": "n8n-nodes-base.highLevel",
      "position": [
        -1840,
        -64
      ],
      "parameters": {
        "filters": {},
        "options": {},
        "operation": "getAll",
        "requestOptions": {}
      },
      "typeVersion": 2
    },
    {
      "id": "03ed8e64-6a5f-48ac-a025-e379ab7d6b56",
      "name": "Filtrar Contactos Válidos",
      "type": "n8n-nodes-base.if",
      "position": [
        -1616,
        -64
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "a49be490-38c5-4620-b29f-8150655f32ba",
              "operator": {
                "type": "array",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json.customFields }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "f006b6bf-4b73-45c6-802d-4cfa0e8e8584",
      "name": "Transformar Datos de Contacto",
      "type": "n8n-nodes-base.code",
      "position": [
        -1392,
        -64
      ],
      "parameters": {
        "jsCode": "// Process all items from the input\nconst items = $input.all();\n\n// Map through all items and extract/transform data\nreturn items.map(item => {\n  const customFields = item.json.customFields || [];\n  \n  // ⚠️ IMPORTANT: Replace these field IDs with YOUR HighLevel custom field IDs\n  // Find the lead score field (Replace 'sEic9OWa5yndTAitjgoe' with your field ID)\n  const leadScoreField = customFields.find(field => field.id === 'YOUR_LEAD_SCORE_FIELD_ID');\n  const leadScore = leadScoreField ? parseFloat(leadScoreField.value) : 0;\n  \n  // Extract assigned rep (Replace 'YHJqNOSAvMbI08mnabNb' with your field ID)\n  const assignedRepField = customFields.find(field => field.id === 'YOUR_ASSIGNED_REP_FIELD_ID');\n  const assignedRep = assignedRepField ? assignedRepField.value : 'Unassigned';\n  \n  return {\n    json: {\n      contact_id: item.json.id,\n      contact_name: item.json.contactName,\n      first_name: item.json.firstName,\n      last_name: item.json.lastName,\n      email: item.json.email || 'No email provided',\n      phone: item.json.phone || 'No phone provided',\n      company_name: item.json.companyName || 'N/A',\n      lead_score: leadScore,\n      assigned_rep: assignedRep,\n      assigned_rep_slack_id: assignedRep, // TODO: Map to actual Slack member IDs\n      location_id: item.json.locationId,\n      source: item.json.source || 'Unknown',\n      tags: Array.isArray(item.json.tags) ? item.json.tags.join(', ') : '',\n      country: item.json.country,\n      date_added: item.json.dateAdded,\n      date_updated: item.json.dateUpdated,\n      is_high_priority: leadScore > 80 // Boolean flag for workflow filtering\n    }\n  };\n});"
      },
      "typeVersion": 2
    },
    {
      "id": "2bad2795-7f45-4170-8c9d-829193c25828",
      "name": "Verificar si es un Prospecto de Alto Valor",
      "type": "n8n-nodes-base.if",
      "position": [
        -1168,
        -64
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.lead_score }}",
              "value2": 80,
              "operation": "larger"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "1f2a561f-228b-4793-9823-413f0fd7cea3",
      "name": "Enviar Alerta Slack al Equipo de Ventas",
      "type": "n8n-nodes-base.slack",
      "position": [
        -944,
        -160
      ],
      "webhookId": "488b7831-8067-4c78-a12a-ab6b897e7528",
      "parameters": {
        "text": "=🚨 **High-Value Lead Alert**\n\n👤 **Contact:** {{ $json.contact_name }}\n📊 **Lead Score:** {{ $json.lead_score }}\n⏰ **Action Required:** Follow-up within 1 hour\n\n**Contact Details:**\n📧 Email: {{ $json.email }}\n📞 Phone: {{ $json.phone }}\n🏢 Company: {{ $json.company_name }}\n👨‍💼 Assigned Rep: {{ $json.assigned_rep }}\n📍 Location: {{ $json.country }}\n🏷️ Tags: {{ $json.tags }}",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "YOUR_SLACK_CHANNEL_ID"
        },
        "otherOptions": {}
      },
      "typeVersion": 2.1
    },
    {
      "id": "263b6c15-a8fb-44ee-b883-97964cde7176",
      "name": "Registrar en el Seguidor Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -944,
        48
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "contact_id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "contact_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "contact_name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "contact_name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "first_name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "first_name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "last_name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "last_name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "phone",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "phone",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "company_name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "company_name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "lead_score",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "lead_score",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "assigned_rep",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "assigned_rep",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "assigned_rep_slack_id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "assigned_rep_slack_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "location_id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "location_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "source",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "source",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tags",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "tags",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "country",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "country",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "date_added",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "date_added",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "date_updated",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "date_updated",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "is_high_priority",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "is_high_priority",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": []
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "name",
          "value": "High Priority Leads"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "YOUR_GOOGLE_SHEET_ID"
        }
      },
      "typeVersion": 4
    },
    {
      "id": "bd644f55-c61e-4e4d-8a9a-438749d094a7",
      "name": "Crear Evento de Seguimiento en Calendar",
      "type": "n8n-nodes-base.googleCalendar",
      "position": [
        -720,
        -160
      ],
      "parameters": {
        "end": "={{ $now.plus(1.5, 'hours').toISO() }}",
        "start": "={{ $now.plus(1, 'hours').toISO() }}",
        "calendar": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_CALENDAR_EMAIL"
        },
        "additionalFields": {
          "description": "=**High-Priority Lead Follow-up**\n\nContact: {{ $json.contact_name }}\nEmail: {{ $json.email }}\nPhone: {{ $json.phone }}\nCompany: {{ $json.company_name }}\nLead Score: {{ $json.lead_score }}\nAssigned Rep: {{ $json.assigned_rep }}\n\nAction: Reach out within 1 hour to maintain engagement.",
          "sendUpdates": "all"
        }
      },
      "typeVersion": 1.3
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "be04a62e-8c04-4ee9-9bf1-ef74ae725aa5",
  "connections": {
    "c29fd9ed-1582-488b-b4a6-0f02de537e46": {
      "main": [
        [
          {
            "node": "3a243805-b158-479c-afd4-431d5989fa24",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "03ed8e64-6a5f-48ac-a025-e379ab7d6b56": {
      "main": [
        [
          {
            "node": "f006b6bf-4b73-45c6-802d-4cfa0e8e8584",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f006b6bf-4b73-45c6-802d-4cfa0e8e8584": {
      "main": [
        [
          {
            "node": "2bad2795-7f45-4170-8c9d-829193c25828",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2bad2795-7f45-4170-8c9d-829193c25828": {
      "main": [
        [
          {
            "node": "1f2a561f-228b-4793-9823-413f0fd7cea3",
            "type": "main",
            "index": 0
          },
          {
            "node": "263b6c15-a8fb-44ee-b883-97964cde7176",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3a243805-b158-479c-afd4-431d5989fa24": {
      "main": [
        [
          {
            "node": "03ed8e64-6a5f-48ac-a025-e379ab7d6b56",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1f2a561f-228b-4793-9823-413f0fd7cea3": {
      "main": [
        [
          {
            "node": "bd644f55-c61e-4e4d-8a9a-438749d094a7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿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 - Generación de leads

¿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.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos17
Categoría1
Tipos de nodos8
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Autor
Rahul Joshi

Rahul Joshi

@rahul08

Rahul Joshi is a seasoned technology leader specializing in the n8n automation tool and AI-driven workflow automation. With deep expertise in building open-source workflow automation and self-hosted automation platforms, he helps organizations eliminate manual processes through intelligent n8n ai agent automation solutions.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34