For workflows, is it possible to filter actions on a field associated with a Customer's email address?

  • 24 November 2023
  • 1 reply

Hi all!

The workflow I’m trying to build (forgive me, new to Intercom) is essentially having the user respond to a chat bubble that pops up asking them if they’re interested in speaking with a member of our team, and then having them enter their Name and Email address, and then triaging them to a respective team member’s Calendly.

When I build a workflow and make the structure something like:

User Enters First Name/Last Name »

Branch based on If [Custom Owner Property] is… A/B/C/D »

Show Owner A/B/C/D’s Calendly Page Based on Above Branch


It doesn’t pull from the Custom Owner property associated to the email entered. 

Can Workflows only deal with Leads? If a customer enters their email address and is associated to a customer, is it possible to cross reference that against their email address and then pull from that profile? How would I build that?


Let me know if you need clarification from this ramble, thank you!


Best answer by aykut.aydin 28 November 2023, 06:47

View original

1 reply

Userlevel 3
Badge +3

Hey @Kevin McBain Ayk here from the Support Engineering team @ Intercom


In the above scenario you described, when the lead contacts and go through the workflow, they would have a lead profile. This profile would be totally separate from the existing ‘user’ profile with the same email address. As a result, the branch logic would work based on the lead’s own profile and not the existing user which is associated to the email address entered.


If you have a user with that email address, you can pull data from that profile by using Custom Actions in your workflow.


In your Custom Action, you can make an API call to retrieve the existing user data based on the email address the lead provided. This can be done by using the Search Contacts endpoint. In this case, I recommend storing the lead’s email input as a custom data attribute rather than the standard email attribute. Because if you store the input email as a standard email attribute, you will end up with 2 Contacts with the same email. (1x User, 1x Lead)


Then you can store the user’s “Custom Owner Property” attribute in a custom object and use that custom object value in your branch.


There is no built-in option to pull data from an existing user based on the entry from the lead. So using Custom Actions and Objects would be the only possible option in your scenario. Setting up Custom Actions and Object will require a developer on your end.


Hope the above gives you some ideas on how you can achieve this. Let us know if you have any follow-up questions, and we can continue in a conversation 😊