Textkernel Search + Match: External Searches and Import Candidates Configuration Guide

Note: To take advantage of the features mentioned in this documentation, your Org needs to be using (Undefined variable: bh4SFVersions.Latest Package Version) or newer. See Release Notes for more details about which features were introduced in each release. If you would like to upgrade to the current release, contact Bullhorn for Salesforce Support.

This configuration guide is designed for Salesforce System Administrators. Please see Textkernel Search + Match: Overview for general information and a list of guides designed for end-users.

Overview

This article covers configuration steps for the External Job BoardClosed A website where open jobs are advertised Search and Import CandidatesClosed A person looking for a job. A candidate can also be referred to as a Job Seeker, Applicant, or Provider. functionality of the Textkernel Search + Match integration.

Prerequisites

The prerequisites to use this feature are:

Steps

Configure Textkernel Searcher Authentication Custom Metadata Type

This step requires details for the External Searchers supported in Textkernel that you want to activate. See Supported External Job Boards for a full list of supported job boards and configuration requirements for each. Some are configured out of the box but they will still need to be activated.

For each job board you want to enable, repeat the following steps:

  1. Go to Setup > Custom Metadata Types > Textkernel searcher authentication.
  2. Fill in the following fields:
Field Name Description

Label

Name of the job board

Textkernel searcher authentication Name

Developer Name (populated automatically)

Searcher Access Type

Org-wide: The System Administrator will enter the credentials in this Custom Metadata Type record and all users (once enabled) will access the job board in Textkernel Search + Match with the same set of credentials.

UserClosed In Salesforce terminology, this is anybody that has login access to an instance. In BH4SF instances, usually the staff of recruiting companies specific: If this is selected, users will be asked to enter their personal credentials in the Job Board CredentialsClosed In BH4SF, normally used in the context of a login page or access to some feature Management component.

Not required: This is for job boards that do not require credentials.

Searcher

Enter value from the Searcher name column in the Textkernel Searcher Authentication Configuration table.

Credential Keys

Enter comma separated Credential Keys required for authorization. For example: cvlibrary_registered_email, cvlibrary_username, cvlibrary_passwordvalue. See the Credential Keys column in the Textkernel Searcher Authentication Configuration table.

Credentials

This is where the actual credentials for the job board are entered. The definition is entered in JSON key/value pairs such as:

{

"key1":"value1",

"key2":"value2"

}

The value can be a (custom) field on the current User or a literal value. Keys come from the external job board and should be provided by Textkernel.

Active

Enable

Default

Enable

The fields in this table are the only fields used for this configuration. Any other displayed fields can be ignored.

Add Components Related to Searcher Access

System Administrators access two components for managing Textkernel Search + Match:

  • Textkernel Management - This is for environment credentials and indexing.
  • Textkernel Searcher Access Management - This is to manage Searcher Access and may have multiple sections if access to external boards is given per User, Profile, or Group.

A third component needs to be added and accessible to all users:

  • Job Board Credentials Management - This is where each user can enter or change the credentials for external job boards they have access to.

How these components are displayed, labeled, and who has visibility to them is up to the System Administrator. The steps below are for reference.

Create a Textkernel Management page if one is not already set up.

  1. Go to Setup > Lightning App Builder > New > Create new Lightning Page (App Page).
  2. Enter a Label of TextKernelClosed A BH4SF partner. One of the Search and Match / Resume Parsin services providers integrated with BH4SF Management.
  3. Select a page layout with three sections.
  4. On the Edit page, add custom components. The number and type of these can be customized to suit the needs of the Org. The screenshot below includes the following:
    • Textkernel Management custom component in the top section.
    • Textkernel Searcher Access Management custom components on the bottom left (User) and right (Profile). The Searcher Access Management component can show either User, Profile, or Groups using the Row Type dropdown on the right hand side.
  5. Save and activate for System Administrator Users only, or other Users as required.
  6. Repeat the same steps to add a Lightning Page for the custom component called Job Board Credentials Management. This page should be accessible to all Users.

Configure Textkernel Searcher Access Management

