AFR References: Interest Manager

Prev Next

Interest Manager - Application Configuration

Last Updated: October 1, 2026

AFR features that configure the Interest Manager (FPM) application: general settings, search, Quick Add, validation rules, data migration and display templates.

Source JSON references: ALM_2026_0003_0000_0008.json, ALM_2026_0003_0000_0009.json,ALM_2026_0003_0000_0010.json

Column guide: Fallback is the value the package ships in AFR; Code default is what the code uses when the attribute is not defined at all (and no Fallback exists). Attributes without a Fallback are documented for completeness - the code default applies until an org sets a value.

Features

ACE.FPM

The AFR Tree used by Interest Manager (FPM).

Container feature - no attributes.

ACE.FPM.Settings

Feature housing common settings for Interest Manager (FPM)

Attribute Type Fallback Code default Description
Enabled boolean FALSE TRUE Master switch for the Interest Manager application. Default (code): TRUE. The Fallback deliberately ships the application disabled until an org turns it on.
UserMode text REQUESTER REQUESTER User Mode for the Interest Manager Application. Supports 'VIEWER' (view only, including own rules), 'REQUESTER' (edit only rules the user owns), 'EDITOR' (edit whatever the sharing model permits), 'ADMIN' (edit every rule) or 'DEMO' (edit every rule). An unrecognized value falls back to the REQUESTER policy. Default (code): REQUESTER.
ActingAsEnabled boolean FALSE FALSE Enable UI to act as another user. Proper configuration and FLS permission must be given for both users.
ActingAsContextType text UserDelegate UserDelegate When ActionAsEnabled is TRUE, this attribute determine the scope of the acting as user selection. Currently supports 'UserDelegate' or 'Team'. Defaults to 'UserDelegate'.
ShowConfigData boolean FALSE FALSE Enable a section showing config data for DEMO / debugging purpose.
DeliveryOptions text see below FPMConfigController.defaultDeliveryOptions - a single Email option (channel ContactFields, entitlement Email) JSON formatted string representing the available Research Delivery Options. Default (code) when the attribute is not defined: FPMConfigController.defaultDeliveryOptions - a single Email option (channel ContactFields, entitlement Email).
DeliveryOptionsAllowBeyondDefaults boolean TRUE TRUE Allow users to expand the Delivery Settings picker on a preference rule to the full DeliveryOptions catalog, instead of only offering the options selected on the contact. The contact's selections stay pre-checked. Defaults to TRUE.
ApprovalDurationOptions text — LWC list: 30 days, 60 days, 90 days, 1 year, Custom Date Range, No Expiration JSON formatted string representing the selectable approval duration. Default value provided by LWC which includes: 30 days, 60 days, 90 days, 1 year, Custom Date Range and No Expiration.
LanguagePreferencesEnabled boolean TRUE TRUE Enable language preference selection.
LanguageOptions text — FPMConfigController.defaultLanguageOptions - English (value en-US, mapping eng) JSON formatted string representing the available Research Language Options. Default (code) when the attribute is not defined: FPMConfigController.defaultLanguageOptions - English (value en-US, mapping eng).
LanguageOptionsAllowBeyondDefaults boolean TRUE TRUE Allow users to expand the Language Preferences picker on a preference rule to the full LanguageOptions catalog, instead of only offering the options selected on the contact. The contact's selections stay pre-checked. Defaults to TRUE.
ResearchAccessDefaultChecked boolean TRUE TRUE Check Research Access by default on a new preference rule, in both the Rule Builder and Quick Add Interest. With Research Access the rule is evaluated against the research access rules and the delivery / language / report type qualifiers apply; without it the rule records a general interest only and stores no qualifiers. Set to FALSE for orgs where most rules capture interests rather than research distribution. Defaults to TRUE.
DNCOptions text see below FPMConfigController.defaultDNCOptions - Email and Phone types only, with the standard reasons JSON formatted string representing the DO NOT Contact Options. Default (code) when the attribute is not defined: FPMConfigController.defaultDNCOptions - Email and Phone types only, with the standard reasons.
ShowNoResearchRuleWarning boolean TRUE TRUE Enable the application to provide warning when there is no research status rule setup. Defaults to TRUE.
FooterLabel text — Interest Manager • Powered by SS&C Tier1™ The footer label for the Interest Manager application. Set attribute to value: 'HIDDEN' to hide the footer label. Defaults to: Interest Manager • Powered by SS&C Tier1™.
NonCanonicalTypeNames text — blank Comma delimited Interest Subject Type Names which gets deduped by tagPath instead of name value during Topic Import Process.
HeaderLabel text — HIDDEN The header label for the Interest Manager application. Set attribute to value: 'HIDDEN' (or leave undefined) to hide the header label. Default (code): HIDDEN.
ParentTypeName text — Flexible Preference Name of the Interest Subject Type that is the root node for Interest Manager topic types. Keeps Interest Manager topics apart from ACE Preference and other topic trees. Default (code): Flexible Preference.
FilteredSubjectTypes text — blank (nothing filtered) Comma delimited Interest Subject Type Ids to exclude from the Topic Type tree. Invalid Ids are ignored. Default (code): blank (nothing filtered).
SearchEnabledTopicTypes text — blank Comma delimited Interest Subject Type Ids whose topics are search enabled in the Rule Builder topic pickers. Default (code): blank.
ThemeTypeName text — Theme Name of the Interest Subject Type that categorizes a topic as a Theme. Default (code): Theme.
Source text — FPM Interest__c.Source__c value written on interests generated from Interest Manager rules. Default (code): FPM.
Reason text — Research Interest__c.Reason__c value written on generated interests while the rule is Research Active (research distribution). Default (code): Research.
InterestReason text — Interest Interest__c.Reason__c value written on generated interests when the rule is NOT Research Active. The interests are still found by the 'Interest' search type but are not part of research distribution. Default (code): Interest.
DisinterestReason text — Disinterest Interest__c.Reason__c value written on a generated row that represents a disinterest (exclusion group), regardless of the rule's research posture. Client Center derives Is_Disinterest__c from this value. Code only value, deliberately absent from the Reason__c picklist. Default (code): Disinterest.
InterestStructureMode text — Legacy Interest__c structure the legacy Client Center code reads and writes. 'Legacy' - single topic per interest via Interest_Subject__c. 'RuleBased' - interests are projections of a Preference_Rule__c, topics live in IS_Search01__c - IS_Search10__c and Interest_Subject__c stays null. Switch to 'RuleBased' only after the data migration AND the rule-aware Client Center code is deployed. Default (code): Legacy.
TopicTypeMaxDepth int — 4 Maximum depth of the Topic Type hierarchy. Default (code): 4.
MultiParentTopicEnabled boolean — TRUE Allow a topic to belong to more than one parent topic. Also used by Preference Search. Default (code): TRUE.
DefaultRuleJoin text — AND Default join between topic groups on a new preference rule, in both the Rule Builder and Quick Add Interest. Supports 'AND' or 'OR'. Default (code): AND.
InterestRuleLabel text — Interests Label appended to the topic type name for an interest (IN) group when a rule name is generated, e.g. 'Sector Interests'. Default (code): Interests.
DisinterestRuleLabel text — Exclusions Label appended to the topic type name for an exclusion (NOT IN) group when a rule name is generated, e.g. 'Sector Exclusions'. Default (code): Exclusions.
SyncSearchCacheEnabled boolean — TRUE Master switch for the Preference Search pre-compiled result cache used for list pagination. When FALSE every page re-runs the search engine (pre-cache behaviour), so rollback is a config toggle rather than a deploy. Default (code): TRUE.
SyncSearchCacheStalenessMinutes int — 30 Maximum age, in minutes, of a cached Preference Search snapshot that may still be served. Independent of the physical retention handled by FPMPreferenceSearchStorageCleaner. Default (code): 30.
SyncSearchCacheMaxResults int — 50000 Hard ceiling on the number of compiled Preference Search results the synchronous transaction will serialise into the cache. Above this the cache is skipped entirely. Default (code): 50000.
DeliveryOptions Fallback
[{"label":"Email Distribution","value":"Email","channel":"ContactFields","entitlement":"Email,T1C_Base__Contact_Email__c:T1C_Base__Preferred_Research_Contact_Email__c"},
{"label":"Phone Call","value":"Phone","channel":"ContactFields","entitlement":"Phone,T1C_Base__Contact_Phone_Number__c:T1C_Base__Preferred_Business_Phone__c"}]
DNCOptions Fallback
{
  "types": [
    {
      "value": "Email",
      "label": "Email",
      "optionsJson": [{"label":"Email","value":"Email"},{"label":"Home Email","value":"T1C_Base__Home_Email__c"},{"label":"Preferred Business Contact Email","value":"T1C_Base__Preferred_Business_Contact_Email__c"},{"label":"Preferred Research Contact Email","value":"T1C_Base__Preferred_Research_Contact_Email__c"}]
    },
    {
      "value": "Phone",
      "label": "Phone",
      "optionsJson": [{"label":"Phone","value":"Phone"},{"label":"Home Phone","value":"T1C_Base__Home_Phone__c"},{"label":"Asst. Phone","value":"AssistantPhone"},{"label":"Other Phone","value":"OtherPhone"}]
    }
  ],
  "reasons": [
    { "label": "Requested by Client", "value": "Requested by Client" },
    { "label": "Compliance", "value": "Compliance" },
    { "label": "Other", "value": "Other" }
  ],
  "suspensionReasons": [
    { "label": "Holiday", "value": "Holiday" },
    { "label": "Conference", "value": "Conference" },
    { "label": "Out of Office", "value": "Out Of Office" }
  ]
}

