Recursos · Integración n8n

Integración Affinity n8nAutomatiza Affinity con n8n.

La integración Affinity n8n saca la información de relaciones del CRM y la mete en un flujo de trabajo. El nodo reúne 16 operaciones en 4 recursos: listas, entradas de lista, organizaciones y personas. El trigger, el nodo que arranca un flujo, escucha 25 eventos en 9 familias.

Reseñas verificadas en Trustpilot · Agencia de IA, automatización y growth

Por qué automatizar

¿Qué resuelve la integración Affinity n8n?

Affinity guarda la memoria de contactos de un equipo comercial o de inversión. El nodo de n8n entra en esa información por la API de Affinity: 16 operaciones repartidas en 4 recursos, listas, entradas de lista, organizaciones y personas. El Affinity Trigger cubre el sentido contrario, con 25 eventos agrupados en 9 familias, para que un cambio hecho dentro de Affinity arranque un proceso en lugar de esperar a que alguien se dé cuenta.

Casi todo arranca con una entrada de datos: una consultora recibe una solicitud, el flujo crea la empresa con organization.create y después la coloca en la lista de seguimiento con listEntry.create. El segundo nodo necesita el identificador que devolvió el primero, y ese identificador viaja en una expresión, una fórmula corta escrita como {{ $json.id }} que lee un campo del elemento que entra.

En sentido contrario, es el trigger el que avisa de que algo cambió. Salta con opportunity.updated o list_entry.created, el flujo recarga la ficha completa y el mensaje aparece donde el equipo mira de verdad. Para un equipo de ventas repartido entre ciudades, Slack funciona mejor que un correo que nadie abre hasta la tarde.

El informe y la sincronización van a un ritmo más lento pero mueven más fichas de golpe: person.getAll y organization.getAll, con Return All activado, vuelcan la agenda en Google Sheets para la reunión mensual, o la comparan con las fichas de HubSpot y Salesforce cuando marketing y ventas discuten sobre quién lleva una cuenta.

Hay dos cosas que conviene saber antes de montar nada. Return All encadena las páginas de la API hasta el último elemento; si lo dejas desactivado, Limit fija cuántos elementos devuelve el nodo, algo cómodo para probar y malo para exportar. Y si un endpoint de la API de Affinity queda fuera de esas 16 operaciones, el nodo HTTP Request lo llama directamente reutilizando el mismo credential de Affinity con su autenticación predefinida. Un nodo más, nada que volver a configurar.

Si la parte que falta es n8n y no Affinity, el Curso n8n cubre la lógica de nodos antes de tocar un CRM en producción.

Conexión

¿Cómo se conecta Affinity con n8n?

  1. 01

    Revisa el plan de Affinity

    El acceso a la API depende de la suscripción. La documentación de credentials de n8n lo dice sin rodeos: hace falta una cuenta de Affinity en los niveles Scale, Advanced o Enterprise para que la clave llegue a existir. Confírmalo con quien gestione la cuenta antes de montar nada, porque ningún ajuste dentro de n8n compensa un plan que no abre la API.

  2. 02

    Genera la clave API en Affinity

    La clave se saca desde los ajustes de Affinity, y el artículo de ayuda 360032633992 señala dónde encontrarla. Copia el valor una vez y guárdalo en un sitio seguro. El nodo Affinity y el Affinity Trigger se autentican con esa misma clave, así que no hay nada más que recoger del lado de Affinity.

  3. 03

    Crea el credential en n8n

    Dentro de n8n, abre el menú Credentials y crea un credential de Affinity, es decir, unas credenciales guardadas una sola vez y reutilizables en todos los flujos. Pega el valor en el campo API Key y guarda. A partir de ahí cada nodo Affinity ofrece ese credential en su desplegable, y la clave ya no vuelve a escribirse dentro de un nodo.

Disparadores

¿Qué arranca un flujo desde Affinity ?

