Category: ATS. Coverage status: Specification mapped. Vendor documentation: public developer portal.
Integration path
How composerID connects to this destination, at a glance.Vendor documentation
Bullhorn REST API documentation
Getting started with the Bullhorn REST API (OAuth and login flow)
Entity reference (JobOrder, Placement, JobSubmission, Candidate)
Bullhorn developer portal (bullhorn.github.io)
API posture
Publish target and field mapping
Each object below pairs the canonical intent fields with the destination’s own fields and operations. The mapping is indicative until it is confirmed against a tenant at onboarding.JobOrder
Open the approved demand
JobOrder
Open the approved demand
Intent ID correlation
Carry the Intent ID
Intent ID correlation
Carry the Intent ID
Placement
Read the fill
Placement
Read the fill
Change feed
Follow status without polling every record
Change feed
Follow status without polling every record
API credentials are not self-service: the client_id and client_secret are issued by Bullhorn Support for a tenant holding the REST API licence (or through the Marketplace partner programme), and calls run as a named Bullhorn API user whose entitlements bound what the integration can see and write. The restUrl and corpToken differ per data centre and are discovered at login, so nothing is hardcoded. Field labels, required fields, picklists (employmentType, status) and the meaning of customText fields are tenant-configured: read GET /meta/JobOrder during preflight. Confirm at onboarding that externalID is free for composerID’s use, long enough for the tenant’s Intent IDs and usable in a /query where clause; otherwise reserve a customText field and record which one.
Next steps
How composerID connects
The five ways composerID reaches a destination, and the minimum a destination must offer.
Publishing
Plan, preflight and publish: how a decision becomes a valid record in a destination.
All destinations
Every destination composerID documents, with its category and coverage status.