ACE.FPM.Settings.SearchSettings

Feature housing search settings for each type of Objects in Interest Manager (FPM)

Container feature - no attributes.

ACE.FPM.Settings.SearchSettings.Contact

Feature housing search settings for Contact in Interest Manager (FPM)

Code defaults: the Code default column applies when this object's feature is defined but the attribute is not. When the whole feature is missing, Interest Manager uses built-in per-object settings for Contact, Account, User and Interest Subject (FPMConfigController.AutoCompleteConfig), which match the Fallbacks below. SOSL search is switched on per object by ACE.Core.SOSLSearch.<SObjectName>.EnableSOSLSearch.

Attribute Type Fallback Code default Description
SObjectName text Contact blank (feature ignored) The API name of the Salesforce object that will be queried for search results.
Fields text Id,Name,Title,Email,Phone,Account.Name,Account.T1C_Base__Tier__c Id,Name A comma-separated list of fields to retrieve in the query, including related fields via relationship paths.
SearchFields text Name,FirstName,LastName,Account.Name Id,Name A comma-separated list of fields used to match user input when performing SOQL-based search.
EncryptedSearchGroup text Name Name The SOSL search group used if search is performing SOSL search.
SelectableFormat text {Name}[[ • {Title}]][[ • {Account.Name}]] {Name} A display template used to render each result option in the search dropdown.
SelectedFormat text {Name} {Name} A display template used to render the selected record after a user makes a selection.
AdditionalWhereClause text T1C_Base__Inactive__c=false AND Account.RecordType.DeveloperName!='Internal' blank An optional WHERE clause fragment applied to further filter query results.
SubSelect text — none A subquery or filter condition used to restrict results based on related records, typically leveraging a semi-join (IN clause).
CoverageSubSelect text see below none A filter condition used to restrict results based on direct Contact Coverage. Used when the 'Coverage Only' checkbox is checked.
MaxResultCount text 200 200 The maximum number of records to return from the search query.
CoverageSubSelect Fallback
Id IN (SELECT T1C_Base__Contact__c FROM T1C_Base__Contact_Coverage__c WHERE T1C_Base__Employee__r.T1C_Base__User__c='{userId}' AND T1C_Base__Inactive__c='false')

