Skip to content
Bullhorn ATS
Automated Use Cases

Automation Use Cases🔗

Textkernel's integration with Bullhorn supports two match automation features: Textkernel Platform Automatic Match uses a trigger event set up in Textkernel's platform to initiate automatic matches, whereas the Bullhorn Automation Auto-match feature starts automatic matchflows based on a trigger event in Bullhorn Automation.

No matter which match automation feature you prefer to use, Textkernel's best-in-class matching engine is available to your recruiting team.


Both match automation features are an add-on to the base Textkernel Search and Match integration with Bullhorn native ATS. The automation features require a Search and Match index that is connected and synced to Bullhorn in order to work.

In addition, both automation approaches can be integrated to use Textkernel's Candidate Engagement platform, to engage candidates via WhatsApp. For details, please review the Bullhorn native support in our Candidate Engagement documentation:

Textkernel Platform Automatic Match for Bullhorn Native ATS (BETA)🔗

TK Automatch

Textkernel's platform can automatically trigger match in the background and insert Bullhorn Job Submissions into your Bullhorn native ATS for the best-matching internal Candidates. These matches can be triggered automatically whenever your team creates a new Job in Bullhorn native. With this feature, Job Submissions are already available for your recruiting team in your internal Bullhorn database. They don't have to manually start their Textkernel match, and instead they can just start out reviewing the top internal candidates.

The reverse automatic match is also supported. When new candidates are loaded into your Bullhorn ATS, that can also trigger match automation to start in the Textkernel Platform. Maybe a candidate applied for one job, but didn't know about other even more relevant openings? In this scenario, Textkernel's automatic match can also insert Bullhorn Job Submissions with the best-matching open jobs whenever a new Candidate is created in Bullhorn.

Textkernel's professional services team can enable these use cases for you.

Both of these use cases insert the Bullhorn Job Submission object:

Depending on your workflow, the automatically-created Job Submissions can have single-value fields set during insertion.

For example, these things could be optionally configured by Textkernel professional services:

  • A value could be assigned on the Job Submission's status field, such as "New Lead".
  • A value could be assigned on the Job Submission's source field, such as "Textkernel Automation".
  • A value could be assigned on one of the Job Submission's customInt fields, such as the match rank order.


The Textkernel Platform's automatic match can be used together with the Bullhorn Automation product, too, but Bullhorn Automation is not required to use it.

Match template customizations🔗

When setting up match automation, Textkernel has a configurable match "template" that defines what information should be emphasized or de-emphasized when finding good automatic matches (eg job title match, location match, etc). Part of setting up this feature may be to work with Textkernel professional services to understand your needs and customize the match template(s) used. It is also possible to define multiple templates and configure the automatic match to use a different templates for different trigger criteria.

Textkernel's support for Bullhorn Automation Auto-Match feature (BETA)🔗

BHAutomation Automatch

Bullhorn Automation also offers an Auto-match feature, which Textkernel supports, too.

Inside Bullhorn Automation flows, you can configure a Match Candidates step. This can be powered by Textkernel match. The Match Candidates step takes a Bullhorn Job ID and a list of Bullhorn native Candidate ID's, and allows you to request matches for that Job within the provided Candidate list. This step can be tied into other steps of a Bullhorn Automation workflow.

BHAutomation Automatch

Bullhorn Automation includes a default matching engine for Match Candidates, but if you are using Textkernel for Search and Match, you can override that engine and point the match step to Textkernel's match engine.


The Enterprise Edition of Bullhorn Automation is required to use this feature. Please check with your Bullhorn account manager if you are unsure whether you have the necessary Bullhorn license.

Activating Textkernel's matching engine for Bullhorn Automation Auto-match🔗

Your admin user should be logged into Bullhorn Automation (the one who maintains your organizations automations)

1 Go to Settings -> API -> Match Candidates Webhook

2 Click on the Edit button.

3 Fill out the dialog:

  • Set the method as POST
  • Enter the URL provided to you by Textkernel professional services; it might be different depending on which Textkernel data center you are using.
  • Add an Authorization Header. Click "Include Header". Use the Authorization Header prefix, as shown. Textkernel professional services will provide the token for the Header content when they are helping you to activate this feature. The token lets Textkernel validate the match request is legitimate and coming from you, so be careful with it and treat it like a secure password.
  • Add the Merge Tags. These define how to map from Bullhorn ATS fields to Textkernel's supported parameters. Copy this text exactly into your setup:
{ "TKJobId": %JOBATSID%, "JobTitle": "%JOBTITLE%", "MaxCandidateCount": "%MAX_CANDIDATE_COUNT%", "MinScore": "%MIN_SCORE%", "MaxDistanceMiles": "%MAX_DISTANCE_MILES%", "CandidateIdsInList": %CANDIDATE_IDS_IN_LIST% }
  • Select Array of Candidate IDs as the response style.
  • Choose your preference on how to handle a failed request to Textkernel

BH Automatch edit

Testing your Bullhorn Automation Auto-match configuration🔗

After the webhook has been configured, you'll want to test the connection

  1. Go to Settings -> API -> Match Candidates Webhook

  2. Click on Test Webhook

You will see the dialog which is used for testing the webhook:

BH Automatch screen

  1. Configure your test

  2. Select a Job from your Bullhorn ATS

  3. Select a desired number of top N candidates to be returned.
  4. Don't worry about setting "Only match candidates with a score over X%" Textkernel does not support that parameter.
  5. Don't worry about setting "Only match candidates within X Miles/KM if the job. Textkernel does not support that parameter.
  6. Select the list of Candidates from which you want matches to be taken. Bullhorn Automation requires that you provide a Candidate list in order to get match results. In essence, we will be ranking candidates within that list, and picking the the top N that you have requested.

  7. Click "Test Webhook". It shows you the data that will be sent, and the result.

If you don't see any errors, then your test worked.


You might not have any matches if the Candidate list only contains poor matches for the Job you selected for testing

Using Auto-Match in your Bullhorn Automations🔗

Please refer to your Bullhorn ATS documentation for details on how to best integrate the match steps into your Bullhorn Automation flows.

Note that these parameters from the Match Candidate controls are NOT supported by Textkernel's implementation. The behaviour with respect to these parameters is directly managed by the Textkernel platform's match template:

  • "Only match candidates with a score over X%"
  • "Only match candidates within X Miles/KM if the job"

Match template customization🔗

When setting up Bullhorn Automation Auto-match, Textkernel can optionally support the configuration of a specialized match "template" that defines what information should be emphasized or de-emphasized when finding good automatic matches (eg job title match, location match, etc). Part of setting up this feature may be to work with Textkernel professional services to understand your needs and customize the match template used.

It is possible to define one distinct match template for use by all Bullhorn Automation Auto-match events that is different from the standard match template that is used for matching by interactive users, in case you want to tune them differently.