SFDC Usersync: Salesforce Usersync Configuration


Some of our customers like to use Salesforce as the system of record for user management. They would like these users for their Business use cases to automatically sync to Brainshark. Please note: User sync requires setup both on the Salesforce and Brainshark sides.


The Salesforce Usersync feature Brainshark offers is a great way to manage your Brainshark users, Group Membership and inherited permissions and enrollments set at the Group Level.  Please see the instructions below and you may use the attachments to help you through the process.


Steps for taking advantage of the Usersync feature.

If you do not have the Manage Integrations option available through Brainshark’s UI in Administration please reach out to your CSM or support@bigtincan.com to have it enabled.

Once this is enabled follow these steps.

In Salesforce:

  • Identify the user data to be sent to Brainshark
  • Create a report in Salesforce that returns the users and user fields the customer would like to sync to Brainshark.
  • Note the report id. (To find the report id: Click on the report name and grab the report id from the url)
  • You may need to Create a Salesforce Custom Report Type for pulling the the Manager or Coach Email address or other value that will match the Brainshark Username
  1. Create a Report in Salesforce that contains these fields. (These are the required fields for the Usersync to work
    1. UserId
    2. Active
    3. Username
    4. First Name
    5. Last Name
    6. Email
    7. Last Modified (date/time value)
    8. Profile (recommended but not required)
  2. You can also add additional fields to the report that you use to populate in the users' fields in the Brainshark UI.



Manager Username (The value must equal the Brainshark username and cannot be the standard Full Name value that Salesforce uses as a default)

Secondary Email








Zip/Postal Code


Unique Company Identifier


In Brainshark:
4. Navigate to Brainshark Administration-->Manage Integrations

5. If you do not see an existing Salesforce integration listed, click the Create New Integration Profile button to create a new integration profile.  

6. If you do see an existing integration click on the actions menu and select edit.

7. If the fields are not populated, you will need to populate the fields:

Integration Type: Choose Salesforce using the dropdown.

Organization Type:  Product or Sandbox from dropdown

8. Click Connect Account:

9. Click the Allow button

10. For this Usersync feature you need to enable the Enable User Sync checkbox

The other options on this page should not be changed as they do not pertain to this Usersync configuration




11. Click the (edit) next to Enable User Sync

12. Populate the report Id field with the report id from Salesforce


13. Map the fields Brainshark Fields are on the left and the Salesforce report fields will be on the right.

Use the dropdown to map the fields and click apply when finished.

See example:


14. For Usersync to function your Brainshark account must have at least one Self-Registration profile available.  Administration-->Advanced Options-->Self Registration

If there are no profiles listed, then set the Enable Self-Registration to YES

Recommended settings:

Require company name for Self-Registration= NO

Show Self-Registration link on login page= NO (unless you are using this feature)

Submit the page to have a Default Self Reg User created.


If you want all users created through the Usersync to be created with the same set of permissions and group memberships, then you do not need to add additional user profiles to the list of templates.

  1. Click on the USER, NEW user profile in the list of template and Click Edit Profile
  2. Set the group memberships for the users that will be created based on this template user.
  3. Brainshark recommends that you assign the permissions to folders via the groups instead of via the user permissions 
  4. Any enrollments you want to assign to new users must be done at the group level by enrolling the group in Courses/Curriculums. (Current and Future Members setting for the group enrollment)

If you want users to be created differently then you will need to create new template users with the appropriate group memberships for each variation.  

In the Self-Registration template section, there is Profile Name field.  This field is used to map the new users to the correct template.  The value in this field will need to match the value of the field in the Salesforce that you are using for mapping to the templates. 

Please note you do not need to use the Salesforce Profile Name field from the report.  You can use any field in the report.  We often have customers use the Role or Title field for mapping to the selfreg templates.

If the value of the field in the report does not match one of the values for the SelfReg templates “Profile Name” field, then that user will automatically get associated with the default SelfReg template.


When users are mapped to a self-reg template they will be added to all the groups that template user is a member of.  If users are added to groups via the Usersync then if they change to a new SelfReg template (via the Profile Name field mapping), then they would be removed from the groups associated with the previous template and added to the groups associated with the new template.

If a user is added to groups outside of the Usersync via a manual action through the UI or via a User Bulk Upload file, or via the API then that user would not be removed from those groups.


The user sync occurs nightly at approx. 9pm Eastern.

If the date value of the field that is mapped to the Last Modified Date (Brainshark Field) is more recent than the last time the usersync ran (previous evening at 9pm Eastern) then we will update the Brainshark user profile.   Any of the Brainshark fields may be updated once we map the SFDC Userid to the Brainshark Userid if the value in the report changes.


If last sync date is not available, the sync gets all users available in the report.

If the last sync date is available, the sync gets all records that have been added or modified since the last sync date (minus 24 hours). We add the 24 hours buffer so we do not miss records to time zone differences Sync Process For each record in the report, we try to match it to a user in Brainshark as follows.

User exists in Brainshark and Salesforce username matches Brainshark username.

User exists in Brainshark and Salesforce username matches Brainshark email.

User exists in Brainshark and Salesforce email matches Brainshark email.

If an existing Brainshark user is not found, we auto-create the user Profile field mapping that exists. Rules that govern the creation:

  • User does not exist in Brainshark and Salesforce profile exists in Brainshark (self reg template with the same name)
  • User does not exist in Brainshark and Salesforce profile does not exist in Brainshark. Use default self-reg template if it exists.
  • Profile field mapping does not exist User does not exist in Brainshark. default self-reg template exists. Create using the default self-reg template.
  • The user does not exist in Brainshark. default Self reg template not found. User cannot be created in Brainshark.
  • If the sync fails on a single user, we log the issue and continue with the rest of the records.

Our goal was to come up with a solution that would address the following concerns:

Not all organizations manage users and other user-related fields in the same salesforce objects. For eg:- customer A has the active field on ‘active’ in user but customer B could save the same information in a custom field active__c Many enterprise customers have strict security policies around allowing Brainshark sync user to access their user objects Salesforce admins typically can write a custom report easily than a REST endpoint


If you have any questions or need assistance, please do not hesitate to contact your CSM or support@bigtincan.com

Was this article helpful?
0 out of 0 found this helpful