ACE.FPM.Settings.SearchSettings.Account

Feature housing search settings for Account in Interest Manager (FPM)
This feature is NOT used yet, reserved for future expansion.

Code defaults: the Code default column applies when this object's feature is defined but the attribute is not. When the whole feature is missing, Interest Manager uses built-in per-object settings for Contact, Account, User and Interest Subject (FPMConfigController.AutoCompleteConfig), which match the Fallbacks below. SOSL search is switched on per object by ACE.Core.SOSLSearch.<SObjectName>.EnableSOSLSearch.

Attribute Type Fallback Code default Description
SObjectName text Account blank (feature ignored) The API name of the Salesforce object that will be queried for search results.
Fields text Id,Name,T1C_Base__Tier__c Id,Name A comma-separated list of fields to retrieve in the query, including related fields via relationship paths.
SearchFields text Name Id,Name A comma-separated list of fields used to match user input when performing SOQL-based search.
EncryptedSearchGroup text Name Name The SOSL search group used if search is performing SOSL search.
SelectableFormat text {Name}[[ • {T1C_Base__Tier__c}]] {Name} A display template used to render each result option in the search dropdown.
SelectedFormat text {Name} {Name} A display template used to render the selected record after a user makes a selection.
AdditionalWhereClause text T1C_Base__Inactive__c=false AND RecordType.DeveloperName!='Internal' blank An optional WHERE clause fragment applied to further filter query results.
SubSelect text — none A subquery or filter condition used to restrict results based on related records, typically leveraging a semi-join (IN clause).
CoverageSubSelect text see below none A filter condition used to restrict results based on direct Account Coverage. Used when the 'Coverage Only' checkbox is checked.
MaxResultCount text 200 200 The maximum number of records to return from the search query.
CoverageSubSelect Fallback
Id IN (SELECT T1C_Base__Account__c FROM T1C_Base__Account_Coverage__c WHERE T1C_Base__Employee__r.T1C_Base__User__c='{userId}' AND T1C_Base__Inactive__c='false')