Affinity Trigger es el nodo que arranca un workflow cuando algo ocurre en Affinity. Escucha 25 eventos, listados abajo por familia. Eliges uno o varios, activas el workflow y n8n registra el webhook (la URL que Affinity llama) en tu cuenta.

Lo que ves en n8n

Todos los eventos, por familia

Una fila por objeto, un chip por acción. El evento que marcas en el nodo se escribe objeto.acción; pasa el cursor por un chip para leer cuándo se dispara.

field.*3
  • field.
    • created
    • deleted
    • updated
field_value.*3
  • field_value.
    • created
    • deleted
    • updated
list.*3
  • list.
    • created
    • deleted
    • updated
note.*3
  • note.
    • created
    • deleted
    • updated
opportunity.*3
  • opportunity.
    • created
    • deleted
    • updated
organization.*3
  • organization.
    • created
    • deleted
    • updated
person.*3
  • person.
    • created
    • deleted
    • updated
file.*2
  • file.
    • created
    • deleted
list_entry.*2
  • list_entry.
    • created
    • deleted

Notas de configuración

01Set up the Affinity TriggerEl Affinity Trigger, versión 1 del nodo, convierte la actividad dentro de Affinity en ejecuciones de flujo. Funciona por webhook: al activar el flujo, n8n registra una URL en Affinity, y Affinity llama a esa URL cada vez que ocurre algo. El evento llega al flujo en unos segundos, sin frecuencia que ajustar y sin nada consultando la API en bucle.

El Affinity Trigger, versión 1 del nodo, convierte la actividad dentro de Affinity en ejecuciones de flujo. Funciona por webhook: al activar el flujo, n8n registra una URL en Affinity, y Affinity llama a esa URL cada vez que ocurre algo. El evento llega al flujo en unos segundos, sin frecuencia que ajustar y sin nada consultando la API en bucle.

Parámetros clave

  • Events: los eventos a los que se suscribe este flujo, elegidos entre los 25 disponibles. No existe un valor comodín, así que cada evento que te interese se marca por su nombre. Marcar varios no da problemas, y el elemento recibido indica cuál ha saltado.
Cuándo usarlo
siempre que la reacción tenga que ser inmediata, un aviso publicado, una ficha copiada a otro sistema, una tarea de seguimiento creada. El trigger usa el mismo credential de Affinity que el nodo, así que con la clave guardada no queda nada por configurar.
02Person, organization and opportunity eventsTres familias cubren las fichas que un equipo toca a diario, 9 eventos en total. person.created, person.updated y person.deleted siguen a los contactos. organization.created, organization.updated y organization.deleted siguen a las empresas. opportunity.created, opportunity.updated y opportunity.deleted siguen a las oportunidades.

Tres familias cubren las fichas que un equipo toca a diario, 9 eventos en total. person.created, person.updated y person.deleted siguen a los contactos. organization.created, organization.updated y organization.deleted siguen a las empresas. opportunity.created, opportunity.updated y opportunity.deleted siguen a las oportunidades.

Parámetros clave

  • Events: marca solo los tres valores de opportunity para vigilar el embudo, o combina los valores created de person y organization cuando quieras detectar todo lo que entra nuevo en el CRM.
Cuándo usarlo
una oportunidad nueva avisa al equipo comercial. Una organización modificada actualiza la misma ficha en otro sistema. Un contacto borrado lanza la limpieza equivalente en la lista de correo, esa tarea que a mano nunca se hace. Combina el evento con la operación de lectura correspondiente en cuanto el aviso que quieras mandar pida más detalle del que trae el propio evento.
03List and list entry eventsLas listas son la forma de organizar el trabajo en Affinity, y 5 eventos de 2 familias informan sobre ellas. list.created, list.updated y list.deleted hablan de la lista en sí, de que exista y de cómo está configurada. list_entry.created y list_entry.deleted hablan de la pertenencia, o sea de una ficha que entra en una lista o que sale de ella.