Navigate to the Textkernel Management Page that was created in the previous step to view all the External Search job boards that have been configured and activated in the Textkernel searcher authentication Custom Metadata Type. Here, enable access to the job boards using one or a combo of the options (per User, Profile, or Group). Users will not see the job board tabs in Textkernel Search + Match until they are enabled on this page.

When the Searcher Access Type is set to User Specific there is an additional step. Users will need to enter their personal credentials in the Job Board Credentials Management page before being able to search in Textkernel Search + Match.

Import Candidates Configuration

Go to the Textkernel Management tab > Manage Custom Settings and fill in the Import field with an endpoint URL for Textkernel Import APIClosed API, or Application Programming Interface, is used by customers to create custom career portals or to take advantage of Data Mirror/DataMart. Bullhorn prefers to use REST API. (provided by Textkernel).

Schedule the BHTK_CandidateImportBatch and BHTK_ImportRequestBatch Apex classes using the CandidateClosed A person looking for a job. A candidate can also be referred to as a Job Seeker, Applicant, or Provider. Import Scheduling Script below. Execute the following script in Setup > Developer ConsoleDebug > Execute Anonymous Window:

Copy
Datetime currentTime = Datetime.now();
String minuteValue = String.valueOf(currentTime.minute());
if (minuteValue.length() == 2) {
    minuteValue = minuteValue.substring(1);
}
String secondValue = String.valueOf(currentTime.second());
for (Integer i = 0; i < 6; i++) {
    String jobName = 'BHTK_CandidateImportBatch: Job ' + String.valueOf(i + 1) + ' of 6';
    String cronExpression = secondValue + ' ' + String.valueOf(i) + minuteValue + ' * * * ? *';
    System.schedule(jobName, cronExpression, new TR1.BHTK_CandidateImportBatch());
}
System.schedule('BHTK_ImportRequestBatch', '0 0 0 * * ? *', new TR1.BHTK_ImportRequestBatch());

To check if the job is running, go to SetupScheduled JobsClosed A job (vacancy, position, role) is an opening for which a customer's client needs a placement..

Supported External Job Boards

Check with Textkernel about the format of the credentials (json) and access to job boards as they may change.

Information about Job Boards with an Integration Type of Broadbean

Textkernel has partnered with Broadbean to make a number of Job Boards available in Textkernel Search + Match, but there is a cost to enable them since adding Broadbean job boards requires additional licenses. The Broadbean job boards are not included in Textkernel Search + Match standard integration. Adding Broadbean job boards to a custom Textkernel Search + Match integration can be discussed before Textkernel Search + Match implementation.

Information about Job Boards that use Google API for Search

Orgs with over 100 users will be required to have their own Google API key to access sources that Textkernel Search + Match queries via Google API.

Source/Board Country Integration Type Authentication Type Credentials Allows CV Export?

CareerBuilder

US, UK, SE

Direct

User

CareerBuilder credentials

Yes (Only via the Search UI due to CB SSOClosed Single Sign On is an authentication process that allows a user to access multiple applications with one set of login credentials.. Not via the API.)

CareerStructure

UK

Broadbean

User

Username, password

Yes

CV Library

UK

Broadbean

User

Registered_email, Username, password

Yes

CWJobs (Computer Weekly)

UK

Broadbean

User

Username, password

Yes

Dice

US

Direct

User

Username, password, clientClosed A Company is the organization where the contact works. This can also be called the Client. ID and client secretClosed Similar to a username, a client secret is sed in conjunction with the client ID to gain REST API access.

No

EfinancialCareers

UK

Broadbean

User

xmlClosed Used to create custom markup languages in order to display information on the Internet. We use XML when sending jobs to Indeed for syndication._apikey

Yes

GitHub

BE, DE, FR, NL, PL, UK, US, SE, CH

Direct

No login

No credentials, search via Google

No

Indeed Job

AE, AR, AT, AU, BE, BHClosed Bullhorn, our flagship product., BR, CA, CH, CL, CN, CO, CR, CZ, DE, DK, EC, EG, ES, FI, FR, GB, GR, HK, HU, ID, IEClosed Internet Explorer is an out of date browser provided by Microsoft. Use Chrome!, IL, IN, IT, JP, KR, KW, LU, MA, MX, MY, NG, NL, NO, NZ, OM, PA, PE, PH, PK, PL, PT, QT, RO, RU, SA, SE, SG, TH, TR, TW, UA, UK, US, UV, VE, VN, ZA

