Skip to content
Textkernel Salesforce Connector
ECA setup for Automation
latest

Configure External Client App for Automation🔗

Several integration features use OAuth 2.0 to authenticate backend machine-to-machine communication so that Textkernel can use the Salesforce REST APIs for the following functionalities: - Candidate engagement automation - External candidate importing from Source - High-throughput indexation - Search and match automation

For these features, the required Textkernel Integration package should be installed (it includes the External Client App (ECA), see installation link in Package Descriptions) and the following configuration is required.

Important

Features using the OAuth 2.0 External Client App make calls from Textkernel into Salesforce APIs. You should monitor your org's overall API usage to ensure you don't exceed your daily limits.

Important

This feature uses Salesforce's support for an External Client App with the OAuth 2 client credentials grant. Salesforce's infrastructure requires an integration user to be setup and assigned the system permission API Only User. However, several org types do not offer this feature, and as a result they do not support the external candidate import feature.

Unsupported Salesforce Org types:

  1. Developer orgs
  2. Scratch orgs (unless you use the Salesforce "Org Shape" feature to copy from an Enterprise edition)
  3. Essentials edition orgs
  4. Professional edition orgs

Setup Integration User🔗

An integration user is required and must be associated with the ECA. Changes made via the ECA are executed by this integration user inside Salesforce. The user cannot be an interactive user who logs into the Salesforce UI, or the integration will not work.

  1. Go to Salesforce Setup → Users → Click the New User button.
  2. Complete the form and make sure you select:
    • User License: Salesforce
    • Profile: Standard User
  3. Log in for the first time and set a password to fully activate the user.

Create Permission Set🔗

Create a new Permission Set to assign the necessary permissions to the integration user.

  1. Go to Salesforce Setup → Permission Sets.
  2. Click the New button.
  3. Enter the permission set Label and API Name.
  4. Click Save.
  5. You are redirected to the newly created Permission Set.
  6. Scroll down and click the System Permissions section.
  7. Click the Edit button.
  8. Enable the API Enabled checkbox.
  9. Enable the API Only User checkbox.
  10. Click Save.

Perform this additional configuration if you are using the Automation API webhook to import external candidate profiles from Textkernel Source or import automatic matches from the Textkernel platform.

  1. Select the Apex Class Access section.
  2. Click Edit.
  3. Add Textkernel1.AutomationApiRestService to the Enabled Apex Classes field.
  4. Click Save.

Assign permissions to the integration user🔗

The integration user needs several permission sets for the integration to work:

  1. (REQUIRED) The dedicated permission set created above, which makes the integration user API-only and grants access to the Automation API webhook APEX handler (if you are using that feature).

  2. (REQUIRED) Textkernel - Admin Access: This permission set grants the user access to the Textkernel managed package contents.

  3. (OPTIONAL) Textkernel - High Throughput Indexation Access: This permission set enables the High Throughput Indexation feature. When enabled, the integration user also needs permissions to read data from all objects and fields that are mapped for indexation in Textkernel.

  4. (OPTIONAL) If you are using Candidate Engagement, the integration user needs permission to read data from the Salesforce objects and fields that will trigger automations. For example, if an automation needs to read the candidate phone number field to send a WhatsApp message, the integration user must have access to that field for all candidates that the automation may need to contact. Assess which objects are used in your workflow and assign permissions accordingly. This may include job objects, job submission objects, and other relevant entities.

Configure the ECA🔗

After installing the TK Connector Integration package, you must specify the Run As user for the Client Credentials Flow.

  1. Go to Salesforce Setup → External Client App Manager.
  2. Select TK Connector Integration.
  3. Navigate to Policies → OAuth Policies → OAuth Flows and External Client App Enhancements.
  4. Enable the Enable Client Credentials Flow checkbox.
  5. Enter the username of the integration user in the Run As (Username) field.
  6. Click Save.