Las listas son la forma de organizar el trabajo en Affinity, y 5 eventos de 2 familias informan sobre ellas. list.created, list.updated y list.deleted hablan de la lista en sí, de que exista y de cómo está configurada. list_entry.created y list_entry.deleted hablan de la pertenencia, o sea de una ficha que entra en una lista o que sale de ella.

Parámetros clave

  • Events: la pareja de list entry es la más útil para automatizar un embudo, porque mover una empresa de una lista a otra suele ser lo que significa un cambio de etapa.
Cuándo usarlo
un equipo que mantiene una lista por etapa puede leer list_entry.created como una entrada de etapa y lanzar la lista de comprobación correspondiente. Combínalo con listEntry.get: el evento dice que algo cambió, la operación dice qué.
04Field, note and file eventsLas 4 familias restantes, 11 eventos, tratan del contenido pegado a las fichas más que de las fichas. field.created, field.updated y field.deleted hablan de la estructura, una columna añadida o renombrada. field_value.created, field_value.updated y field_value.deleted hablan de lo que alguien escribió de verdad. note.created, note.updated y note.deleted siguen las notas, y file.created y file.deleted siguen los archivos adjuntos.

Las 4 familias restantes, 11 eventos, tratan del contenido pegado a las fichas más que de las fichas. field.created, field.updated y field.deleted hablan de la estructura, una columna añadida o renombrada. field_value.created, field_value.updated y field_value.deleted hablan de lo que alguien escribió de verdad. note.created, note.updated y note.deleted siguen las notas, y file.created y file.deleted siguen los archivos adjuntos.

Parámetros clave

  • Events: los eventos de field value son ruidosos en un equipo activo. Mejor dedicarles un flujo aparte que mezclarlos con familias más tranquilas.
Cuándo usarlo
las notas guardan el contexto de una reunión que nadie más vio, así que note.created es un buen enganche para un resumen dirigido a quien no pudo asistir. Los archivos van por otro camino: que aparezca un adjunto en una ficha es lo bastante raro como para archivarlo siempre.
Acciones

¿Qué sabe hacer el nodo Affinity ?

El nodo Affinity expone 16 operaciones en 4 recursos. Para cada una: el nodo tal como lo configuras en n8n, los campos obligatorios y nuestras notas de campo.

Matriz recursos × operaciones
RecursoCreateGetGet ManyUpdateDelete
List✓✓
List Entry✓✓✓✓
Organization✓✓✓✓✓
Person✓✓✓✓✓

List

2 operaciones
01

Get a list

list.get

Lo que ves en n8n

Notas y casos de uso

Devuelve una lista de Affinity con sus datos, que es como un flujo comprueba que apunta a la lista correcta antes de escribir nada dentro.

Parámetros clave

  • List ID: el identificador único de la lista que se quiere recuperar. Déjalo fijo si siempre es la misma, o pasa {{ $json.listId }} cuando un nodo anterior haya decidido cuál.
Casos de uso
un flujo de seguimiento lee la lista primero y se bifurca según su nombre, para que una lista de pruebas nunca reciba datos reales.
02

Get many lists

list.getAll

Lo que ves en n8n

Notas y casos de uso

Recupera las listas de la cuenta, un elemento por lista, y con eso el flujo obtiene la correspondencia entre el nombre de una lista y su identificador.

Parámetros clave

  • Return All: activado, n8n pide las páginas siguientes hasta la última lista. Desactivado, Limit decide cuántas listas devuelve el nodo.
Casos de uso
una limpieza trimestral saca todos los nombres de listas a una hoja, para ver cuáles se abrieron por un solo caso y nunca se cerraron.

List Entry

4 operaciones
03

Create a list entry

listEntry.create

Lo que ves en n8n

Notas y casos de uso

Añade una persona, una organización o una oportunidad que ya existen a una lista. Es la operación que mete de verdad una ficha en un embudo.

