This article will walk you through the process to manually create the Leadspace Permission sets as part of the Leadspace for Salesforce package. As a general rule, the package install or upgrade should create these to specifications automatically. However, we have found that some SFDC set ups and settings create the need to add these manually. The instructions below are for our newest package version 4.45.2.
Definitions
There are two permission sets that are vital to the Leadspace for Salesforce application experience. Please note that SFDC profile permissions trump permission sets. For example, System Admins need neither of these because their profile level permissions trump these permission sets.
Leadspace Manager
The more restrictive permission set, this gives users access to basic functionality such as:
- Create & Run Sync Definitions
- View Sync Definitions, Sync Activities, and Sync Bulks
Leadspace Manager should be given to users that need to create and run enrichment jobs in LS4SF. If you are using Event Based Syncs, this permission set also needs to be given to any user that will be triggering an event based sync. For example, any user that is creating or updating accounts/leads/objects.
Leadspace Admin
The more permissive set, this gives users the ability to manage the package including:
- Create and Run Sync Defintions
- View Sync Definitions, Sync Activities, and Sync Bulks
- Manage and view the Input Field Mapping
- Manage and view Settings tab
- Manage and view all object Output Mapping tabs
- View LS Logs
Leadspace Admin should be given to users that do not have System Admin access, but that need to manage the package. Leadspace Admins have access to all the crucial mapping and setup information that makes the LS4SF integration run.
Create Leadspace Manager
It is recommended to create the Leadspace Manager permission set first and then 'clone' to create the Leadspace Admin permission set last.
- Go to Setup > Permission Sets
- Click New
- Label = Leadspace Manager.
- API Name = LeadspaceManager (no spaces)
- Description is optional. Click Save
- In the Permission Set Overview, we will work our way from the top and set the following values for each.
Assigned Apps:
- leadspacesync.Leadspace for Salesforce (leadspacesync__Leadspace_Sync)
- leadspacesync.Leadspace for Salesforce (leadspacesync__Leadspace_Data_Management)
Object Settings:
Account, Lead, and Contact Objects should have Read, Create, Edit, View All permissions for all of the following:
- Sync Definitions
- Sync Activity Bulks
- Sync Activities (+Delete Access)
- Search Criteria
- LS Logs
Available Tabs:
- LS Logs
- Sync Definitions
- Sync Activities
- Sync Activity Bulks
Apex Classes Access:
- leadspacesync.Batch_EnrichmentJob
- leadspacesync.Batch_PollingJob_ls
- leadspacesync.Batch_RertyBulk
- leadspacesync.LeadspaceResponseParser (Only for packages 4.35 and above)
- leadspacesync.Ctrl_DefineEnrichmentJob
- leadspacesync.StaticParser
Visualforce Pages:
- leadspacesync.VF_DefineEnrichmentJob
System Permissions:
- View All Custom Settings
- API Enabled
Create Leadspace Admin
Now that you have created Leadspace Manager, you can clone this permission set to get a good start on the Leadspace Admin permission set.
- Go to Setup > Permission Sets
- Click on the Leadspace Manager permission set
- Click Clone
- Label = Leadspace Admin
- API Name = LeadspaceAdmin (no spaces)
- Description is optional. Click Save
- In the Permission Set Overview, we will work our way from the top and set the following values for each.
Assigned Apps:
- leadspacesync.Leadspace for Salesforce (leadspacesync__Leadspace_Sync)
- leadspacesync.Leadspace for Salesforce (leadspacesync__Leadspace_Data_Management)
Object Settings:
Account, Lead, and Contact Objects should have Read, Create, Edit, Delete, View All and Modify All permissions for all of the following:
- Sync Definitions
- Sync Activity Bulks
- Sync Activities
- Search Criteria
- LS Logs
Available Tabs:
- Sync Definitions
- Sync Activity Bulks
- Sync Activities
- Settings
- LS Logs
- Input Field Mapping
- Lead Output Mapping
- Contact Output Mapping
- Account Output Mapping
- Enrich Button Fields
Apex Class Access:
- leadspacesync.Batch_EnrichmentJob
- leadspacesync.Batch_PollingJob_ls
- leadspacesync.Batch_RertyBulk
- leadspacesync.Ctrl_ConnectionSetting
- leadspacesync.Ctrl_DefineEnrichmentJob
- leadspacesync.Ctrl_InputFieldMapping
- leadspacesync.Ctrl_ResultsFieldMapping_Account
- leadspacesync.Ctrl_ResultsFieldMapping_Contact
- leadspacesync.Ctrl_ResultsFieldMapping_Lead
- leadspacesync.LeadspaceResponseParser
- leadspacesync.StaticParser
- leadspacesync.Utils_RFM
Visualforce Pages Access:
- leadspacesync.ResultsFieldMapping_Account
- leadspacesync.ResultsFieldMapping_Contact
- leadspacesync.ResultsFieldMapping_Lead
- leadspacesync.VF_ConnectionSetting
- leadspacesync.VF_DefineEnrichmentJob
- leadspacesync.VF_InputFieldMapping
System Permissions:
- Customize Application
- Manage Custom Permissions
- Modify Metadata Through Metadata API Functions
- View Roles and Role Hierarchy
- View Setup and Configuration
- Manage Profiles and Permission Set
- API Enabled
Questions?
If you are using an older version of LS4SF, not all of the above settings will apply. As a general best practice, you can add what you have available to you at the time of creation. For example:
Apex Class 'leadspacesync.LeadspaceResponseParser' ONLY applies if you are using version 4.45. If you are using 3.75, this is not available so you don't have to add.
If you have any questions or issues, please contact support!