ACE.FPM.Settings.SearchSettings.User

Feature housing search settings for User in Interest Manager (FPM)

Code defaults: the Code default column applies when this object's feature is defined but the attribute is not. When the whole feature is missing, Interest Manager uses built-in per-object settings for Contact, Account, User and Interest Subject (FPMConfigController.AutoCompleteConfig), which match the Fallbacks below. SOSL search is switched on per object by ACE.Core.SOSLSearch.<SObjectName>.EnableSOSLSearch.

Attribute Type Fallback Code default Description
SObjectName text User blank (feature ignored) The API name of the Salesforce object that will be queried for search results.
Fields text Id,Name,Email Id,Name A comma-separated list of fields to retrieve in the query, including related fields via relationship paths.
SearchFields text Name,Email Id,Name A comma-separated list of fields used to match user input when performing SOQL-based search.
EncryptedSearchGroup text Name Name The SOSL search group used if search is performing SOSL search.
SelectableFormat text {Name}[[ • {Email}]] {Name} A display template used to render each result option in the search dropdown.
SelectedFormat text {Name} {Name} A display template used to render the selected record after a user makes a selection.
AdditionalWhereClause text IsActive=true blank An optional WHERE clause fragment applied to further filter query results.
SubSelect text — none A subquery or filter condition used to restrict results based on related records, typically leveraging a semi-join (IN clause).
MaxResultCount text 200 200 The maximum number of records to return from the search query.

ACE.FPM.Settings.SearchSettings.InterestSubject

Feature housing search settings for Interest Subject in Interest Manager (FPM)

Code defaults: the Code default column applies when this object's feature is defined but the attribute is not. When the whole feature is missing, Interest Manager uses built-in per-object settings for Contact, Account, User and Interest Subject (FPMConfigController.AutoCompleteConfig), which match the Fallbacks below. SOSL search is switched on per object by ACE.Core.SOSLSearch.<SObjectName>.EnableSOSLSearch.

Attribute Type Fallback Code default Description
SObjectName text T1C_Base__Interest_Subject__c blank (feature ignored) The API name of the Salesforce object that will be queried for search results.
Fields text see below Id,Name A comma-separated list of fields to retrieve in the query, including related fields via relationship paths.
SearchFields text Name,T1C_Base__Description__c,T1C_Base__Alias__c Id,Name A comma-separated list of fields used to match user input when performing SOQL-based search.
EncryptedSearchGroup text Name Name The SOSL search group used if search is performing SOSL search.
SelectableFormat text {Name}[[ • {T1C_Base__Description__c}]] {Name} A display template used to render each result option in the search dropdown.
SelectedFormat text {Name} {Name} A display template used to render the selected record after a user makes a selection.
AdditionalWhereClause text — blank An optional WHERE clause fragment applied to further filter query results.
SubSelect text — none A subquery or filter condition used to restrict results based on related records, typically leveraging a semi-join (IN clause).
MaxResultCount text 200 200 The maximum number of records to return from the search query.
Fields Fallback
Id,Name,T1C_Base__Description__c,T1C_Base__Alias__c,T1C_Base__Interest_Subject_Type__c,T1C_Base__Interest_Subject_Type__r.Name

ACE.FPM.Settings.QuickAdd

Feature housing Quick Add settings in Interest Manager (FPM) - Supported in 2026.3 and later