Parámetros clave

  • List Name or ID: elige la lista en el desplegable que n8n carga desde la cuenta, o pasa un identificador con una expresión.
  • Entity ID: el identificador único de la entidad (persona, organización u oportunidad) que se añade, normalmente {{ $json.id }} del nodo que acaba de crearla.
  • Creator ID: una persona con acceso a Affinity, registrada como autora del alta. Vacío, queda el propietario de la clave API.
Casos de uso
una solicitud entrante crea la empresa y la coloca en la lista de entrada en la misma ejecución.
04

Delete a list entry

listEntry.delete

Lo que ves en n8n

Notas y casos de uso

Quita una entrada de una lista. La persona o la organización siguen en Affinity, lo único que desaparece es su pertenencia a esa lista.

Parámetros clave

  • List Name or ID: la lista que contiene la entrada, elegida en el desplegable o pasada como identificador.
  • List Entry ID: el identificador único de la entrada que se va a borrar, que no es el de la empresa ni el de la persona.
Casos de uso
una operación se enfría, la entrada sale de la lista activa y el historial de la relación queda intacto para el siguiente intento.
05

Get a list entry

listEntry.get

Lo que ves en n8n

Notas y casos de uso

Consulta una entrada concreta y devuelve lo que Affinity guarda de ella, en lugar de recorrer la lista entera para encontrarla.

Parámetros clave

  • List Name or ID: la lista que contiene la entrada buscada.
  • List Entry ID: el identificador único de la entrada que se quiere recuperar.
Casos de uso
el trigger avisa de un evento list_entry.created, esta operación convierte esa referencia en la ficha completa y solo entonces el flujo tiene material para redactar algo útil.
06

Get many list entries

listEntry.getAll

Lo que ves en n8n

Notas y casos de uso

Recorre una lista y devuelve sus entradas como elementos separados, uno por entrada, listos para un bucle o una escritura en bloque.

Parámetros clave

  • List Name or ID: la lista cuyas entradas se quieren recuperar.
  • Return All: activado para un export completo. Desactivado, Limit pone techo al número de entradas devueltas, que es lo que conviene mientras pruebas.
Casos de uso
una foto semanal de la lista de prospección, exportada antes del comité, con Return All activado para que no falte ninguna empresa sin avisar.

Organization

5 operaciones
07

Create an organization

organization.create

Lo que ves en n8n

Notas y casos de uso

Crea una empresa en Affinity y la devuelve con su identificador, el valor que necesitarán todas las operaciones posteriores sobre esa empresa.

Parámetros clave

  • Name: el nombre de la organización.
  • Domain: su nombre de dominio, el campo que conviene normalizar antes, porque un prefijo de más crea un duplicado en vez de un enlace.
  • Person Names or IDs: las personas asociadas a la nueva organización, elegidas en la lista o pasadas por identificador.
Casos de uso
la plantilla pública 476 hace justo esto, crear una organización en Affinity con lo que haya recibido el flujo.
08

Delete an organization

organization.delete

Lo que ves en n8n

Notas y casos de uso

Borra la ficha de una empresa en Affinity. Todo lo que el equipo había colgado de ella se va con la ficha, así que esta operación va detrás de una condición y no suelta en medio del flujo.

Parámetros clave

  • Organization ID: el identificador único de la organización, ni su nombre ni su dominio.
Casos de uso
una importación creó dos veces la misma empresa, un flujo conserva la ficha con historial de contactos y elimina la copia vacía.
09

Get an organization

organization.get

Lo que ves en n8n

Notas y casos de uso

Lee una empresa por su identificador y devuelve su ficha, con una opción que cambia cuánto contexto viene de vuelta.

Parámetros clave

  • Organization ID: el identificador único de la organización.
  • With Interaction Dates: activado, las fechas de interacción vienen en el recurso devuelto, y eso es lo que permite al flujo razonar sobre cuánto tiempo lleva callada la cuenta.