Direct

No login

Indeed publisher ID

No

Jobs.de (CareerBuilder)

DE

Direct

User

CareerBuilder credentials

Yes (Only via the Search UI due to CB SSO. Not via the API.)

Jobserve

UK

Broadbean

User

Account nr and authorisation code

Yes

Jobsite

UK

Broadbean

User

Agency_id, email

Yes

Les Jeudis

FR

Direct

User

CareerBuilder credentials

Yes (Only via the Search UI due to CB SSO. Not via the API.)

LinkedIn

AE, AU, AT, BE, CH, CA, DE, FR, HU, NL, NZ, US, UK, PL, PT, SA, SG, SE

Direct

No login

No credentials, search via Google

No

Monster

AU, CH, DE, FR, NL, UK, US

Direct

account or User

CAT code

Yes

Nationale Vacaturebank

NL

Direct

account or User

Not needed

Yes

Intermediair

NL

Direct

account or User

Not needed

Yes

Oil and Gas Job Search

MULTI

Broadbean

User

Username, password

Yes

Recruitment Edge 

US

Direct

User

CareerBuilder credentials

Yes (Only via the Search UI due to CB SSO. Not via the API.)

Reed

UK

Broadbean

User

Username, posting_key

Yes

Resume-Library 

US

Broadbean

User

Account ID and account key

Yes

StackOverflow

BE, DE, FR, NL, PL, SE, US, UK, CH

Direct

No login

No credentials, search via Google

No

Staff Nurse / Jobmedic 

UK

Broadbean

User

Email, password

Yes (Only via the Search UI due to CB SSO. Not via the API.)

TotalJobs

UK

Broadbean

User

Username, password

Yes

VDAB

BE

Direct

account or User

Client ID

No

Viadeo

FR

Direct

No login

No credentials, search via Google

No

Xing

DE

Direct

No login

No credentials, search via Google

No

Textkernel Searcher Authentication Configuration

Job Board Credential Keys Searcher Name

CareerBuilder

No parameters. Will always show login screen

careerbuilder

CareerStructure 

careerstructure_Username

careerstructure_password

careerstructure

CV Library 

cvlibrary_registered_email

cvlibrary_Username

cvlibrary_password

cvlibrary

CWJobs (ComputerWeekly) 

cwjobs_Username

cwjobs_password

cwjobs

Dice 

theitjobboard_Username

theitjobboard_password

theitjobboard_client_id

theitjobboard_client_secret

dice

eFinancial Careers

efinancial_xml_apikey

efinancial

GitHub

N/A

github

Indeed Jobs

publisher_id

Indeedjob_xx (where xx is an iso code of a country)

Jobs.de

No parameters. Will always show login screen

jobsde

Jobserve 

jobserve_uk_account_number

jobserve_uk_authorisation_code

jobserve_uk

Jobsite 

gojobsite_agency_id

gojobsite_email

jobsite

Les Jeudis

No parameters. Will always show login screen

lesjeudis

Linkedin

N/A

linkedin

Monster (au, ch,de,fr, nl, uk, us)

cat

monster_au, monster_ch, monster_de, monster_fr, monster_nl, monster_uk, monster_us

Nationale Vacaturebank

N/A

nvb

Intermediair

N/A

intermediair

Oil and Gas Job Search 

oilandgasjobsearch_Username

oilandgasjobsearch_password

oilandgasjobsearch

Recruitment Edge

No parameters. Will always show login screen

edge

Reed 

reed_Username  reed_posting_key

reed

Resume-Library 

resumelibrary_account_id

resumelibrary_account_key

resumelibrary

StackOverflow

N/A

stackoverflow

Jobmedic / Staff Nurse 

staffnurse_email

staffnurse_password

 

Totaljobs 

totaljobs_Username

totaljobs_password

totaljobs

VDAB 

vdab_client_id

 

Viadeo

N/A

viadeo

Xing

N/A

xing