# Pull your Bullhorn placements and jobs into your systems

> Read your Bullhorn placements, jobs and submissions with one API call each, with Status, Start Date, Pay Rate and Job Owner. Or have a workflow send your back office the placements starting each week before payroll and onboarding begin.

Page: https://fous.com/automate/bullhorn
Updated: 2026-11-12

Works with your own Bullhorn account. Fous is an independent product.

## What you can build on Bullhorn

### Get placements

Reads the Placements list view with each placement's Status, Start Date, End Date, Employment Type, Job Title, Company, Pay Rate and Salary.

- Takes: Start date from and to, or end date from and to, Status (optional)
- Returns: Placement ID, candidate ID, job title, company, status, employment type, start date, end date, pay rate, salary, owner ID

### Get open jobs

Reads the Jobs list view, with each job's Job ID, Job Title, Job Status and Job Owner, for the Job Status you name.

- Takes: Job Status (optional), Job Owner (optional)
- Returns: Job ID, job title, company, job status, employment type, job owner, date added

### Get submissions for a job

Reads the Submissions list for one job: each candidate submitted, the submission status and when it was added.

- Takes: Job ID
- Returns: Submission ID, candidate, job title, client contact, status, date added, owner

### Update a placement's status and end date

Opens one placement record, changes its Status and End Date to the values you give, and saves it.

- Takes: Placement ID, status, end date
- Returns: Placement ID, status, end date, saved at

## Automate Bullhorn with a workflow

A [workflow](/product/workflows) runs your methods as one process, with nobody at the screen. A schedule or a call from your own system starts it, the steps run in order, and the result arrives in your inbox or in the systems you already use.

### Placements starting next week, to payroll and onboarding

Starts: Every Friday at 14:00

1. Get the placements with a Start Date in the coming Monday to Sunday.
2. Keep the ones not sent on the last run.
3. Post placement ID, candidate ID, company, start date, employment type and pay rate to your payroll or HR webhook.

### Contract placements ending in the next 14 days

Starts: Every weekday at 8:00

1. Get the placements with an End Date in the next 14 days.
2. Keep the contract placements.
3. Email you the list, grouped by placement owner, so each owner can raise an extension in time.

### Weekly open jobs and their submissions

Starts: Every Monday at 7:30

1. Get the open jobs.
2. For each job, get its submissions and count those added in the last 7 days.
3. Email you one table: job, company, job owner and new submissions, with jobs at zero first.

You can run a workflow by hand on every plan, Free included. Schedules and webhook triggers come with the paid plans, from $29 a month.

## Once built, one call from your code

Once you have built a [method](/product/methods), it is one POST to /v1/runs from your backend, or a tool an AI agent calls over MCP. This is what “Get placements” would look like.

Example request:

```
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "bullhornstaffing.com/get_placements",
    "input": {
      "start_date_from": "2026-11-16",
      "start_date_to": "2026-11-22"
    }
  }'
```

Example response:

```
{
  "status": "completed",
  "data": {
    "placements": [
      {
        "placement_id": "48213",
        "candidate_id": "30571",
        "job_title": "Warehouse Supervisor",
        "company": "Northwind Logistics",
        "status": "Approved",
        "employment_type": "Contract",
        "start_date": "2026-11-16",
        "end_date": "2027-05-14",
        "pay_rate": 31.5,
        "salary": null,
        "owner_id": "112"
      }
    ],
    "count": 1
  }
}
```

An example with invented data, not a ready-made endpoint. The method exists in your organization once you build it, and its name, inputs and fields follow your request.

## Bullhorn’s own options

Bullhorn has a REST API, but it is not self-serve. API access comes with the Front Office Growth or Enterprise editions, and a vendor building for you must sign Bullhorn's API Access Agreement, pass a security assessment and pay an annual platform fee. A customer does not get its API key to hand to a vendor without that contract.

