Affinity integration: Can’t access and update custom fields (only name, email, id returned)

Hi all,

I’m working on a workflow that pushes an updated tag for a person from Google Sheets into Affinity.

When I use the Affinity → Person → Get Many or Get a Person nodes, I can easily retrieve them with the e-mail & id as unique identifiers and get the right person returned. However, the return only gives me a very limited set of fields (id, name, primary_email).

However, in Affinity we have a custom multi-select field that we need to update (adding new tags, without overwriting the existing ones). This field is visible in the Affinity UI and a global field. I’m currently doing that update manually (uploading a CSV via the Affinity UI) and I think this should be easily automated.

Problem:

  • The n8n Affinity node doesn’t expose that field at all in the response.

  • As a result, I can’t dynamically update the person’s custom field field, since the node never returns it.

Question:

  • Is this a limitation of the current Affinity node implementation in n8n? I’m pretty new, so I’m sure I’m missing something. I was in touch with Affinity but they couldn’t support here.

  • If yes, is there a recommended workaround (e.g. direct HTTP Request with the Affinity API)?

  • Or is it possible to extend the node to expose all custom fields on Person objects? (Which I wouldn’t mind)

Example:

  • Expected: API (or node) should return allcustom_fields (or just the one I need XYZ)

  • Actual: Only get personid, name, primary_email.

Hi @tuxel, welcome to the :n8n: community!

If the built-in Affinity node in n8n is limited, you can still access the full API using the HTTP Request node.

I noticed that the /v2/persons Affinity External API v2 endpoint on the Affinity API documentation returns the fields you need,

If that’s what you’d like to achieve, try configuring the HTTP Request node accordingly and let me know if you run into any issues, I’m happy to help troubleshoot!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.