Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic Technology Ltd. All rights reserved.
Switch to light modeSwitch to dark mode
APIs / HR recruiting / Bullhorn Resume Parsing API
Bullhorn Resume Parsing API logo

Bullhornstaffing Bullhorn Resume Parsing API

Agent-ready OpenAPI document · curated by JenticHR recruitingRecruiting Atsoauth210 EndpointsREST

Know of an official OpenAPI document? Contribute it →

For Agents

Parse resumes and create Bullhorn ATS candidates with education, work history, skills, and file attachments via the bullhornstaffing.com REST host.

Use for: I need to parse a resume into a Bullhorn candidate, Create a Bullhorn candidate from a parsed CV, Retrieve the candidate I just created by ID, Add a previous role to a candidate's work history

Not supported: Does not handle job postings, interview scheduling, or payroll - use for resume parsing and candidate creation in Bullhorn only.

Jentic publishes the only available OpenAPI specification for Bullhorn Resume Parsing API, keeping it validated and agent-ready. The Bullhorn Resume Parsing API turns inbound resume documents into structured Bullhorn candidate records and lets recruiting tools enrich those candidates with education history, work history, primary skills, and original file attachments. The API runs against Bullhorn's per-corporation REST host and uses Bullhorn's standard OAuth 2.0 authorization-code flow. It is the same surface published under the bullhorn.github.io vendor entry, scoped to the candidate intake path.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the Bullhorn Resume Parsing API to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Bullhorn Resume Parsing API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.

Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.

1

Step 1: Jentic One Host machine

# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fbullhornstaffing.com%2Fbullhornstaffing" | sh
2

Step 2: Agent machine

# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fbullhornstaffing.com%2Fbullhornstaffing" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.

Capabilities

What an agent can do with Bullhorn Resume Parsing API.

Parse a resume document into a Bullhorn candidate via /resume/parseToCandidate

Create a candidate entity in the Bullhorn ATS

Retrieve a candidate by ID after creation

Attach education and work history records to a candidate

Read a single work history record by ID

Add primary skills to a candidate from the Bullhorn skill taxonomy

Attach the original resume file to a candidate and list candidate files

Use Cases

Patterns agents use Bullhorn Resume Parsing API for, with concrete tasks.

★ Resume to candidate pipeline

Receive a resume by email or upload, parse it through /resume/parseToCandidate, and persist the resulting candidate in the Bullhorn ATS. The pipeline ends with the original document attached to the candidate so recruiters can review the source. Suitable for staffing agencies that handle steady inbound resume volume and want to skip manual data entry.

Parse a resume with POST /resume/parseToCandidate, create the candidate via PUT /entity/Candidate, then attach the file with PUT /file/Candidate/{candidateId}/raw.

Candidate profile enrichment

After creating a candidate from a parsed resume, attach the structured education and work history records and assign primary skills. The /entity/CandidateWorkHistory endpoint also supports retrieving a single record by ID, useful for verification before downstream steps such as outreach.

For candidate 12345, PUT /entity/CandidateEducation per school, PUT /entity/CandidateWorkHistory per role, then PUT /entity/Candidate/12345/primarySkills/{skillIds} with matched skill IDs.

Resume document retention

Keep the original resume binary attached to the Bullhorn candidate record for compliance and audit purposes. The file attachment endpoint stores the raw document, and the entityFiles endpoint confirms what is on the candidate. This is a common requirement in regulated staffing verticals where source documents must be retrievable.

Attach the source PDF to candidate 12345 via PUT /file/Candidate/12345/raw and verify with GET /entityFiles/Candidate/12345.

AI agent recruiting via Jentic

An AI assistant can take a resume from a recruiter's inbox, call the Bullhorn parse and create operations through Jentic, and reply with the new candidate ID - without holding raw OAuth credentials. Jentic isolates Bullhorn refresh tokens and corpToken values so the agent only sees structured operation responses.

Search Jentic for 'parse a resume into Bullhorn', load the parseToCandidate schema, execute with the resume bytes, and report the new candidate ID.

Key Endpoints

10 endpoints — jentic publishes the only available openapi specification for bullhorn resume parsing api, keeping it validated and agent-ready.

METHOD

PATH

DESCRIPTION

POST

/resume/parseToCandidate

Parse a resume into candidate data

PUT

/entity/Candidate

Create a candidate entity

GET

/entity/Candidate/{candidateId}

Retrieve a candidate

PUT

/entity/CandidateWorkHistory

Create a work history record

GET

/entity/CandidateWorkHistory/{workHistoryId}

Retrieve a work history record

PUT

/entity/Candidate/{candidateId}/primarySkills/{skillIds}

Add primary skills to a candidate

PUT

/file/Candidate/{candidateId}/raw

Attach a resume file to a candidate

