Skip to main content

How to use conditional conversation attributes

Learn how to create and use conditional data attributes for advanced conversation management.

Updated over a month ago

You can conditionally show conversation attributes based on the value of another attribute.

Note: This feature is not a security feature.

What are conditional conversation attributes?

Conditional attributes is a feature that enables you to:

  1. Conditionally show attributes based on the value of another attribute. For example, you can choose to show the attribute "Delivery Carrier" only when a customer sets the value of the attribute "Issue" to "Delivery".

  2. Conditionally limit the options of an attribute based on the value of another attribute. For example, only show the options "Italy" and "Spain" in the "Country" attribute if the "Region" attribute is set to "EMEA", and show only the options "Malaysia" and "Japan" in the "Country" attribute if the "Region" attribute is set to "APAC".

Terminology

There are two key terms to understand:

  1. Controlling attribute: the attribute which controls whether one or more dependent attributes appear.

  2. Dependent attribute: the attribute that appears as a result of a value entered in the controlling attribute.

For example, when the "Issue" attribute is set to “Delivery”, the attribute “Delivery Carrier” is shown. "Issue" is the controlling attribute in this case. “Delivery Carrier” is the dependent attribute.


Set up conditional attributes for conversations

Here are two examples that explain how to use controlling attributes and dependent attributes:

1) Show a new attribute based on the value of another

For example: show the attribute "Delivery Carrier" when the "Issue" attribute is set to “Delivery”.

  1. Go to Settings > Conversation data and click Create attribute.

  2. Create a list attribute for "Issue" and list the issues e.g. "Delivery", "Payment", etc.

  3. Create another list attribute for "Delivery Carrier" and list the delivery carriers.

  4. Add a condition to the controlling attribute, "Issue". To do this:

    1. Click on the pencil icon and navigate to the Conditions tab.

    2. Click Add condition to create a new condition.

    3. Under “If option is”, select in the dropdown the relevant value for "Issue", which in this case is “Delivery”.

    4. Under “then show”, select the attribute you want to show when "Issue" is set to "Delivery". In this case, select the attribute "Delivery Carrier".

    5. The dropdown below, which says “All options”, allows you to limit which options are shown when the condition is met. In this case, leave the dropdown to say “All options”. To see an example of how to limit the options shown, see below.

  5. Save your conditions.

2) Limit the values in a dropdown of another attribute

You can limit the values in a dropdown of another attribute based on the value of another attribute. For example: if "Region" is set to "EMEA", show only EMEA countries in "Country", but if "Region" is "APAC", show only APAC countries in "Country".

In addition to conditionally causing a new attribute to appear based on the value of another attribute, you can also use conditional attributes to limit the options in a list dropdown.

  1. Go to Settings > Conversation data and click Create attribute.

  2. Create the two attributes: "Region" and "Country". The "Country" attribute should contain all the values relevant for each of the values of "Region". In this example, "Country" should contain a list of all countries that you want to show in EMEA and APAC (Italy, Spain, Germany, Malaysia, Japan, Singapore).

  3. Add two conditions to the controlling attribute, "Region". To do this:

    1. Click on the Pencil icon and navigate to the "Conditions" tab

    2. Click Add condition to create the first condition.

    3. Under “If option is”, select in the dropdown the relevant value for "Region". In this case “EMEA”.

    4. Under “then show”, select the attribute you want to show when "Region" is "EMEA". In this case, select the attribute "Country".

    5. To limit the options in "Country" when "Region" is "EMEA", change the dropdown from "All options", to show just the options "Italy, Spain, and Germany".

  4. Repeat the above for "If option is" set to "APAC", except change the dropdown from "All options", to show just the options "Malaysia, Japan and Singapore".

  5. Save your conditions.


Impact to other settings, existing data, and automations

How changes to the value of controlling attributes impact dependent attributes

When changing a controlling attribute after a dependent attribute is already filled in, the value for the dependent attribute will be automatically removed.

  • For example, if "Issue" is changed from "Delivery", the conditional attribute "Delivery Carrier" will be removed.

How changes to conditions impact data collected on existing conversations

Changes to conditions in the setup does not impact historical data already collected in attributes.

For example, where an attribute "Delivery Carrier" has the condition that it only appears when "Issue" is set to "Delivery":

  • Changing the conditions set up such that "Delivery Carrier" appears only when "Issue" is set to "Package Missing" will not remove "DHL" as the value for the attribute "Delivery Carrier".

  • However, if an teammate/customer updates the value of the attribute Issue on the conversation, it will unset and hide the attribute "Delivery Carrier" since the conditions for it to appear are no longer met.

Note:

  • There is a limit of 100 conditions per dependent attribute.

  • The controlling attribute can only be a list data type. The option to add conditions is disabled if you don’t have any attributes that are of a list data type.

  • It's not possible to set up an attribute to appear based two conditions in an AND fashion. For example, only show attribute "Refund" if Category is "Product" AND "Price is > 100$".

  • Fin workflows and changes via API can fill out the dependent attribute without filling out the controlling attribute.


How to add conditions in bulk

If you have a large amount of conditions that need to be created, to save time, you can upload your conditions using a CSV file.

  1. Go to Settings > Conversation data to configure your conversation attribute settings.

  2. Edit the attribute you’d like to add conditions to. Then select the Conditions tab and click Upload.

  3. Upload a CSV containing your conditions. It should follow the following format:

    1. First column - The controlling option that triggers the condition.

    2. Second column - The dependent attribute that shows when the controlling option is selected.

    3. Third column - Which options are shown, if the dependent attribute is a list attribute. Otherwise, leave it blank to show all. Each option must be entered on a separate row, even when associated with the same controlling value.

The first row will be treated as column headers and will not be imported.

This is an example of a formatted sheet if you’d like to set up conditions on the controlling attribute Region with the only relevant options. 👇

If option is

then show

with these options

EMEA

Country

France

Greece

Italy

APAC

Country

Japan

Australia


How to use conditional attributes with AI category detection

AI category detection is a feature that enables Fin to automatically categorize conversations based on their content.

It now supports conditional attributes, meaning AI category detection will respect any logic you’ve defined for when dependent attributes should be evaluated — and only apply values when relevant.

Did this answer your question?