Configuring the Salesforce CRM Action¶
The XO Platform lets you easily integrate with Salesforce CRM to power your conversations to create leads, opportunities, and other functions.
Watch a Short Video on Salesforce Integrations Actions
This article explains how to authorize and enable the Salesforce CRM action and install the pre-built templates.
Authorizations Supported¶
The Kore.ai XO Platform supports OAuth 2.0 authentication to allow a Salesforce integration to exchange data. For more information, see Setting Up Authorization Using OAuth v2 article.
The Kore.ai XO Platform supports the following authorization types for the Salesforce CRM integration:
- Pre-Authorize the Integration – To make the integration process smoother for developers and customers, you can pre-authorize it by providing the necessary authorization credentials to obtain the access token.
- Allow Users to Authorize the Integration – This method requires the end user to provide credentials during the conversation for authorization. This authorization process involves requesting permission for Kore.ai’s Salesforce app to access an access token at runtime.
Note
The Salesforce CRM integration can be authorized only for the Developer and Enterprise editions because Rest API integration is enabled for these editions. You cannot authorize Salesforce’s Trial edition. To learn more about Salesforce account types, see Salesforce documentation.
Authorization Type | OAuth – System | OAuth – Custom |
Pre-authorize the Integration | Yes | Yes |
Allow Users to Authorize the Integration | Yes | Yes |
Step 1: Enable the Salesforce CRM Action¶
Prerequisites:
Before enabling the Salesforce CRM actions, complete the following prerequisites:
- Create a developer account in the Salesforce CRM and note down login credentials. Use the Salesforce CRM’s Help Center for more information.
- Copy the Client ID, Client Secret Key, Authorization URL, and Call back URL and keep them ready to enable the Salesforce CRM integration.
Steps to enable the Salesforce action:
- Go to App Settings > Integrations > Actions.
- Select the Salesforce action.
Pre-authorize the Integration¶
OAuth
You can authorize the integration using developer credentials. The developer authorization lets you authorize the integration with preconfigured Kore.ai’s app or use the custom authorization profile to let a developer configure the integration.
Steps to authorize a Salesforce action using developer credentials:
- Go to App Settings > Integrations > Actions.
- Select the Salesforce action in the Available Actions region.
- In the Configurations dialog, select the Authorization tab
-
Authorization Type – Select the Pre-authorize the Integration option, and then select the OAuth option.
System Authorization
Pre-authorize Salesforce CRM integration with the necessary authorization credentials to obtain the token to access external services.
-
Select the System card to enable the Kore.ai’s preconfigured Salesforce app and click Authorize.
-
Once you click Authorize, you are redirected to “login.salesfore.com”
- Enter your developer account credentials to successfully connect with your Salesforce Account
- Click the Allow Access button to use Kore.ai’s app to fetch the access token to complete the authorization.
Custom Authorization
Create your own custom authorization profile to obtain an access token and use it to complete integration without using Kore.ai’s Salesforce app for authorization.
- Select the Custom to enable the custom authorization profile.
-
Click the Select Authorization drop-down and select the Create New option.
-
Select the type of authorization mechanism. For example, select the OAuth v2 option. To create custom OAuth profiles, see Setting Up Authorization Using OAuth v2.
-
Enter the following authentication credentials for the OAuth v2 mechanism:
- Call back URL
- Identity Provider Name
- Client ID
- Client Secret
- Authorization URL
- Token Request URL
- Scope
- Refresh Token URL
-
Click Save Auth to save Authorization Profile
- Select the new Authorization Profile, which you created to enable integration
-
Once click Authorize, you are navigated to “login.salesfore.com”
-
Enter login credentials to successfully connect with your Salesforce Account
- Click the Allow Access button if prompted to let your custom app fetch the access token to complete the authorization.
- Once the authorization is successful, you will see a success message.
- Click Enable. When you configure the action for the first time, the Integration Successful pop-up is displayed.
-
Note
You will notice the Salesforce action is moved from Available to Configured region.
Allow End User to Authorize¶
You can authorize the integration at a user level with their login credentials. The user authorization process involves requesting permission for Kore.ai’s Salesforce app to access an access token at runtime. You can also use the custom authorization profile to fetch the access token based on user credentials.
Steps to authorize a Salesforce action at a user level:
- Go to App Settings > Integrations > Actions.
- Select the Salesforce action in the Available Actions region.
- In the Configurations dialog, select the Authorization tab
-
Authorization Type – Select the Allow Users to Authorize the Integration option, and then select OAuth option.
System Authorization
The end user has to provide credentials during the conversation to authorize users for Salesforce CRM integration to obtain the access token.
-
Select the System card to enable the Kore.ai’s preconfigured Salesforce app.
-
Once you click the Enable button, a link is sent to the end user to authorize integration.
- Click on the link and enter the login credentials to allow the user to authorize the integration.
Custom Authorization
Create your own custom authorization profile to obtain an access token and use it to complete integration without using Kore.ai’s Salesforce app for authorization.
- Select the Custom to enable the custom authorization profile.
- Click the Select Authorization drop-down and select the Create New option. Follow the instructions in the Custom Authorization section.
-
You can also select an existing authorization profile as shown below:
-
Once you click the Enable button, the user will see the authorize option during the runtime execution.
-
Step 2: Install the Salesforce Action Templates¶
Once you have configured a Salesforce CRM Integration, you can explore and install action templates.
Steps to install action templates:
-
On the Integration Successful dialog, click the Explore Templates button to view the templates.
-
In the Integration Templates dialog, click the Install button to begin the installation.
-
Once the template is installed, click the Go to Dialog button to open the dialog task.
-
Once all templates are installed, a dialog task for each template is auto-created.
-
You can also select the desired dialog task from the templates and click Proceed. For example, select the Create a Lead task.
-
Once you click Proceed, the dialog task is auto-created and the canvas opens with all required entity nodes, service nodes, and message scripts.