Casos de uso
antes de un correo de reactivación, lee la empresa con las fechas de interacción y descarta las que ya recibieron contacto esta semana.
10

Get many organizations

organization.getAll

Lo que ves en n8n

Notas y casos de uso

Busca en el lado de empresas de la agenda y devuelve un elemento por organización encontrada.

Parámetros clave

  • Term: una cadena que busca en todas las organizaciones de la agenda del equipo, por ejemplo una dirección de correo, un nombre o un apellido.
  • Return All: activado para traerlo todo, desactivado para pararse en Limit.
  • With Interaction Dates: añade las fechas de interacción a cada organización devuelta.
Casos de uso
una pasada antiduplicados busca por término antes de cualquier alta, para actualizar la empresa existente en vez de clonarla.
11

Update an organization

organization.update

Lo que ves en n8n

Notas y casos de uso

Actualiza una empresa que ya está en Affinity. Solo se envían los campos que rellenas, así que el flujo corrige un dato sin tocar el resto de la ficha.

Parámetros clave

  • Organization ID: el identificador único de la organización que se modifica.
  • Name y Domain: el nombre y el dominio nuevos cuando cambia alguno de los dos.
  • Person Names or IDs: las personas asociadas a la organización.
Casos de uso
una empresa cambia de marca, un flujo actualiza nombre y dominio a partir de la fuente de noticias que sigue el equipo.

Person

5 operaciones
12

Create a person

person.create

Lo que ves en n8n

Notas y casos de uso

Registra un contacto nuevo en Affinity y devuelve la ficha creada, lista para engancharla a una lista o a una empresa.

Parámetros clave

  • First Name y Last Name: los dos son obligatorios y los dos bloquean, porque un campo obligatorio vacío impide que el nodo se ejecute.
  • Emails: las direcciones de correo de la persona, con el formato info@example.com.
  • Organization Names or IDs: las organizaciones a las que se asocia la persona.
Casos de uso
una inscripción a un seminario se convierte en persona, vinculada a la empresa que el formulario ya había recogido.
13

Delete a person

person.delete

Lo que ves en n8n

Notas y casos de uso

Elimina un contacto de Affinity a partir de su identificador. Operación corta, efecto definitivo: va al final de una rama que ya ha comprobado algo.

Parámetros clave

  • Person ID: el identificador único de la persona, el valor que devuelve una lectura o que trae un evento del trigger.
Casos de uso
llega una petición de baja al buzón compartido, el flujo localiza a la persona y deja la ficha limpia sin que nadie abra el CRM.
14

Get a person

person.get

Lo que ves en n8n

Notas y casos de uso

Trae un contacto y lo que Affinity sabe de él, en un solo elemento que el nodo siguiente lee campo por campo.

Parámetros clave

  • Person ID: el identificador único de la persona.
  • With Interaction Dates: activado, las fechas de interacción vuelven con la ficha, que es la diferencia entre saber que el contacto existe y saber si alguien ha hablado con él.
Casos de uso
llega un evento person.updated con poco detalle, esta operación carga el estado actual antes de que el flujo decida nada.
15

Get many people

person.getAll

Lo que ves en n8n

Notas y casos de uso

Barre el lado de contactos de la agenda y devuelve un elemento por persona, punto de partida de cualquier export o auditoría.

Parámetros clave

  • Term: una cadena que busca en todas las personas de la agenda del equipo, por ejemplo una dirección de correo, un nombre o un apellido.
  • Return All: activado para encadenar páginas hasta el final, desactivado para pararse en Limit.
  • With Interaction Dates: añade las fechas de interacción a cada persona devuelta.
Casos de uso
un mapa de la red de contactos, sacado una vez al mes con Return All activado, y nunca más montado a mano.
16

Update a person

person.update

Lo que ves en n8n

Notas y casos de uso

