Salesforce Integration Requirements
IN THIS ARTICLE
API Integration User
An API integration user must be created in Salesforce. This user will be the main authentication method into Salesforce to run the Import and Export of data. It is preferred that this is a username and password that Fullcast can manage since the OAuth path into Salesforce is not available in the Fullcast app today. There is an alternative to this if your company's security policy prevents this. In that scenario any updates or changes to the username or password would break the integration and would require support from your company to reestablish the connection.
Our import and export jobs use the REST Bulk API.
Import
The minimum permissions required for fields being imported into Fullcast is read only. There are mandatory objects and fields to be imported that are defined below:
Account | User | Product | Account team | Additional objects (If importing additional objects from the ones already listed.) |
ID | ID | ID | Role Name | ID |
Account Name | Name | Name | Role Name | Reference to the Account, User, or Product Objects |
Parent ID | First Name | Product code | ||
Parent Name | Last Name | Quantity Unit of Measure | ||
Last Modified Date | Last Modified Date | Family | ||
Created Date | Created Date | isActive | ||
Billing or Shipping Address | Address | isArchive |
||
Latitude | Latitude | isDeleted |
||
Longitude | Longitude | Type |
||
Owner ID | User Role name | Last Modified date |
||
Owner Name | Profile name | Created date |
||
Owner Role Name | User Type | |
||
Owner Profile Name | User Name | |||
Record Type ID | isDeleted | |||
Record Type Name | Title | |||
isDeleted | Manager ID | |||
Manager Name | ||||
isActive |
Export
Full access is required for any field/object which we are writing to. The Objects which are required in the export job are:
- GTM - Fullcast Custom Object
- Territory Member - Fullcast Custom Object
- Team Member - Fullcast Custom Object
- Product Member - Fullcast Custom Object
- Account Team - Salesforce Standard Object
Managed Package
Our managed package must be installed for the integration to work as we import and export data to custom objects in the managed package. The managed package contains mostly custom objects and fields. There are settings in the Custom Metadata Types, Custom Settings, and Remote Sites. Below is the list of custom fields added to the standard objects of Salesforce.
Account | Account team member | Contact | Lead | User | Global Value Set | Oppor- tunity |
Case | Oppor- tunity team member |
Industry Code | Assignment Type | Domain Last updated at | Routing rule | Vacation Start date | Lead Status | Routing Rule | Routing rule | Holdout Days |
Ultimate parent | External ID | Domain in sync? | Domain | Vacation End date | Operator | Holdout Expiry days | ||
Routing rule | Assignment Start Date | Routing rule | Domain Last Updated at? | Agent Logged in | Routing_ category |
|
|
|
UltimateParentKey | Assignment End Date | Contact status | Domain in sync? | |||||
Domain | Assignment ID deprecated | Clean Domain | Best Matched Account | |||||
Domain Last updated at | Domain | Clean Domain | ||||||
Clean Domain | |
|
||||||
Ultimate parent ID | |
|
||||||
Territory | |
|
|
|
|
|
|
|
Domain in sync | |
|
||||||
Industry Taxonomy |
In total, 38 custom fields are added to the standard objects in Salesforce. Below is the list of custom Lookup fields for the standard objects.
Custom Field | Custom Lookup Field |
Industry Taxonomy | Account |
Routing Rule | Account |
Territory | Account |
Ultimate Parent | Account |
Routing Rule | Case |
Contact Status | Contact |
Routing rule |
Contact |
Best Match Account |
Lead |
Routing rule |
Lead |
Routing rule |
Opportunity |
There are 3 triggers in the managed package. 1 on the Account (fullcastAccountTrigger), 1 on the Contact (fullcastContactTrigger), and 1 on the Lead Object (fullcastLEadTrigger). These are configured to be off by default so they do not run in the Salesforce environment until they are needed for a motion policy.
Custom Objects in Managed Package
Currently, there are 21 custom objects for Fullcast added in the Salesforce environment. Below is the list of custom objects.
Fullcast Engagement | Fullcast Account Hierarchy | Fullcast Dupe Action |
Fullcast Dupe Policy | Fullcast Embargo Policy | Fullcast GTM |
Fullcast Holdout Policy | Fullcast Industry Taxonomy | Fullcast Industry Taxonomy policy |
Fullcast Job | Fullcast Policy Error Log | Fullcast Policy Status |
Fullcast Queue Participant | Fullcast Queue Timing | Fullcast Resource |
Fullcast Resource Usage | Fullcast Routing Queues | Fullcast Service Level Policy |
Product Team member | Team Member | Territory Member |
Connected App
After the managed package is installed, a connected app needs to be created. This is required as it is how Motion policies are managed between Fullcast and Salesforce. The simplified Fullcast UI that is available from within Salesforce also leverages the connected app.
Frequently Asked Questions
Are there any field limitations to what can be pulled into Fullcast?
There are no limitations on the type of fields that can be imported into Fullcast from Salesforce.
What Salesforce editions is Fullcast compatible with?
Enterprise and Unlimited.
Are new custom Objects being introduced into the Salesforce instance? Which object permissions are needed as part of this integration?
Yes. The Salesforce Managed Package will add custom objects for which the solution will require full permissions on. For the standard objects, the fields that are imported will be based on whether it's needed for planning or not. This is fully configurable and will be based on the needs of the RevOps team. The standard objects we need for planning are accounts, users, and opportunities. Once planning is done certain information such as Territory, Account Team, and Quota information can be pushed back into Salesforce. This is also configurable based on needs. We recommend using a unique/separate integration user.
What's the frequency and volume of transactions in 24 hours time frame?
This is configurable but usually once every 24 hours. We pull in delta changes in the past 24 hours for the standard objects mentioned above. The volume will depend on how much volatility you have in Account and user data, or any other objects/fields needed for planning. For most of our customers, this is minimal with imports not exceeding 2K records every 24hrs.
What kind of Salesforce APIs are being used? (APIs being leveraged for Salesforce integration use REST/ SOAP/ Events API)
REST API - Bulk.
Is It a Synchronous or Asynchronous transaction?
Configurable based on the salesforce environment and governor limits. Defaults to Asynchronous.
Does this package require a Full admin profile and a specific license?
No, though a separate integration user is recommended.
Does Fullcast provide the ability to customize the batch size?
Yes. You can control the batch size to deal with governor limits.
Is there error logging available?
A custom error logging object is available for any errors in salesforce. This can be enabled and disabled via configuration AND can be set up for automatic purging of error logs. Fully compatible with Salesforce debugging and logging capabilities.
What are the disable options for the package integrations?
We use standard salesforce Connected App/OAuth Settings. The package can be disabled here. In addition, access can be controlled via the integration user as well.