GET

/entityFiles/Candidate/{candidateId}

List files on a candidate

POST

/resume/parseToCandidate

Parse a resume into candidate data

PUT

/entity/Candidate

Create a candidate entity

GET

/entity/Candidate/{candidateId}

Retrieve a candidate

PUT

/entity/CandidateWorkHistory

Create a work history record

GET

/entity/CandidateWorkHistory/{workHistoryId}

Retrieve a work history record

PUT

/entity/Candidate/{candidateId}/primarySkills/{skillIds}

Add primary skills to a candidate

PUT

/file/Candidate/{candidateId}/raw

Attach a resume file to a candidate

GET

/entityFiles/Candidate/{candidateId}

List files on a candidate

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Setup

Wiring Bullhorn resume parsing by hand means running its OAuth 2.0 flow, resolving the per-user corpToken into the rest-services base path, and refreshing the access token yourself. Through Jentic you install once, import the Bullhorn Resume Parsing API from the API Directory, store the credentials once, and your agent calls it.

Permission scoping

Permission scoping

Bullhorn puts the candidate id in the URL path (/entity/Candidate/{candidateId}/...), so a rule can pin your agent to one candidate: it can parse a resume and read or update that candidate's work history and skills and nothing else. You choose the operations it may call, so it can create and enrich a candidate without being able to reach unrelated entities unless you add them.

Credential management

Credential isolation

Your Bullhorn OAuth refresh token and corpToken are stored once, encrypted, by your own Jentic One instance, and only a scoped, short-lived access token is injected at execution time. The long-lived credentials never enter the agent's prompt, logs, or context.

Intent-based discovery

Intent-based discovery

Agents search Jentic by intent such as 'create a Bullhorn candidate' or 'parse a resume', and Jentic returns the matching Bullhorn operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Alternative

Bullhorn Resume Parsing (bullhorn.github.io)

→

Same Bullhorn surface published under the bullhorn.github.io vendor entry.

Use whichever vendor entry your discovery layer references; both target the same Bullhorn REST host.

Alternative

Greenhouse Harvest API

→

Greenhouse Harvest covers the candidate and application surface for Greenhouse-based hiring teams.

Pick Harvest when the customer runs Greenhouse instead of Bullhorn.

Alternative

Workable API

→

Workable ATS API for candidates, jobs, and hiring stages.

Pick Workable when the customer is on Workable; Workable does not expose a resume parser equivalent.

Complementary

Lever API

→

Lever recruiting API for organisations running multiple ATS systems alongside Bullhorn.

Use Lever in parallel when candidates need to be mirrored across both systems.

FAQs

Specific to using Bullhorn Resume Parsing API through Jentic.

Why is there no official OpenAPI spec for Bullhorn Resume Parsing API?

Bullhorn does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Bullhorn Resume Parsing API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

What authentication does the Bullhorn Resume Parsing API use?

It uses OAuth 2.0 authorization-code flow with auth and token URLs at https://auth.bullhornstaffing.com/oauth/authorize and /oauth/token. Each request runs against a per-corporation REST host that includes your corpToken in the path. Jentic stores the refresh token and corpToken in the vault and issues short-lived access tokens per call.

Can I retrieve a single work history record after creating it?

Yes. GET /entity/CandidateWorkHistory/{workHistoryId} returns a previously created work history record so you can verify the data before chaining further calls.

How do I attach the original resume file to a candidate?

PUT /file/Candidate/{candidateId}/raw accepts the raw binary and stores it as a candidate attachment. Confirm the upload with GET /entityFiles/Candidate/{candidateId}, which returns the file list for that candidate.

What are the rate limits for the Bullhorn Resume Parsing API?

The OpenAPI spec does not declare explicit limits. Bullhorn applies per-corporation REST throttles documented in their developer portal - implement 429 retries with exponential backoff for batch resume imports.

How do I parse a resume with Bullhorn through Jentic?

Run `pip install jentic`, then search for 'parse a resume into Bullhorn'. Jentic returns the parseToCandidate operation, you load its schema, and execute the call with the resume bytes - credential handling stays inside your Jentic One instance.

Can I limit what my agent is allowed to do with the Bullhorn Resume Parsing API?

Yes. Because you run Jentic One yourself, your own rules decide which Bullhorn operations and credentials the agent may use, so you can allow it to parse a resume and create a candidate while blocking everything else. Bullhorn puts the candidate id in the URL path, such as /entity/Candidate/{candidateId}/primarySkills/{skillIds}, so a rule can pin the agent to a single candidate and let it read or update only that candidate's work history and skills. It cannot reach unrelated Bullhorn entities unless you add those operations to what it is permitted to call.

GET STARTED

Start building with Bullhorn Resume Parsing API

Explore with Jentic One
View OpenAPI Document