Ajusta un contacto existente. Lo que dejas vacío se queda como está en Affinity, y eso hace que la operación sea segura para ejecutarla de forma periódica contra una fuente de referencia.

Parámetros clave

  • Person ID: el identificador único de la persona que se modifica.
  • Emails: las direcciones de correo de la persona, útiles cuando cambia de empresa.
  • First Name, Last Name y Organization Names or IDs: los campos de identidad y de vínculo, actualizados solo si los rellenas.
Casos de uso
un cambio de puesto detectado fuera reescribe el correo y la organización asociada en una sola ejecución.
Necesitas ayuda

¿Necesitas ayuda para automatizar Affinity con n8n?

El equipo te responde directamente.

Cada mensaje lo lee una persona.

FAQ

Affinity y n8n, lo que se pregunta después

01¿La integración Affinity n8n es gratuita?
El nodo y el trigger vienen incluidos en n8n. No hay nada que instalar, nada que comprar y ningún coste adicional del lado de n8n, tanto si usas n8n Cloud, la oferta alojada por n8n, como si levantas tu propia instancia en Community Edition bajo licencia Sustainable Use. Un flujo construido en una funciona igual en la otra. Del lado de Affinity la respuesta cambia: la documentación de credentials de n8n indica que el acceso a la API exige una cuenta de Affinity en los niveles Scale, Advanced o Enterprise, así que revisa el plan antes de estimar el trabajo de automatización.
02¿Qué credentials necesita el nodo Affinity?
Uno solo, y del tipo más sencillo. Affinity se autentica con clave API, por lo que el credential de n8n se reduce a un campo API Key. El artículo de ayuda que referencia n8n, con el número 360032633992, explica dónde generar la clave dentro de Affinity. El credential se crea una vez desde el menú Credentials y después cada flujo lo elige en un desplegable, incluido el Affinity Trigger, que usa exactamente la misma clave que el nodo. Ten presente que la clave identifica a su propietario: en una entrada de lista creada sin Creator ID, Affinity anota al dueño de la clave como autor del alta.
03¿Qué límites tiene el nodo Affinity en n8n?
Dos cosas que conviene prever. La paginación se gobierna a mano: en las operaciones que traen varios elementos, Return All encadena páginas hasta el final, mientras que dejarlo desactivado deja en manos de Limit cuántos elementos llegan, y un export se corta sin avisar. Después, el nodo cubre 16 operaciones en 4 recursos; para un endpoint de la API de Affinity que quede fuera de ese catálogo, el nodo HTTP Request lo llama directamente reutilizando el mismo credential de Affinity con la autenticación predefinida. Un nodo más, la misma clave. Los campos obligatorios también son estrictos: vacíos, el nodo se detiene en vez de adivinar.
04¿El Affinity Trigger reacciona en tiempo real?
Sí. El Affinity Trigger funciona por webhook, es decir, una URL que n8n registra en Affinity al activar el flujo y que Affinity llama desde su lado en cuanto ocurre algo. El evento llega en unos segundos, sin nada consultando la API en bucle, así que no hay intervalo que ajustar. Un detalle lo condiciona todo: el parámetro Events no tiene valor comodín, cada uno de los 25 eventos que quieras se marca por su nombre. Y activa el flujo antes de probar, porque un flujo inactivo no tiene URL registrada en Affinity.
05¿n8n o Make para Affinity?
Los dos conectan con Affinity, así que la decisión rara vez se juega en las funciones. Make está alojado por su editor, sin opción de instalarlo en tus servidores, y se factura por operación: sale claro con volúmenes pequeños y menos claro cuando un flujo se abre sobre todas las entradas de una lista. n8n corre en su nube o en tu propia infraestructura, algo que pesa cuando lo que circula son datos de relaciones y notas de reuniones, y su modelo de coste no sigue el número de pasos ejecutados. Make perdona más en el montaje visual inicial. n8n da más margen en cuanto la lógica se ramifica.