Overview
The StackOne Salesforce-Bullhorn integration leverages Salesforce’s REST API and SOQL queries to provide unified access to Bullhorn data. This guide covers the technical implementation details for integration partners.API Architecture
The integration uses Salesforce’s REST API and SOQL queries to retrieve and manipulate data from Bullhorn instances running on Salesforce.Custom Fields
Custom fields are supported for the Application, Candidate, and Job models.Account-Specific Custom Fields
When connecting a Bullhorn account, customers can specify which model fields they wish to include as custom fields in their Account connection screen.
Unified Custom Fields
Request additional fields for unified custom fields (not account-specific) using theproxy[fields] query parameter:
TR1__Reject_Action__cTR1__Submit_And_Email_Action__c
Custom Filtering
Apply additional SOQL filters using theproxy[filter] query parameter:
Applications
The integration supports two application types:Application Types
- TR1__Application__c - Shortlist Application
- TR1__Job_Board_Application__c - Job Board Application
Applications queries will include both TR1__Application__c and TR1__Job_Board_Application__c models by default.
Moving Applications
Convert a Job Board Application to a Shortlist Application using the move endpoint: Endpoint:PATCH /ats/applications/:id/move
Request:
-
Creates a new
TR1__Application__crecord - Returns the new record’s ID
-
Updates the
TR1__ATS_Stage__cfield Only Job Board Applications (TR1__Job_Board_Application__c) can be moved to Shortlist Applications. The interview_stage_id value must be set to “Application”. Other TR1__Application__c records can also be moved using this endpoint, but the behavior is restricted.
Passthrough Support
Thepassthrough property is supported for:
- Application Move endpoint (
PATCH /ats/applications/:id/move) - Application Update endpoint (
PATCH /ats/applications/:id)
Best Practices
- Test custom fields before implementing in production to ensure the field names are correct
- Validate SOQL filter syntax using the
proxy[filter]parameter against Salesforce documentation - Handle errors gracefully when moving applications - not all application types support this operation