Obtaining Job and Company information

Forum for users and developers of Bullhorn's API service.

Moderators: StaffingSupport, s.emmons, BullhornSupport

Post Reply
dwellmanhp
User
Posts: 5
Joined: Tue May 18, 2021 4:41 pm

Obtaining Job and Company information

Post by dwellmanhp »

Hello,

I am working on an application that exports data into a Bullhorn system via the REST API. On one screen we want to find the available jobs in Bullhorn so we can create a job submission.

Here's how we are finding the available list of jobs today:

Code: Select all

GET /options/JobOrder
This appears to return all the JobOrders in the system, is that right? Are there filters applied?

However, this call does not return the company associated with the Job (i.e. we might end up with lots of job titles of "Software Engineer" but we don't know to which company these belong). Per the documentation, the /options results includes the name and the ID.

I believe to get this, we need to fetch the "clientCorporation" associated with each JobOrder. I see this is available via the GET /entity operation, and I may specify the fields to fetch and all the IDs to look up. e.g.

Code: Select all

GET /entity/JobOrder/1,2,3,4,5,6?fields=id,title,clientCorporation
... would return up to six entities.

My questions:

1. Is there any way to get both the JobOrder ID, Title, and associated ClientCorporation's Name in a single API query? I couldn't tell if /find or /search was appropriate.
2. If it's not possible to get this in a single API query, is my sequence correct? GET /options/JobOrder followed by as many GET /entity/JobOrder calls as required (since it supports multiple IDs)
3. I expect at some point I will want to do something more advanced than "Get all the jobs available in the Bullhorn system" and will likely want to filter for certain types of jobs or candidates. Knowing this, is some other strategy more appropriate now? e.g. a /find or /search with some "find all" options today which can be more specific later?

Thank you for your assistance.
dwellmanhp
User
Posts: 5
Joined: Tue May 18, 2021 4:41 pm

Re: Obtaining Job and Company information

Post by dwellmanhp »

I may have answered my own question, but could you please let me know if my reasoning is correct?

I can use the /search API like so:

Code: Select all

GET /search/JobOrder?query=isOpen:true&fields=id,title,clientCorporation&sort=-dateAdded
In this case, a simple first step listed above would be to find all JobOrders with isOpen set to true, then specify the fields to get, including the clientCorporation. I get a Lucene search score back, but I'm assuming that since I'm searching on a a boolean, it's likely to have a 1.0 score most of the time.

However, I see that `isOpen` is a nullable field - does this mean I should have different search criteria to find all current jobs? I added a sort of "reverse dateAdded" to ensure I get the most recent jobs. I expect to only search for 300 jobs at most in the beginning, and get more if I need, or add more search criteria to reduce the total number of jobs I'd find.

Thank you for your advice.
dwellmanhp
User
Posts: 5
Joined: Tue May 18, 2021 4:41 pm

Re: Obtaining Job and Company information

Post by dwellmanhp »

Here was my solution in case this is helpful to future readers:

I used the search string described in this tutorial https://bullhorn.github.io/Creating-a-Submission/
Here is a sample REST call where we search for jobs that are open, not deleted, and not archived
The query string for that is:

Code: Select all

GET /search/JobOrder?query=isOpen:1 AND isDeleted:0 AND NOT status:archive&...
Post Reply