Flujo n.º 8: pasar las respuestas de LinkedIn a tu CRM con n8n
Una respuesta en LinkedIn tiene su sitio en tu CRM. La campaña etiqueta a quien respondió; un workflow programado de n8n o Make lee la etiqueta y abre el deal.
Por Swimlane 5 min de lectura
Entre “respondió en LinkedIn” y “hay un deal en el CRM” es donde los pipelines se quedan viejos. Copiar las respuestas es tarea de viernes, en bloque y de memoria. Este flujo es una integración LinkedIn CRM en dos mitades: el constructor de campañas de Swimlane marca con una etiqueta a quien respondió, y un workflow programado de n8n (o Make) hace el papeleo en el lado del CRM.
- Mensaje El paso de mensaje que tu campaña ya envía
- Condición ¿Respondió al mensaje? Comprobado tras un retraso de 7 días, ventana "Últimos 7 días"
- Sí Etiqueta Añadir etiqueta "respondió": aquí termina la campaña para esa persona
- Sí Pipeline En n8n, cada 15 minutos: lee la etiqueta por API, crea la persona y el deal en tu CRM
- Sí Pipeline Sigue n8n: pone el contacto en "En conversación" en tu pipeline de Swimlane
- Sí Etiqueta Sigue n8n: cambia "respondió" por "en-crm" para no pasar a nadie dos veces
- No Etiqueta Añadir etiqueta "sin-respuesta", o el siguiente paso de tu campaña
Quién hace qué en esta integración LinkedIn CRM
- El constructor de campañas de Swimlane ejecuta el mensaje, la condición “Respondió al mensaje” y el paso “Añadir etiqueta”. No tiene ningún paso de CRM, de pipeline ni de webhook.
- n8n o Make lleva la programación, llama a la API pública de Swimlane, escribe en el CRM, mueve el contacto en tu pipeline de Swimlane y cambia la etiqueta.
- La etiqueta es el contrato entre ambos. “respondió” significa “pásalo”; “en-crm” significa “hecho”.
Como el workflow solo lee una etiqueta, también sirve para las respuestas a mensajes que escribiste tú: añade “respondió” al contacto desde la conversación y la siguiente ejecución lo recoge.
Por qué una etiqueta y no un webhook
Los webhooks salientes de Swimlane envían tres eventos: contact.created, contact.updated y contact.deleted. Ninguno se dispara cuando se añade una etiqueta, cuando alguien responde o cuando un contacto cambia de etapa, y un webhook no se puede filtrar. El webhook es la herramienta adecuada para enviar cada contacto nuevo al CRM. Para enviar solo a quienes respondieron, lo que existe es leer una etiqueta de forma programada.
Configurar la campaña en Swimlane
- La condición. Bajo el paso de mensaje, añade una condición “Respondió al mensaje” con un retraso de 7 días y la ventana “Últimos 7 días”. Una condición mira una sola vez, cuando se ejecuta: el retraso les da una semana y la ventana ignora una respuesta de la primavera pasada. Con “En cualquier momento”, cualquiera que te haya escrito alguna vez iría a la rama del sí.
- La rama del sí. Un paso “Añadir etiqueta” llamado “respondió”. Escribe el nombre; la etiqueta se crea la primera vez que el paso se ejecuta.
- La rama del no. Lo que tu campaña haga después.
- Antes del lanzamiento. Los pasos de una campaña lanzada quedan bloqueados, así que construye la rama mientras sea un borrador.
- Un token. Configuración → API → “Agregar token”. Solo se muestra una vez: guárdalo como credencial en n8n o Make, enviado como
Authorization: Bearer wpa_….
La página de automatización de LinkedIn recoge todos los pasos y condiciones del constructor.
Configurar el workflow en n8n o Make
Un único workflow con un Schedule Trigger (un escenario programado en Make), cada 15 minutos. Antes de la primera ejecución, pon las dos etiquetas a mano en un contacto de prueba, lee sus ids con GET /v1/tags (solo lista las etiquetas en uso) y quítalas.
- Leer la etiqueta.
GET /v1/contacts?tag_id=<id respondió>&per_page=100. Cada contacto vuelve con suuuid, nombre y apellido,headline,linkedinId,tagIdsypipelineStageUuid. - Crear o actualizar la persona, abrir el deal. Busca antes de crear, con la URL de LinkedIn (
https://www.linkedin.com/in/+linkedinId) como clave, guardada en un campo personalizado; no el email, que suele estar vacío en los contactos de LinkedIn. La API no devuelve el texto de los mensajes: pon la URL del perfil en el deal y que su responsable lea la conversación en Swimlane. - Mover el contacto.
POST /v1/pipelines/stages/<stageUuid>/contactscon{"contactUuids": ["…"]}. Los uuid de etapa salen deGET /v1/pipelines/<uuid>/stages. Usa un pipeline de equipo o uno creado por el dueño del token. Un contacto ocupa una sola etapa por pipeline, así que la llamada también lo mueve. - Cambiar la etiqueta, al final.
POST /v1/contacts/<uuid>/tagscon{"tagIds": […]}sustituye todas las etiquetas del contacto. Envía sustagIdsactuales sin “respondió”, más “en-crm”. Si envías solo el id nuevo, todas sus demás etiquetas desaparecen.
La guía para configurar n8n y la guía para configurar Make cubren el token y la petición HTTP.
Salvaguardas
- No es instantáneo. La condición ve una respuesta del primer día el séptimo, y n8n en su siguiente ejecución. Para ir más rápido, comprueba a los 3 días y añade bajo la rama del no una segunda condición “Respondió al mensaje”, con su propia etiqueta “respondió”; o etiqueta el contacto a mano en cuanto respondas.
- Cambia la etiqueta solo cuando la llamada al CRM haya salido bien. Una ejecución fallida deja “respondió” en su sitio y el contacto vuelve en la siguiente; buscar antes de crear evita que ese reintento duplique el deal.
- 100 peticiones a la API por minuto por usuario. Cada contacto cuesta dos llamadas a Swimlane. Con decenas de respuestas de golpe, procésalas por lotes con un nodo Wait.
- Las etiquetas son de todo el espacio de trabajo. La API lee todos los contactos de la organización, así que la campaña de un compañero que etiqueta “respondió” alimenta el mismo workflow. Para un CRM compartido es lo que quieres; si no, dale a cada equipo su propia etiqueta. La página de equipo y API muestra qué comparte el espacio de trabajo.
Qué medir
Los contactos que siguen con “respondió” una hora después de una ejecución: deberían ser cero, y cada uno que quede es un traspaso fallido. Después, la proporción de deals del CRM que llevan una URL de perfil de LinkedIn. Cuando sube, tu previsión por fin incluye el canal que no veía.