Salesforce
Salesforce CRM Platform is a sales automation product that allows users to manage contacts and track opportunities from any desktop or device and build 1-to-1 customer journeys.
Note:For Sandbox integrations, please select the Salesforce Sandbox application.
• | Information Stored |
• | Minimum Permissions Required |
• | Authentication Method |
• | Credentials |
• | User Types |
• | License Types |
• | Integrating Salesforce with SaaS Management |
• | Auto-Populated Salesforce License Information |
• | API Endpoints |
• | Analyzing Salesforce User and License Activity Data |
The following table describes the available integration tasks and stored data.
Integration Task |
Information Stored |
|||||||||||||||||||||||||||||||||||||||||||||
Application Roster |
|
|||||||||||||||||||||||||||||||||||||||||||||
Application Access |
The date and time records in the following objects were created or edited:
|
|||||||||||||||||||||||||||||||||||||||||||||
License Differentiation |
See License Types and Tracking Application Activity by License Type for License Differentiation. |
|||||||||||||||||||||||||||||||||||||||||||||
License Information |
|
|||||||||||||||||||||||||||||||||||||||||||||
Reclamation |
For details, refer to Reclaiming SaaS Licenses. |
|||||||||||||||||||||||||||||||||||||||||||||
Setup |
Note:Note the following:
|
Note:The information stored is subject to change as enhancements are made to the product.
Minimum API required permissions are based on the Scopes Required and Salesforce User Profile.
Scopes Required |
Description |
Integration Task Name |
Access your basic information |
To read user details |
Application Roster |
Access and manage your data (API) |
Access and manage your data |
Application Roster Application Access License Information Reclamation Setup |
Perform requests on your behalf at any time (refresh_token, offline_access) |
To make an authenticated API call |
Required for Authentication |
To authorize and grant the above scopes to our OAuth Client application, you must have System Administrator user profile permissions or follow the instructions provided below to create a user with custom permissions to grant the above scopes.
• | Create a New Salesforce Permission Set |
• | Assign the Salesforce Permission Set to a User |
Create a New Salesforce Permission Set
Complete the following steps to create a new Salesforce permission set to a user.
To create a new Salesforce permission set:
1. | After signing in to Salesforce, navigate to Setup. |
2. | In the quick find box, search for Permission Set and select the same. |
3. | Click New to create a permission set. |
4. | Enter a name under the Label field and leave the License as None, so that it can be assigned to a different user and permission set licenses. |
5. | Click Save to create the permission set, which redirects you to the Permission Set Overview page. |
6. | Click the System Permissions link. |
7. | Click the Edit button to update the permissions. |
8. | Based on the required SaaS Management integration tasks, enable the appropriate Salesforce system permissions. See the table below for details. |
Salesforce System Permissions |
SaaS Management Integration Tasks |
API Enabled API Only User View Roles and Role Hierarchy View Setup and Configuration View All Profiles View All Users |
Application Roster Application Access License Information Setup |
API Enabled API Only User View Roles and Role Hierarchy View Setup and Configuration Manage Users Note:Enabling the Manage Users permission will by default enable the following permissions: Assign Permission Sets, Manage Internal Users, Manage IP Addresses, Manage Login Access Policies, Manage Password Policies, Manage Profiles and Permission Sets, Manage Roles, Manage Sharing, Reset User Passwords and Unlock Users, View All Users. |
Application Roster Application Access License Information Setup License Reclamation |
9. | Click Save to update the permission set. |
Assign the Salesforce Permission Set to a User
Complete the following steps to assign the Salesforce permission set to a user.
Important:This Salesforce permissions set information is subject to change as enhancements are made to Salesforce.
To assign the Salesforce permission set to a user:
1. | After signing in to Salesforce, navigate to Setup -> Administration -> Users -> Users. |
2. | Is the user a new user or an existing user? |
a. | For a new user, click New User. |
b. | For an existing user, click edit on the selected user. |
3. | Enter the necessary user details. |
4. | In the User License dropdown, select Salesforce as the license type. |
5. | In the Profile dropdown, select the Minimum Access - Salesforce profile to assign to the user. |
6. | Scroll down to Permission Set Assignment: |
a. | Click Add to enable the created permission set. |
b. | Click Save to complete the assignment. |
7. | Click Save to create or update the selected user. |
OAuth2 with Authorize Flow. For details, refer to the Salesforce instructions in OAuth 2.0 Web Server Flow for Web App Integration.
Required Credentials
• | Username and password of the user with necessary minimum permissions |
• | Salesforce Instance |
Note:Username and password are required only for authorization. These credentials are not stored in SaaS Management.
Optional Credentials
• | Include User Types (Refer to the User Types descriptions below.) |
• | Entitled Developer Sandbox Count |
• | Entitled Developer Pro Sandbox Count |
• | Entitled Partial Copy Sandbox Count |
• | Entitled Full Sandbox Count |
Note:If the above Sandbox count input fields are left blank, the default entitled values mentioned in the Salesforce Help section Sandbox Licenses and Storage Limits by Type are considered.
When Integrating Salesforce with SaaS Management, there is an optional SaaS Management integration setup field Include User Types to filter the types of users in the results. You can enter multiple user types by using a comma to separate each user type.
The following table defines Salesforce user types along with the corresponding user license.
User Type |
Definition |
Standard |
This user has a standard, Salesforce Platform, or Salesforce Platform One user license. |
PowerPartner |
This user’s access is limited because he or she is a partner and typically accesses the application through a partner portal/community. This user type corresponds to the Partner user license. |
CSPLitePortal |
This user’s access is limited because he or she is an organization's customer and accesses the application through a Customer Portal or community. This user type corresponds to the High Volume Portal user license. |
CustomerSuccess |
This user’s access is limited because he or she is an organization's customer and accesses the application through a Customer Portal. This user type corresponds to the Customer Portal user license. |
PowerCustomerSuccess |
This user’s access is limited because he or she is an organization's customer and accesses the application through a Customer Portal. This user type corresponds to the Customer Portal Manager user license. |
CsnOnly |
This user’s access is limited to Chatter. This user type includes Chatter Free and Chatter moderator users and corresponds to the Chatter Free user license. |
The Salesforce integration displays a list of licenses associated with each discovered user. Those license types are explained in Licenses.
Note:SaaS Management tracks user licenses, permission set licenses, and feature set licenses.
Integrating Salesforce with SaaS Management
To integrate Salesforce with SaaS Management, perform the following steps.
Tip:For better Salesforce and Salesforce Sandbox integration performance, use your browser's incognito mode or private browsing feature.
To integrate Salesforce with SaaS Management:
1. | In SaaS Management, add the Salesforce application. Refer to Adding an Application. |
The following steps explain these features in the SaaS Management integration setup page for Salesforce.
• | Add Single Org and Upload Multiple Orgs buttons |
• | Salesforce Instance field |
• | Included User Types field |
2. | Select the Add Single Org or the Upload Multiple Orgs button based on the number of Salesforce orgs you need to integrate with SaaS Management. |
If you select Upload Multiple Orgs:
a. | Download the CSV template and enter the required information. See the following table for details. |
CSV Column Name |
Required CSV Column? (Y for Yes; N for No) |
Default CSV Column Value |
Example |
Description |
||||||
Name |
N |
product name |
Salesforce Org 1 |
This field represents the managed product name in SaaS Management. The Org Name field is populated by the Salesforce Setup integration task. |
||||||
Instance |
Y |
blank |
na1 |
To use the Salesforce API endpoints in SaaS Management, enter your organization’s Salesforce Instance. To find your organization’s assigned Salesforce Instance, refer to the Find your Salesforce information.
|
||||||
Activity Threshold |
N |
60 |
60 |
The Activity Threshold offers you the flexibility in defining the number of days before a user is considered inactive to align with your organization’s expectation of Salesforce license usage. Enter the appropriate number of days for the activity threshold: 15, 30, 45, or 60. |
||||||
Reclamation |
N |
N |
N |
The SaaS Management Reclamation integration task enables the ability to reclaim or deactivate Salesforce licenses. Enter Y for yes or N for no to enable this integration task. |
||||||
License Information |
N |
N |
Y |
The SaaS Management License Information integration task enables the ability to automatically retrieve a Salesforce license plan, license name, and total allowed number of licenses every 24 hours. Enter Y for yes or N for no to enable this integration task. |
||||||
Application Access |
N |
N |
Y |
The SaaS Management Application Access integration task enables the ability to track all Salesforce user access events. Enter Y for yes or N for no to enable this integration task. |
||||||
Application Roster |
N |
N |
Y |
The SaaS Management Application Roster integration task enables the ability to gather the list of users who have access to Salesforce. Enter Y for yes or N for no. |
||||||
User Types |
N |
blank |
Standard,PowerPartner,CSPLitePortal |
This field filters the Salesforce user types returned in the results. You can enter multiple user types by using a comma to separate each user type. |
||||||
Username |
Y |
blank |
adminUser |
Enter the username of the user that SaaS Management will connect to Salesforce. |
||||||
Password |
Y |
blank |
password1 |
Enter the password that SaaS Management will connect to Salesforce. |
||||||
Token |
N |
blank |
5V6mWckykUz |
Enter the security token of the user that will grant trust to SaaS Management to communicate with Salesforce. |
b. | Upload the CSV file. Only one CSV file can be uploaded. |
Important:Closing the Salesforce integration setup slideout while the CSV file is uploading interrupts the file upload. If the file upload is interrupted, restart the CSV file upload.
c. | Once you successfully upload the CSV file, click Create Uploaded Orgs. Duplicated orgs will not be created twice. |
3. | To use the Salesforce API endpoints, enter your organization’s Salesforce Instance in the Salesforce Instance field. To find your organization’s assigned Salesforce Instance, refer to the Find your Salesforce information. |
• | Salesforce portal URL format example 1: For https://na9.salesforce.com, na9 is the Salesforce Instance value. |
• | Salesforce portal URL format example 2: For https://company.my.salesforce.com, the complete domain company.my is the Salesforce Instance value. |
4. | To filter the types of users in the results, enter the appropriate user type(s) in the Included User Types field. Leave this field blank if you wish to retrieve all user types. You can enter multiple user types by using a comma to separate each user type. |
5. | Enter the entitled Sandboxes count in the respective Sandboxes user input field for the Salesforce application if the entitled values are different or the organization edition is different than those mentioned in the Salesforce Help section Sandbox Licenses and Storage Limits by Type. Leave the Sandbox input fields blank if your organization is entitled to the default values for the documented Salesforce organization edition. |
Important:The Sandboxes user input fields are not available for the Salesforce Sandbox integration with SaaS Management.
6. | Click Authorize, which will redirect you to the Salesforce portal. |
7. | Sign in to the Salesforce portal using the credentials of the user with the necessary Minimum Permissions Required. |
8. | To grant access to the REST APIs used in the integration, click Allow in the Salesforce Allow Access window. |
9. | For further information on managing and optimizing your organization’s Salesforce licenses, refer to: |
• | Auto-Populated Salesforce License Information |
• | Tracking Application Activity by License Type for License Differentiation |
• | Reclaiming SaaS Licenses. |
Auto-Populated Salesforce License Information
The SaaS Management integration with Salesforce offers a License Information integration task that automatically retrieves every 24 hours the Salesforce license name and total allowed number of licenses. This retrieved Salesforce license information automatically populates the Salesforce Licenses Tab in SaaS Management. This auto-populated Salesforce license information provides a more complete view of your Salesforce entitlements by displaying user licenses and permission set licenses.
Important:If you enable the License Information integration task, you need to enter and keep up to date the following Licenses Tab information. The License Information integration task does not pull in this information. The SaaS application’s annual spend calculation relies on entered and accurate license effective and ending dates.
• | Amount |
• | Currency |
• | Payment Frequency |
• | Effective Date |
• | Ending Date |
To auto-populate Salesforce license information, refer to Auto-Populating SaaS Application License Information.
Benefits of Enabling the License Information Integration Task
When the License Information integration task is enabled in SaaS Management:
• | License type, Name, and # of Items Allowed fields in the Salesforce Licenses tab are disabled as this information is automatically populated. |
• | Active and inactive ingested license data from Salesforce can be compared against the total, used, and remaining user licenses and permission set licenses listed in the Salesforce user interface. |
• | Assigned license count from the Salesforce UI matches the users’ count in the Salesforce Activity Tab for each active user license, permission set license, and feature set license configured under their respective SKUs. |
• | Salesforce Activity Tab and Users Tab do not include disabled users to help narrow the focus on user activity. |
• | Salesforce Activity Tab does not include a user’s disabled permission set licenses or feature set licenses to help narrow the focus on license use. |
• | Salesforce Activity Tab only displays records for licenses configured in SKUs. The License column of the Salesforce Users Tab displays only the SKU-configured licenses. |
Access Token URL
https://login.salesforce.com/services/oauth2/token
Application Roster and Application Access
https://<<SalesforceInstance>>.salesforce.com/services/data/v51.0/query
License Information
For User and Permission Set Licenses
https://<<SalesforceInstance>>.salesforce.com/services/data/v51.0/query
For Feature Set Licenses
https://<<SalesforceInstance>>.salesforce.com/services/data/v52.0/query
Reclamation
https://<<SalesforceInstance>>.salesforce.com/services/data/v51.0/composite/batch
Setup
https://<<SalesforceInstance>>.salesforce.com/services/data/v53.0/query
https://<<SalesforceInstance>>.salesforce.com/services/data/v53.0/limits
https://<<SalesforceInstance>>.salesforce.com/services/data/v53.0/tooling/query