| Option | What it covers | What it takes |
| --- | --- | --- |
| Bullhorn REST API | Bullhorn's records, such as jobs, submissions and placements, read and written from code. | Front Office Growth or Enterprise, OAuth keys by support ticket. Vendors: an agreement, a security assessment, an annual fee for 200,000 calls a month. |
| Export as CSV | The rows you select in a list view, with the columns that view shows, as an Excel-compatible CSV file. | Admin rights by default. Limits per export range from 5,000 to 20,000 records by entity type. |
| Bullhorn by hand | The Candidates, Contacts, Jobs, Submissions, Placements and Companies list views and their records. | A Bullhorn user account from your company's subscription. |

Read on November 12, 2026: [Bullhorn API access FAQs](https://www.bullhorn.com/bullhorn-api-access-faqs/), [Getting started with Bullhorn REST](https://bullhorn.github.io/Getting-Started-with-REST/), [Exporting data from Bullhorn](https://kb.bullhorn.com/ats/Content/BHATS/Topics/exportingDataFromBullhorn.htm).

## Signing in to Bullhorn

Bullhorn signs each person in with their own Bullhorn user credentials, and their user type decides how much they can export. With Fous you sign in once through Bullhorn's own sign-in with your own account: the login is sealed with AES-256, code and AI agents never see it, and an expired session is signed back in.

## Worth knowing

- **Exports are for Admins by default**: Only Admin users can export records unless an Admin grants it. Each export is capped by entity type at 5,000 to 20,000 records, and fewer columns let more records through.
- **The Submissions column multiplies an export**: On the Candidate list, the Submissions column exports the five most recent submissions for each record, which can stop a large export from finishing.
- **API keys come through a support ticket**: OAuth keys for the REST API are requested with a support ticket in the Bullhorn Resource Center. An access token lasts 10 minutes, and refresh tokens work only if Bullhorn has enabled them.

## More in HR: staffing and vendor management

- [e-staffing](https://fous.com/automate/e-staffing.md)
- [Upwork](https://fous.com/automate/upwork.md)
- [ShiftWise Flex](https://fous.com/automate/shiftwise-flex.md)
- [Beeline](https://fous.com/automate/beeline.md)
- [Magnit VMS](https://fous.com/automate/magnit-vms.md)
- [SAP Fieldglass](https://fous.com/automate/sap-fieldglass.md)
- [Workday VNDLY](https://fous.com/automate/workday-vndly.md)

Other industries: [CAQH Provider Data Portal](/automate/caqh-provider-data-portal), [PPL](/automate/ppl), [Money Claim Online](/automate/money-claim-online), [Lufthansa Cargo eServices](/automate/lufthansa-cargo-eservices), [Fidelity Plan Sponsor WebStation](/automate/fidelity-plan-sponsor-webstation), [Georgia Ports WebAccess](/automate/georgia-ports-webaccess).

## Frequently asked questions

### Does Bullhorn have an API?

Yes, a REST API, but not self-serve. It comes with the Front Office Growth or Enterprise editions, and OAuth keys are requested by support ticket. A vendor building on it must sign Bullhorn's API Access Agreement, pass a security assessment and pay an annual fee covering a sandbox and 200,000 API calls a month.

### Can I export placements from Bullhorn to Excel?

Yes, if you have export rights, which only Admins have by default. Select the rows in the Placements list, choose Selected, then Export as CSV, and Download Now when it is ready. Each export is limited to between 5,000 and 20,000 records, depending on the entity type.

### Why did my Bullhorn export not finish?

Often because of the columns. Bullhorn says fewer columns allow more records, and a Submissions column on the Candidate list exports the five most recent submissions for each record. Remove columns and export again.

### Is Fous affiliated with Bullhorn?

No. Fous is an independent product. You use it with your own Bullhorn account, and a method reads and does only what that account can.

Fous is an independent product: it is not affiliated with, endorsed by or sponsored by the operator of Bullhorn (Bullhorn). The name is used only to say which system this page is about. Something here wrong or out of date? Write to legal@fous.com.
