This article will detail the steps needed to perform a fresh install of the Leadspace for Salesforce application.
- Contact your Salesforce System Admin
- System Admin will login to the Salesforce instance you want to install (UAT, Sandbox, Production, etc.)
- Click the upgrade link here. You will likely be prompted to selected from a list of different logins for all SFDC environments to which you have access. Make sure to select the login for the instance you are wanting to install.
- Take a final look at the URL to make sure the instance is the desired instance
- Select 'Install for all Users'
For reference, here is the full install URL:
NOTE: Some Test, UAT, and Sandbox instances will not recognize the above link. In these cases, please do the following:
- Login to your test env. and copy the full URL from your browser into a Notepad
- Delete everything in the URL after your top level domain for the env. For example, you would be left with this:
- Add packaging/installPackage.apexp?p0=04t3m000002GpoC to your trimmed URL and paste into your browser window.
KEEP IN MIND:
- If you are simply updating your existing package, please refer to Leadspace for Salesforce: Upgrade to 4.63
- For first time installation, please continue below.
- Order of actions are important to keep; remote site settings, then settings tab, then permission set, then fields mapping.
Input Authentication Credentials
When we setup the integration on the Leadspace side, we create an OAUTH token with a program ID and secret that needs to be added to the LS4SF Integration Settings tab. This is the first order of business.
The program ID/secret will either be sent directly to your SFDC System Admin, or to your Enablement representative before the installation.
- Open the Leadspace for Salesforce App in SFDC and navigate to the 'Settings' tab
- In the 'Authentication' section at the top, input the program ID and secret sent to you
- In the 'Single Enrichment Authentication' section, input the same credentials
- Click 'Test Connection and Save'
- When you get the 'Success' message, you're ready to proceed.
Create Remote Site Settings
Package comes with a Utility tool that assist us with creating the proper Remote Site Settings in your SFDC Setup:
- In the LS4SF Application, go to the Settings Tab
- Scroll to the bottom of the page and click on the LS Utilities button
- In the "Remote Site Settings" section of the tool, you should see a message similar to this, where 'customobject' is the name of your SFDC organization / env.:
- Copy the URL and go to Setup > Remote Site Settings
- Click 'New Remote Site' and add the following:
- Remote Site Name: LeadspaceRS
- Remote Site URL: Paste what you copied from the Utility message
- Save and go back to the LS Utility screen
- Click 'Fix' and 'Recheck' and you should see a green 'Passed' message. This confirms all other remote sites were created correctly.
- If you do NOT see a green 'Passed' message, you will likely see another URL similar to in Step 3. If you do, copy this URL and go back to Setup > Remote Site Settings > New Remote Site
- Remote Site Name: Leadspace_4
- Remote Site URL: Paste what you copied from the Utility message
- Go back to the utility and click 'Fix' then 'Recheck'. You should now see a green 'Passed' message
- Now, in Setup > Remote Site Settings, you should see 5 or 6 remote sites, depending on whether you needed to add 1 or 2 during the setup (steps above).
Create Leadspace Permission Sets
- Navigate back to Settings > LS Utility screen and go to the Leadspace Permission Sets section
- You will likely see the following message:
- Click 'Fix' and then 'Recheck' and you should see a green 'Passed' message
- Go to Setup > Permission Sets and make sure you see 2 permission sets:
- Leadspace Manager
- Leadspace Admin
- Depending on some settings in your SFDC environment, you may see a 'Partial Pass' message that lists some missing permissions as seen below. If you see this message, please open each permission set and make sure the list permission are provided in System Preferences. For more details, please refer to https://support.leadspace.com/hc/en-us/articles/360012335619-Leadspace-for-Salesforce-Create-Leadspace-Permission-Sets
- If you have still receive a red error after following these steps and the permission sets have not been created, please refer to the Alternative Method in the next section.
Create Permission Sets (Alternative Method)
Certain setups and settings in your SFDC environment may prohibit the LS Utility from automatically creating the Leadspace Admin and Leadspace Manager permissions sets. Specifically, when 'Territories' and/or 'Translation' are used in your instance.
In this case, we have a workaround in creating the permission sets.
- Go to Setup > Permission Sets
- Create new permission set with the following criteria:
- Label: Leadspace Admin
- API Name: LeadspaceAdmin (no spaces or underscores)
- Go back to the Permission Sets and click on 'Leadspace Admin'
- Scroll to System Permissions
- Edit and enable Customize Application
- Save and go back to LS4SF App > Settings
- Click the LS Utility and click 'Fix' and 'Recheck' on the Leadspace Permission Sets
- This should completely create both permission sets
Complete Technical Setup
- Go back to the Settings tab and scroll down past the Endpoints section where you'll see 4 buttons:
- Click Test Connection & Save. This will test all setup connections and should provide a green confirmation bar at the top of the screen:
- Click LS Utilities and review any messages in red:
- We've already handled 'Permission Sets' and 'Remote Site Settings', so we just need to look at the following:
Leadspace Job Handler: If you see an error, click 'Fix' and 'Recheck'. If you still have an error, please do the following:
- Go to Setup > Scheduled Jobs
- Find the 'Leadspace Job Handler' and delete it
- Go back to the Utility and click 'Fix' and 'Recheck'. You should see a green 'Passed' message
- Minutely Periodic - Leadspace Job Handler Worker: This setting ONLY applies if you are using the new Minutely feature in Periodic jobs. If you are not using this, ignore any errors here for now.
- Bypass Validation Extra Field Creation: This tied to the checkbox in Settings titled 'Bypass Validation Rules'. If this is enabled, this utility checks to make sure any SFDC validation rules are bypassed successfully.
- Clean Records in LS Sync History Object: This should only apply if you have had a previous package version of LS4SF installed in your env. This will clean any unnecessary fields from the system that may not apply to the newest package version.
- Leadspace Job Handler: If you see an error, click 'Fix' and 'Recheck'. If you still have an error, please do the following:
Navigate to App
Open the App Launcher and select 'Leadspace for Salesforce' or 'Leadspace Audience Sync' Go to the 'Settings' tab. From here, you will need to enter the following information:
Authentication (Note: This is the first step of the install process)
- Program Id: You should have received an email with the subject "Leadspace API V 3.0 credentials". Input the Program Id from the email.
- Secret: Input the Secret from the email.
Note: This is only for customers who have purchased intent models from Leadspace. This is a separate program ID and secret used to update account intent data ONLY. You can refer to Leadspace for Salesforce: Weekly Intent article for more information.
- Program Id: Separate program ID for Intent ONLY. You should have received an email with the subject "Leadspace API V 3.0 credentials". Input the Program Id from the email.
- Secret: Input the Secret from the email.
Single Enrichment Authentication
- This should be the same credentials as entered in the 'Authentication' section as the first step, unless otherwise specified by the CSM/Enablement/Support Teams.
Please complete the following setup steps in this section:
- Email Addresses: Input the email(s) of whoever should receive an email when a sync job completes.
- Number of Allowed Transactions: Set the limit for allowed transaction of any single job. Recommendation is 350,000 per Leadspace
- Record Bulk Size: How many records per API call do you want? Recommendation is 200 for initial setup.
- Sync Definition - Minute Interval: If you are using the new, 'minutely' periodic sync, indicates the interval of options. Options are 3 and 5 mins.
- Receive email updates for Minutely Based Sync Activity: Toggle on to receive email updates for each sync job created at the 'per minute' interval selected in Sync Definitions jobs.
- Event Based Trigger: Toggle on if you want to create event based jobs (create or update)
- Custom Objects: Toggle on if you want to stop using LS Custom Fields on your standard objects (Account, Lead, Contact) and want to start using custom objects (Company and Person). NOTE: Once this is selected, it cannot be undone. Please consult with your CSM if you have any questions on this.
Bypass Validations & Event Based
- Ignore Validation Rules: Will bypass any validation rules setup in your Salesforce fields/objects.
- Event Based Trigger: Enables Sync Definition type 'Event Based' when creating new sync definitions.
- Allow Trigger for Non LS Permitted Users: When toggled on, users in Salesforce can create or update records to trigger event-based sync definitions without any LS permission sets. When toggled off, any users creating or update a record to trigger the sync will need to have the Leadspace Manager Permission Set assigned.
The 'Endpoint' values in this section are filled in by default. The buttons are referenced throughout this document.
Assign Permission Sets
In SFDC, navigate to Setup --> Permission Sets. You should see 2 permission sets listed.
- Leadspace Manager: More restrictive, users can ONLY create sync definitions
- Leadspace Admin: More permissive, should be given to users who need to Admin the LS4SF application. Leadspace Admins can configure app settings, set input and output mapping, and run sync jobs
You will need to make sure at least one user has Leadspace Manager and/or Leadspace Admin, unless a SFDC System Admin will be running and creating all syncs and managing the package. To assign permission sets to a user:
- Click on the permission set
- Click on Manage Assignments
- Click Add Assignments
- Select the user who should have the permission set assigned
If you need to manually create permission sets for any reason, additional reference can be found here: https://support.leadspace.com/hc/en-us/articles/360012335619-Leadspace-for-Salesforce-Create-Leadspace-Admin-Permission-Set
Configure Input Mapping
These are the Salesforce Standard Fields you will be sending to Leadspace to enrich records. Leadspace uses certain fields as input in order to best identify and enrich people and companies. Here is where you will tell Leadspace specifically which fields from each object to use as input for enrichment. Note that typically, nothing needs to be changed here but goo to make sure you can access this tab.
These are the default values. Make sure to click Save after each modification, per object, on this page:
Configure Output Mappings
These are the LS Custom Fields you want to create and map to hold the enrichment data we provide when a Sync Definition is completed. Each standard object has a dedicated output mapping tab. By default, the package contains 3 output tabs:
- Account Output Mapping
- Contact Output Mapping
- Lead Output Mapping
You will need to navigate to each of these individually to set the desired output mapping for enriched records. Note that you will want to make sure all mapping is complete before click the 'Update Mapping' button in the top-right corner.
- If you want to create a New LS Custom Field to map the line item field to, make sure to click in the Map to Field column and select <Create New Field> from the drop down (most common since this creates AND maps the fields at the same time):
- If you want to map to an existing field in Salesforce, click on the dropdown in the Map to Field column --> Select your SFDC field to map (less common):
- Make sure checkboxes 'Active' and 'Override' are checked
- When all of your mapping is complete, click Update Mapping in the top-right corner. This will create and map all fields that are marked 'Active'.
Please note that the Leadspace for Salesforce app is required to create the following fields. These fields are managed package fields. Please note you will need at least five fields available for each of the objects (Leads, Contacts, Account) for the app to install.
- Last Leadspace Activity Date: The last date the record was sent through the app.
- Leadspace Error Code: Indicates if an error has occurred.
- Leadspace Error Message: Indicates the type of error that has occurred.
- Leadspace Record Status: Indicates if the enrichment of the record was a success or failure.
- Leadspace Related Bulk Id: The id of the bulk the record belonged to.
These fields are technical validation fields and are required for the app to work properly. Customers may also use these fields to help filter and report on records that have been enriched through the app. For example, "Last Leadspace Activity Date is blank" will yield all records that have not been sent through the app, and vice versa.
Create a Test Sync Definition
Once the setup is complete, it is best practice to run one or two records through Leadspace for Salesforce to ensure that the app has been set up properly.
Follow these instructions to create a new sync job, and ensure that the status of the sync job is 'Success'. You should also run a report on the records run, and ensure that the Leadspace fields have been populated.
If you have any questions or issues, please reach out to Leadspace Support for assistance.