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

Information Stored

The following table describes the available integration tasks and stored data.

Available Integration Tasks

Integration Task

Information Stored

Application Roster

User ID
Created Date
Email
First Name
Last Name
License Name

Application Access

The date and time records in the following objects were created or edited:

Accounts
Campaigns
Cases
Contacts
Contracts
Leads
Opportunities
Solutions
Tasks
User Last Login

License Differentiation

See License Types and Tracking Application Activity by License Type for License Differentiation.

License Information

Unique ID
License Name
License Key
Total Quantity

Reclamation

For details, refer to Reclaiming SaaS Licenses.

Setup

Organization Name
Organization ID
Organization Type
Login History
Sandboxes
Instance Name
Primary Org Contact
Data Storage Total
Data Storage Used
File Storage Total
File Storage Used

Note:Note the following:

The Setup task is always enabled when Adding an Application.
Salesforce rounds the Data Storage and File Storage values in MB.
The Sandboxes (Developer, Developer Pro, Full, and Partial) available count is only present for the Production account.
For this iteration, only the Organization Name and Organization ID are available in the SaaS Management UI.

Note:The information stored is subject to change as enhancements are made to the product.

Minimum Permissions Required

Minimum API required permissions are based on the Scopes Required and Salesforce User Profile.

Scopes Required

Scopes Required

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

Salesforce User Profile

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.

Authentication Method

OAuth2 with Authorize Flow. For details, refer to the Salesforce instructions in OAuth 2.0 Web Server Flow for Web App Integration.

Credentials

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.

User Types

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.

Salesforce User Types

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.

License Types

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.

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.

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.

API Endpoints

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