With Chameleon's Salesforce integration, you can leverage data from any and multiple Salesforce objects (not just the standard Contact and Account objects) to ingest data and target and personalize your in-app Experiences.
Salesforce is a Data Source: get Salesforce attributes in Chameleon; Chameleon does not send data to Salesforce.
Availability & Usage
🔐 Available for Growth & Enterprise
📍 To power your Tours, Embeddables, Tooltips, Microsurveys, Launchers, HelpBar
⚙️ Connect from the Dashboard, but requires an Admin, Publisher, or Engineer role. Adding, editing, or removing a Mapping requires an Admin or Engineer role.
📩 Contact to discuss your plan needs
Setting up the integration
You can enable the Salesforce integration via the Chameleon Dashboard, as long as you are able to log into the Salesforce account you wish to connect.
1. First, connect your Salesforce account
2. Define your mapping to correctly link users and companies
Note only Admins or Engineer roles can make changes to mappings.
To ensure your users' data is synced seamlessly between your Salesforce and Chameleon account, and that attributes are attached to the correct users and companies, you need to identify what attributes should match between both tools.
Once you click Define Mapping then you'll be able to select:
Whether you want to update Users or Companies in Chameleon
Which User/Company attribute you are sending to Chameleon (as part of your installation) you want to match against
Which Salesforce Object you want to sync data from, and which attribute in that Object you want to match against the Chameleon User/Company attribute
All the attributes that you are sending to Chameleon associated with a user profile or company profile will be listed; if you are not seeing the attribute you hope to match on, ensure that it is being sent as part of your implementation.
If you installed Chameleon via Twilio Segment, then all attributes you send to Twilio Segment should be available, unless you customized the installation.
🆕 You can map multiple Salesforce objects to a Chameleon User or Company object, and in those cases you will be able to import attributes from any of those objects and make those User / Company properties available to use in Chameleon.
For example, if you are a transportation software provider, and want to import fields from both a Dealership and an OEM object onto Companies in Chameleon, you can!
Each Mapping pairs one Salesforce object with one Chameleon object. You can configure up to 10 Mappings in total. The same Salesforce object cannot be mapped to the same Chameleon object multiple times.
Choosing what to match on
The Chameleon property you match on determines how Salesforce records find their way to the right Users and Companies.
Matching on User ID or Company ID uses the unique UID you already send to Chameleon. You can also match on any other Chameleon property, e.g. an email address, an external account key, a plan identifier, or any custom property you send.
⚠️ Important: when you match on a property other than User ID or Company ID, Salesforce data can only land on Users and Companies that already exist in Chameleon. It will never create new Users or Companies in Chameleon. If a Salesforce record has no matching Chameleon record yet, it is skipped silently, so if you're expecting records to appear and they don't, check whether they exist in Chameleon first.
Checking your match before you save
As soon as you pick a Chameleon property and a Salesforce field, Chameleon checks the match against your live Salesforce data and reports back, for example: "8 of 10 Users spot-checked matched a Salesforce record."
ℹ️ This is a spot check, not a coverage estimate. Chameleon reads the first records it finds rather than a representative sample across your whole account, so a clean result confirms the match works, but doesn't guarantee every record will match when the full sync runs.
If the check can't find matches, it tells you why:
The property isn't on your account — nothing will match. Pick a different Chameleon property.
No Users or Companies hold a value for it yet — nothing will match until that data reaches Chameleon.
The values don't fit the Salesforce field — for example matching text against a Salesforce record ID field. Pick a different field or property.
Salesforce rejected the match — the two aren't comparable. Pick a different Salesforce field or Chameleon property.
The check couldn't run — this one is temporary; try again in a few minutes.
Changing or removing a Mapping
Removing a Mapping (or changing which objects and fields it matches on) removes the Properties it synced from Chameleon. This cannot be undone.
Before you confirm, Chameleon shows you what's affected (i.e. how many Properties will be removed, how many Users and Companies hold that data, and which Segments and live Experiences depend on it.) Read this carefully because Experiences targeted on a Segment that uses those Properties may stop working correctly.
ℹ️ If Chameleon's access to Salesforce expires, you won't be able to change your Mappings until you reconnect the integration. Your existing Mappings are unchanged and keep syncing in the meantime.
3. Select the fields you want to import from Salesforce
Once you have connected Salesforce and mapped the user and company fields, you be able to select fields from those mapped Salesforce objects to import into Chameleon in the "Fields to import" section.
Simply select the fields from each object you want to sync, and then hit "Sync" to run the first import.
After this the 📌 syncs will happen once every 24 hours, although you can always visit this page to run a manual update by clicking "Sync".
🤝 Sync only the fields that you know you're going to use to avoid noise/clutter
How to use it?
With the integration connected and your attributes synced, you can begin to use Salesforce data to target your Chameleon Experiences. Search for the properties you want to leverage and these will be available when creating an audience Segment to target.
You'll find the "Salesforce objects" filter group and any data you're sending from Salesforce to Chameleon, there. After selecting "Salesforce objects" in the first filter dropdown, select the relevant account or contact property, its value, and operator fields.
💡 You can also leverage Salesforce attributes when personalizing Experiences with merge tags, for example, "salesforce_contact.first_name".
Not seeing Salesforce within the list of filters? This could happen if this integration is not available for your plan. Please contact us if this is still the case and you're on a Growth or Enterprise plan.
Using Salesforce with HelpBar
You can leverage your Salesforce knowledge base with HelpBar to enable users to access your documentation more easily in your product.
You can add your Salesforce help center as a website to HelpBar. Chameleon uses Salesforce's KnowledgeArticleVersion to search and display your articles to users. This requires custom configuration and can not be set up via your Dashboard at the moment, so please contact us if it's something you want to use.
Launching Salesforce chat from Experiences
If your team uses Salesforce chat, you can also enable users to launch it in your app from Chameleon Experiences (via the Salesforce API). You can do so with a button "Action" or your Launcher (add it as an "Item").
👉 Pick the "Run Custom Code" option from your CTA button or when adding a new Item to your Launcher and paste this code: launchChat();
ℹ For this to work correctly, you should have Salesforce installed (including the code that allows the Salesforce chat to run) on the pages of your product where Chameleon Experiences are seen by end users.





