- 20 Minutes to read
Salesforce Service Cloud
- 20 Minutes to read
Salesforce Service Cloud enables customer service agents to work faster and more productively across customer service channels such as phone, email, web chat, and social media. This helps make customer service frictionless, helps businesses improve customer satisfaction scores, and reduces costs.
This document describes the steps necessary to configure Salesforce Service Cloud, then introduces specific supported use cases.
Installing the package
As a first step, you must have the Antavo Loyalty package installed:
Antavo Loyalty Cloud must be fully configured before you can install the application in your Salesforce organization. This includes (but is not limited to) API endpoints, API secrets, modules and integration components.
The managed package can be installed in both sandbox and production environments directly from the AppExchange Marketplace. The installation process involves the following steps:
Marketplace install
Open up the AppExchange Marketplace directly in your organization by navigating to Setup ► Apps ► AppExchange Marketplace. You can locate the Antavo Loyalty managed package by typing in the term Antavo in the search box on the top.
Alternatively, navigate to the AppExchange Marketplace listing outside of your Salesforce organization by following this link.
Get the package
Click the Get it Now button. If this is the first time you are installing an application / managed package from the machine you are working on, you might get prompted to log in again by Salesforce. Upon successful login, you will be asked to grant your organization access to the AppExchange API.Confirm your payment details (optional)
In some cases, you might be asked to confirm your payment details before you can proceed with the installation. Please note at the time of writing this installation guide, this experience was not yet embedded in the Lightning Experience, so therefore you might be prompted to visit the AppExchange Website to perform this action.
Click the Go to AppExchange Website button to confirm your payment details.Select the installation location
After confirming your payment details, you will be able to select the organization where you want to install the managed package. Both production and sandbox installations are supported. Depending on your choice, you will need to press the Install in Production or Install in Sandbox buttons.
Confirm installation details
On the next screen, you will have the chance to review the details of the installation, including the release name, and version number. You will also need to accept the terms and conditions which can also be viewed directly on the Antavo website.
By clicking Confirm and Install, the installation will begin. Please make sure that you have the necessary privileges to install the package before commencing.
Post-installation setup
You have now successfully installed the Antavo Loyalty managed package in your Salesforce organization. However, there are some steps that need to be completed before users in your organization can start using the package.
Assign permission sets to relevant users
The package delivers two permission sets:
Antavo Loyalty Admin: Assign this to a System administrator user, who will configure the Antavo integration
AntavoLoyalty: Assign this to non-admin users, who are expected to manage loyalty programs but not to configure the Antavo integration in Antavo’s Management UI.
Create the Antavo Loyalty fields on the SObject that will be enrolled in Loyalty programs
Every SObject in Salesforce which will be enrolled in an Antavo Loyalty management program needs to be configured. It is important that all fields that will be synchronized with Antavo do exist on the relevant SObjects. More information is available in the subsequent Mapping Configuration section.
Example 1 - Single SObject Configuration
If you have a Customer__c object that you wish to enroll in Antavo loyalty programs, you could create these fields:
First_Name__c
Last_Name__c
DoB__c
Email__c
Loyalty_OptIn__c
Loyalty_OptIn_Date__c
Loyalty_Status__c
Loyalty_Last_Synced__c
Loyalty_Claimed_Rewards__c
Loyalty_Earned_Points__c
Loyalty_Pending_Points__c
Loyalty_Spendable_Points__c
Loyalty_Spent_Points__c
Loyalty_Reserved_Points__c
Next, in the Antavo Mapping Configuration tab of the Antavo Loyalty application, the following two mapping configurations should be created:
profile
Antavo action: This maps the Customer profile-specific fields of that SObject.card
Antavo action: This maps the Antavo Loyalty Card-specific fields of that SObject.
Example 2 - Multiple SObjects Configuration
Alternatively, several SObjects in Salesforce can be created and their relevant fields then mapped:
Customer__c
First_Name__c
Last_Name__c
DoB__c
Email__c
Source_System__c
Default_Language__c
Country__c
Gender
Loyalty_Claimed_Rewards__c
Loyalty_OptIn__c
Loyalty_OptIn_Date__c
Loyalty_Last_Synced__c
etc.
Card__c
Card_Status__c
Card_Number__c
Brand__c
Spent_Points__c
Reserved_Points__c
Pending_Points__c
Spendable_Points__c
Earned_Points__c
Initial_Plafond__c
Residual_Plafond__c
Currency_ISO_Code__c
Card_Country__c
Registration_Date__c
Activation_Date__c
Expiration_Date__c
Deactivation_Reason__c
etc.
Customer_Registration__c
Brand__c
Registered_Service__c
Customer_Status__c
Double_OptIn_State__c
Preferred_Store__c
Subscription_Type__c
etc.
Checkout_c
Transaction_ID__c
Total__c
Coupon__c
IP_Address__c
User_Agent__c
Source__c
etc.
Checkout_Item__c
Transaction_ID__c
Total__c
Product_ID__c
Product_Name__c
Product_URL__c
Quantity__c
Points_Rewarded__c
Subtotal__c
Price__c
Discount__c
Points_Capped__c
Additional mapping for each SObject is required in the Antavo Mapping Configuration tab of the Antavo Loyalty application.
Add the Antavo-enrolled SObject tab to the Antavo Loyalty Application
This adds the tabs of all SObjects' that are related to your Antavo Loyalty program, to the Antavo Loyalty application, providing convenient access to all information in one place. Open Setup ► Apps ► App Manager ►Antavo Loyalty (edit) ►Navigation Items and include the relevant SObjects' tabs to the Navigation Items list. Click Save.
Configure the Antavo Settings
Navigate to Antavo Loyalty ► Antavo Settings and fill in the Antavo API credentials which can be obtained from your Antavo account (just navigate to Settings / API in the Antavo back-office):
API URL
API Key
API Secret
Also, configure one or more Email recipients, who will be notified once the DeleteLogsScheduler
scheduled cron job clears any accumulated log messages:
Email Addresses To Notify About Exceptional Events (comma-separated)
The HTTP Callout Max Retry Count is the maximum number of re-submission attempts for a triggered HTTP request for syncing to Antavo. When filled in, each failure of the same HTTP request incrementally increases the Failed_Callout__c.Attempts_Count__c
field up to the HTTP Callout Max Retry Count value. At this point, no more retries would be attempted and an email would be sent to the predefined recipients, configured with the previous setting: Error Log Email Recipients.
HTTP Callout Max Retry Count
Click Save.
Connect your Antavo instance to your Salesforce organization
Configure Salesforce's Antavo Loyalty Connected App credentials in Antavo
Find the configuration page of the Salesforce Sales Cloud integration by searching for it in the Modules menu.
Fill in the API credentials for the Antavo Connected App, delivered in your Salesforce org with the Antavo Loyalty package:
Consumer Key
Consumer Secret
You can copy these values from the Connected App in the packaging org.
Contact the Antavo Service Desk to obtain this information.
Log in to Salesforce to authorize the OAuth connection from Antavo to your Salesforce organization
Insert the Consumer Key and Consumer Secret fields from the previous step
Click Connect
This will bring up the Salesforce log-in screen which you can use to log in to your Salesforce organization. After a successful login, you'll be prompted to Authorize subsequent OAuth connections, initiated in Antavo, to your Salesforce organization.
Click Authorize
Configure field mapping in Antavo
After a successful OAuth authorization in Antavo, the Modules / Salesforce Sales Cloud section will present a screen where you can see your field mappings between Antavo and Salesforce Service / Sales Cloud. As you are just setting the connection up you will need to create your first mapping.
Click on the Create new field mapping button on the sidebar to create the first mapping.
You will need to provide the following information:
Remote Object - free text: The name of the Object you are trying to sync to Salesforce.
Antavo Object - selectable from a dropdown: The name of the Object you are trying to sync from Antavo.
External API Field: By design, our connector looks up objects in Salesforce by their Salesforce Object IDs. You can change this behavior and make the connector look and update the object based on an external ID.
External ID: The name of the field that stores the ID of the object within Antavo. If not provided, it defaults to the Salesforce Object ID. In case you would like to use the standard Antavo ID of the object, type
_id
in this field.Fields: For each field, you will find 3 additional attributes to define.
Loyalty Field: The name of the field in Antavo to be synced.
Remote Field: The name of the field in Salesforce.
Record:Type The record type ID of the field in Salesforce.
Map the following objects:
Customer object
Transaction object
Loyalty card object (only in case you have the Incentivized purchase and Multi-accounts modules enabled)
Mapping the Record Type ID
Fill in the Record Type ID
of the mapped SObject that you want to be used when newly created records in Antavo are synced over to your Salesforce org.
Use the same Record Type ID
value for all field mappings.
Only fill-in specific Record Type ID values if a custom Record Type exists for the SObject in Salesforce. Every Salesforce SObject has a default Master record type.
In the case of the Salesforce SObject which only has Master record type in both Salesforce and Antavo, leave the Record Type ID fields blank in the Antavo mapping configuration.
Conversely, if the Salesforce SObject has additional record types defined, you need to specify the Record Type ID here, even if only the Master record type will be mapped.
To get the Record Type ID
value, in your Salesforce org, click the cogwheel icon in the top right corner, then - Developer Console.
In the Developer Console, navigate to Debug / Open Execute Anonymous Window.
Enter this line of code in the Enter Apex Code window that will be brought up:
System.debug(
Schema.SObjectType.Customer__c
.getRecordTypeInfosByDeveloperName()
.get('Retail_Customer')
.getRecordTypeId()
);
This is assuming that:
The mapped SObject is named
Customer__c
. Substitute with a different value if needed.The RecordType API name is
Retail_Customer
. Substitute with a different value if needed.Grab the
RecordTypeID
that will be output in the Debug log after you click the Execute button.Click Save when you're done.
Configure field mapping in Salesforce
Navigate to Antavo Loyalty ► Antavo Mapping Configuration. To create a new Mapping Configuration record for the profile Antavo action, click New. Different mapping configurations can be specified here, for several specific Antavo actions:
profile
card
customer_registration
checkout
checkout_item
any-other-arbitrary-sobject to be synced to Antavo
Ensuring that the Antavo Action field matches the values listed above isimportant for the mapping configurations provided. This is because these mapped SObjects and their fields are processed explicitly, according to their configured Antavo Action field.
Any other arbitrary SObject to be synced to Antavo can have an arbitrary value for its Antavo Action field.
For example:
Click New to create a new Mapping Configuration record for the profile Antavo action.
SObject Mapping
Customer
This is the mapping for the Antavo customer and any SObject can be mapped here. The important thing is to preserve the Antavo Action and Antavo Object values, listed here. Fill in the following fields:Antavo Action
Enterprofile
Antavo Object
Entercore/
customerSObject
Select the SObject that you want to be enrolled in Antavo Loyalty programs.RecordTypes
Once an SObject has been selected, all of its RecordTypes will be listed in the Available list. Move one or more RecordTypes in the Selected list. If the SObject doesn't have any custom record types, just select the Master record type. Only records of the mapped RecordTypes and of the mapped SObject will have the Antavo Loyalty Lightning component visible on their record detail page. Again, only those records will be automatically synced to Antavo, provided that their field, which is mapped to theopt_in
Antavo field, is set toTRUE
.Default OptIn Status
Enable this, if you want any subsequently created records of the mapped SObject, to be enrolled in Antavo Loyalty by default. Note: This setting is only relevant for the profile Antavo action. It is not sensible to enable this setting for subsequent mapping configurations: card, customer_registration, checkout, checkout_itemActive
Enable this to activate this mapping configuration. It will be put in effect as soon as you save the mapping configuration by clicking Save. You can keep this disabled, to save the mapping configuration as a draft. Repeat this section to configure the SObject and field mappings for the other Antavo actions listed at the beginning of this section.
Loyalty Card
Antavo Action
Entercard
hereAntavo Object
Entercards/card
Default OptIn Status
This configuration is irrelevant for thecard
Antavo Action.
Checkout Transaction
Antavo Action
Entercheckout
hereAntavo Object
Entercore/transaction
hereDefault OptIn Status
This configuration is irrelevant for thecheckout
Antavo Action
Checkout Transaction Item
Antavo Action Enter
checkout_item
hereAntavo Object
Data entered here is irrelevant as this object will never be synced to Antavo on its own, but rather as a nested record under its parent Checkout Transaction. You can even enterirrelevant
.Default OptIn Status
This configuration is irrelevant for thecheckout_item
Antavo ActionAntavo Action
Entercustomer_registration
hereAntavo Object
Entercustom/customer_registration
hereDefault OptIn Status
This configuration is irrelevant for thecheckout
Antavo Action
Field Mapping
This maps specific fields for the selected SObjects for each of the mapping configurations.
Click the New Field Mapping button, to map a single field of the selected SObject to an Antavo field. Map the following Antavo fields to their counterpart SObject fields:
id
first_name
last_name
birth_date
email
opt_in
loyalty_opt_in_date
loyalty_status
loyalty_claimed_rewards
loyalty_earned_points
loyalty_pending_points
loyalty_spendable_points
loyalty_spent_points
loyalty_reserved_points
Loyalty_last_synced
any-other-antavo-field-that-you-wish-to-map
Finally, click Save.
To look up the Antavo field names, follow these steps in Antavo:
Customer fields
Navigate to Settings ► Customers ► Fields. Fields names are the Unique ID.
Checkout/ CheckoutItem fields
Refer to this article in the Antavo API documentation:
Antavo API / Event actions / checkout
Antavo API / Event actions / checkout_item
The Name column holds the field names.
Any other custom object required for mapping
Navigate to Modules ► Custom Entities. Navigate to a custom entity and click on the Attributes link in the sidebar. The Unique ID column contains the field name.
The required Antavo fields that need to be mapped per Antavo/action configuration are the following:
profile
id
email
first_name
last_name
opt_in
card
id
- map this to Idcustomer
- map this to the lookup field pointing to the parent customer SObjectloyalty_name
loyalty_earned_points
loyalty_spendable_points
loyalty_pending_points
loyalty_reserved_points
loyalty_spent_points
loyalty_card_brand
loyalty_card_number
loyalty_card_status
checkout
id
- map this toId
customer
- map this to the lookup field pointing to the parent customer SObjecttotal
checkout_item
id
- map this toId
product_name
product_id
quantity
price
total
subtotal
customer_registration
id
- map this toId
customer
- map this to the lookup field pointing to the parent customer SObjectbrand
Field Value Substitutions
It is possible to configure field value substitutions for scenarios where there is a mismatch in nomenclature.
For example, the Gender picklist field in Salesforce accepts M and F, whereas Antavo uses Male and Female. In this case, when mapping the Gender field, you should configure value substitutions, so that the M value is always submitted as Male and F as Female.
This can be done by locating the field that you want value mappings in the Mapped Fields data-grid of the Mapping configuration screen for an Antavo action.
Click the dropdown arrow on the right side of the row, which reveals a context menu for the relevant field.
Click Map Values in the context menu for the field.
A new modal window will appear titled: Map Values for the gender - Gender__c field.
There you can enter multiple Salesforce and corresponding substitutional Antavo Values. These substitutions will be done only for the relevant configured field.Partial substitutions will not be performed - only the whole field value will be matched against a pre-configured substitution value.
Create a Trigger in Salesforce
You need to create a trigger on the mapped SObject in Salesforce.
You have two options here:
Option 1: In case there isn't already a trigger created for the mapped SObject
Create a trigger and name it after your SObject, e.g.: CustomerTrigger.
Paste the following code snippet in your trigger declaration:
trigger CustomerTrigger on Customer__c (before insert,after insert, after update {
if(Trigger.isBefore){
if (Trigger.isInsert) {
antavo.AntavoTriggerHandler.onBeforeInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap);
}
}
if (Trigger.isAfter) {
if (Trigger.isInsert) {
antavo.AntavoTriggerHandler.onAfterInsert(Trigger operation Type, Trigger.new, Trigger.newMap, Trigger.old,
Trigger.oldMap);
}
if (Trigger.isUpdate) {
antavo.AntavoTriggerHandler.onAfterUpdate(Trigger.operation Type, Trigger.new, Trigger.newMap, Trigger.old,
Trigger.oldMap);
}
}
}
Option 2: You already have an existing trigger on the SObject that you need Antavo-integrated
In this case, you'll be adding three lines to your existing trigger's declaration, for each:
Before inserting: Add the following line of code to the relevant block in your existing trigger declaration:
antavo.AntavoTriggerHandler.onBeforeInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
After inserting: Add the following line of code to the relevant block in your existing trigger declaration:
antavo.AntavoTriggerHandler.onAfterInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap);
After update: Add the following line of code to the relevant block in your existing trigger declaration:
antavo.AntavoTriggerHandler.onAfterUpdate(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap);
Create similar triggers, or add similar lines to existing triggers for the other SObjects that need to be synced to Antavo.
Not all SObjects need to invoke trigger handling on all three trigger operations. Here's a list of commands that must be present in every SObject's trigger per Antavo Action:
profile
antavo.AntavoTriggerHandler.onBeforeInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
antavo.AntavoTriggerHandler.onAfterInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
antavo.AntavoTriggerHandler.onAfterUpdate(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
card
antavo.AntavoTriggerHandler.onAfterInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
checkout
No trigger is needed on the Checkout SObject. The sync is initiated in a trigger on the child Checkout_Item__c SObject
checkout_item
antavo.AntavoTriggerHandler.onAfterInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
customer_registration or any subsequent custom entity
antavo.AntavoTriggerHandler.onAfterInsert(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
antavo.AntavoTriggerHandler.onAfterUpdate(Trigger.operationType, Trigger.new, Trigger.newMap, Trigger.old,Trigger.oldMap);
Drag the AntavoLoyaltyData Lightning component on the SObject detail page
Open a detailed view of a record of the mapped SObject and click Edit in the cog-context menu.
Locate the AntavoLoyaltyData Lightning component in the Custom-Managed section of the Components tab on the left-hand-side. Drag this component on the Lightning App Builder area, annotated with Add Component(s) Here.
Click Save.If the confirmation dialog prompts you to activate the page, to make it visible to your users, click the Activate button.
In case you're not prompted to activate the page, close the confirmation box, and then click the Activation button to invoke this explicitly.Click the Assign as Org Default button. Select Desktop and phone. Click Save.
Once the confirmation modal is gone, click the Arrow button in the upper-left corner of the Lightning App Builder, to return to the record page.
Supported use cases
Once the AntavoLoyaltyData component has been properly placed on the Record Page, you can begin managing customer data in the loyalty program.
The following use cases are supported:
Check the customer’s events history
Add or subtract points on the customer’s account per loyalty cards/point accounts
Claim rewards on the customer’s behalf
Check or change the customer’s membership status
Check the customer’s and point balance
Look up the contact using the search, or select a recently accessed contact from the Contact drop-down menu in the main navigation
Locate the Antavo Loyalty component on the Record Page
Select the Loyalty Card / Point Account from the dropdown you would like to see the points for (optional; only necessary if the Points Economy Antavo module is enabled and there are multiple point accounts configured)
Click the Details tab in the Antavo Loyalty component
See the information on the tab The following information will be displayed:
Lifetime points: The number of points the customer has accumulated during their membership. Points that have expired or have been otherwise invalidated will not be deducted from this balance.
Available points: The number of spendable points in the customer's account.
Spent points: The number of points the customer has spent during their membership.
Reserved points: The number of points that have been reserved in the customer's account after claiming physical rewards. These points are converted to Spent points once the physical reward has been shipped to the customer.
Pending points: The number of points pending on the customer's account. Pending points are usually awarded for purchases that need to be confirmed once the return policy period has passed.
Check the customer’s events history
The customer’s events history displays the most recent actions the customer has performed in the loyalty program. By default, this view shows the last 15 events. More events can be viewed by logging into Antavo. Follow these steps to access the Events History:
Look up the Contact using the Search or select a recently accessed Contact from the Contact drop-down menu in the main navigation
Locate the Antavo Loyalty component on the Record Page
Selecting the Loyalty Card / Point Account from the dropdown does not affect the contents of this tab
Click the History tab in the Antavo Loyalty component
Click the arrow on the left side of each event to see more details.
Add or subtract points on the customer account
If your brand is running a points-based loyalty program, you can administer points on the customer’s account directly through Salesforce Service Cloud.
There are 3 different actions supported:
Add points: This adds points to the customer account, increasing both the available and lifetime points of the customer
Subtract points: This deducts points from the customer account, decreasing both the available and lifetime points of the customer
Spend points: This spends points on the customer’s behalf, so the points remain in the lifetime points but are no longer available points to spend.
Follow these steps to administer points on the customer account:
Look up the Contact using the Search or select a recently accessed Contact from the Contact drop-down menu in the main navigation
On the Record Page, locate the Antavo Loyalty component
Select the Loyalty Card / Point Account from the dropdown you would like to alter the points for (optional, only necessary if the Incentivized purchase and Multi-Accounts Antavo modules are enabled)
Click the Points tab in the Antavo Loyalty component
Select the action that you would like to perform on the account
Enter the number of points you would like to add, subtract or spend on behalf of the customer
Specify a reason, which will be visible in the Events History when someone inspects the customer's previous actions. We recommend including a clear statement about why you are performing the action
Click Submit to finalize the action.
Claim rewards on behalf of the customer
Check the list of rewards available for the customer to claim, select and claim them right away in Salesforce Service Cloud. Our solution checks for the rewards available in the Antavo Management UI, taking the following criteria into account:
The customer has enough points to claim the reward, if the reward costs points
The customer is a member of a valid segment, if the reward is limited to certain customer segments
The date and time are within the claim boundaries set during the setup of the reward
The reward is in stock if the reward stock is managed by Antavo
Follow these steps to claim a reward on behalf of the customer:
Look up the Contact using the Search or select a recently accessed Contact from the Contact drop-down menu in the main navigation
On the Record page, locate the Antavo Loyalty component
Selecting the Loyalty Card / Point Account from the dropdown does not affect the contents of this tab
Click the Rewards tab in the Antavo Loyalty component
Select the reward that you would like to claim from the list by ticking
The checkbox beside the reward image
Click Claim to claim the reward
Check and change the customer’s membership status
The Membership tab can be used to view the customer’s current membership information. If the customer is enrolled in the loyalty program, you will see the date when they joined. You will also be able to opt the customer out directly from here.
If the customer is not yet a member of the program, you can enroll them in the program using this tab.
Look up the Contact using the Search or select a recently accessed Contact from the Contact drop-down menu in the main navigation bar
Locate the Antavo Loyalty component on the Record page
Selecting the Loyalty Card / Point Account from the dropdown does not affect the contents of this tab
Click the Membership tab in the Antavo Loyalty component
The date on which the customer joined the program will be displayed
Click Opt-out to remove the customer from the loyalty program.
Follow these steps to enroll (opt-in) the customer in the loyalty program:
Look up the Contact using the Search or select a recently accessed Contact from the Contact drop-down menu in the main navigation
Locate the Antavo Loyalty component on the Record page
Click the Membership tab in the Antavo Loyalty component
A notice will be displayed to you that the customer is not a member currently
Click Opt-in to enroll the customer in the loyalty program
Platform Governor Limits Utilization
Scenario: Create/Modify an SObject record in Salesforce
This might include:
Customer
Customer Registration
Checkout Transaction
Loyalty Card
Any other arbitrary custom entities that are mapped for synchronization
Salesforce Governor Limit: Maximum number of asynchronous Apex method executions per a 24-hour period
Allowance: 250,000 or the number of user licenses in your org multiplied by 200, whichever is greater
Utilization: 1 per each record
Notes: This would depend on the number of SObject records modified:
Create/Update a single record via the Salesforce UI, would result in a single Async execution for the record.
Bulk update/create via Data Loader would result in number-of-records/200 Async executions.
In both cases the async executions will be accumulated per a sliding 24-hour period.
Scenario: Incoming REST request via the Antavo integration
Salesforce Governor Limits:
Concurrent API Request
Allowance: 25
Utilization: 1
Notes: Per sync request from Antavo to Salesforce
Total API Request Allocations
Allowance: 100,000 + (number of licenses x calls per license type) + purchased API Call Add-Ons
Utilization: 1
Notes: Per sync request from Antavo to Salesforce
Scenario: Log entries and Failed Callouts rotation
Salesforce Governor Limits:
Maximum number of Apex classes scheduled concurrently
Allowance: 100
Utilization: 2
Notes: See below
Maximum number of batch Apex jobs queued or active concurrently
Allowance: 5
Utilization: 2
Notes: See below
Outbound Email messages per day
Allowance: 5000
Utilization: 1
Notes: See below
All these three limits share a common note: The utilization would depend on the time-frequency of the scheduled jobs:
DeleteLogsScheduler
: clears entries older than 30 days, processing batches of 2,000 records in size.The client may schedule these to run whenever suits them - recommended once a month.
FailedCalloutsRetryScheduler
: processes Failed Callout recordsThe client may schedule these to run whenever suits them - recommended hourly.