Attribute Type Fallback Code default Description
Enabled boolean FALSE FALSE Enable the Quick Add Interest tab and functionality within Interest Manager.
AssistMode [Future] text DETERMINISTIC DETERMINISTIC Assist mode for extraction. Supports 'DETERMINISTIC', 'LLM_EXTRACT', or 'LLM_EXTRACT_AND_RANK'. Defaults to 'DETERMINISTIC'.
Delimiters text ,::;::/::\n:: and :: plus ,::;::/::\n:: and :: plus Phrase delimiters for the tokenizer, separated by '::' as the meta-separator. Each entry is a literal string to split on. Use '\n' for newline. Default: ',::;::/::\n:: and :: plus '. Example to add 'in': ',::;::/::\n:: and :: plus :: in '
AutoAcceptScore int 90 90 Minimum score (0-100) for a topic match to be auto-accepted without user confirmation.
AutoAcceptGap int 20 20 Minimum score gap between the top candidate and runner-up for auto-accept.
MaxCandidates int 8 8 Maximum number of topic candidates to show per phrase before marking as TOO_BROAD.
RuleNameTemplate text Quick Add - {datetime} Quick Add - {datetime} Template for auto-generated rule names. Use {datetime} as placeholder for current date/time. Example: 'Quick Add - {datetime}'
DirectSaveEnabled boolean TRUE TRUE When true, show a 'Save Directly' button for interest-only rules (no research access) that saves without launching the rule form.
LlmNamedCredential [Future] text — blank Named Credential used for the LLM callout when AssistMode is LLM_EXTRACT or LLM_EXTRACT_AND_RANK. Default (code): blank.
LlmVendorAdapter [Future] text — FPMAiEinsteinAdapter Apex class name of the LLM vendor adapter. Default (code): FPMAiEinsteinAdapter.
LlmModel [Future] text — blank (adapter default) Model name passed to the LLM vendor adapter. Default (code): blank (adapter default).
LlmTimeoutMs [Future] int — 10000 Timeout, in milliseconds, for a single LLM call. Default (code): 10000.
LlmMaxCallsPerTurn [Future] int — 3 Maximum number of LLM calls allowed for a single Quick Add turn. Default (code): 3.
LlmLogPrompts [Future] boolean — FALSE Log the LLM prompts and responses for debugging. Do not enable in production with client data. Default (code): FALSE.

ACE.FPM.ValidationRules

Feature housing Validation Rules

Attribute Type Fallback Code default Description
ResearchStatusRules text (blank) blank JSON Formatter Research Status Rules

ACE.FPM.Migration

Feature housing settings used by the Interest Manager data migration (FPMMigrationService) that creates Topic Types and Topics from APM Topics and generic topics within the org. converts legacy Interest__c records into Preference Rules.

Attribute Type Fallback Code default Description
ReportTypeDeliveryMap text — blank (no mapping) JSON formatted mapping of legacy Report Type to Interest Manager Delivery Option(s), used when reconstructing research rules. Can be overridden per run by the deliveryMapJson parameter. Default (code): blank (no mapping).
DefaultDeliveryOptions text — blank Semicolon delimited org-wide fallback delivery options (e.g. 'Email') applied to rules reconstructed for research distribution when neither the report type mapping nor the Contact carries a preference. Can be overridden per run by the defaultDeliveryOptions parameter. Default (code): blank.
DefaultLanguageOptions text — blank Semicolon delimited org-wide fallback language options (e.g. 'en-US') applied to rules reconstructed for research distribution when the Contact carries no language preference. Can be overridden per run by the defaultLanguageOptions parameter. Default (code): blank.
BackfillClientCenterFields boolean — FALSE When TRUE the migration back-fills the single-topic Client Center lookups (Interest__c.Interest_Subject__c) from the rule's first topic. Lossy for multi-topic rules - a migration aid only for orgs still running un-refactored Client Center code. When FALSE the back-fill step is a read-only report. Can be overridden per run by the backfillClientCenterFields parameter. Default (code): FALSE.

ACE.FPM.Views

Feature housing common display template used by Interest Manager (FPM)

Attribute Type Fallback Code default Description
ContactTemplate text build token %%%ACE_FPM_Views_ContactTemplate%%% blank Display template for Contact Profile under Critical Preferences
AccountTemplate text build token %%%ACE_FPM_Views_AccountTemplate%%% blank Display template for Account Profile (Not in Used Yet)
ApprovalRequestTemplate text build token %%%ACE_FPM_Views_ApprovalRequestTemplate%%% blank Display template for Approval Request Details