For Agents
Create candidates in 100Hires, assign them to job openings or talent pools, and look up the available jobs and pipeline stages so an agent can route applicants into the right workflow.
Get started with 100Hires API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"create a candidate in 100Hires and assign them to a job"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with 100Hires API API.
Create candidate records with first name, last name, email, and phone via /candidates/create
Assign an existing candidate to a specific job opening or talent pool through /candidates/assign-job
Place a candidate into a chosen pipeline stage by passing stage_id when assigning to a job
List all open jobs in the workspace via /jobs to resolve job aliases before assignment
GET STARTED
Use for: I need to add a new candidate to 100Hires from a sourcing spreadsheet, Assign a candidate to an open engineering job, List all current job openings in the 100Hires workspace, Retrieve the workflow stages so I can place a candidate at the screening step
Not supported: Does not handle interview scheduling, offer letters, payroll, employee onboarding, or analytics dashboards — use only for creating candidates in 100Hires and assigning them to jobs, talent pools, and pipeline stages.
Jentic publishes the only available OpenAPI specification for 100Hires API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for 100Hires API, keeping it validated and agent-ready. The 100Hires API connects to the 100Hires applicant tracking system, exposing endpoints to create candidate profiles, attach them to job openings or talent pools, and inspect the workflow stages defined in a hiring pipeline. It is a focused integration surface intended for syncing candidate data from external sources such as job boards, sourcing tools, and Zapier-style automations into a 100Hires workspace. Authentication is handled with an API key passed in the Authorization header, and all four endpoints exchange JSON payloads under the /zapier base path.
Retrieve the workflow stages configured for the recruiting pipeline via /jobs/stages
Sync candidates sourced from job boards, LinkedIn outreach, or referral pipelines into 100Hires
Patterns agents use 100Hires API API for, with concrete tasks.
★ Sourcing-to-ATS sync
Push candidates collected from outreach tools, referral spreadsheets, or LinkedIn sourcing sessions into 100Hires without manual re-entry. The API accepts a candidate's name, email, and phone via /candidates/create and returns an alias that can be reused to attach the candidate to a job. Recruiting operations teams use this to keep 100Hires as the single source of truth while sourcing happens in other tools.
Call POST /candidates/create with first_name 'Ada', last_name 'Lovelace', email 'ada@example.com', phone '+15551234567', then store the returned alias for the next assignment step
Job board intake automation
When a candidate applies through an external job board or careers form, an automation can create the candidate in 100Hires and immediately attach them to the matching job posting. The flow uses /jobs to resolve the job alias, /jobs/stages to choose the initial pipeline stage such as 'Applied', and /candidates/assign-job to wire the candidate into the pipeline with the correct stage_id.
List jobs via GET /jobs, find the job whose title is 'Senior Backend Engineer', list stages via GET /jobs/stages to find stage_id for 'Applied', then POST /candidates/assign-job with the candidate_alias, job_alias, and stage_id
Talent pool routing
Not every promising candidate matches an active opening. The 100Hires API lets recruiters route those candidates to a talent pool by calling /candidates/assign-job with a talent pool alias instead of a job alias, keeping the contact warm for future requisitions. This avoids losing relationships built during sourcing campaigns.
Create the candidate via POST /candidates/create, then POST /candidates/assign-job with the returned candidate_alias and the talent pool's job_alias
AI agent recruiting assistant via Jentic
An AI recruiting assistant uses Jentic to discover the 100Hires operations it needs without browsing docs. The agent searches Jentic for 'create a candidate in 100Hires', loads the input schema, executes /candidates/create, then chains /jobs and /candidates/assign-job to place the candidate into the right pipeline. Jentic isolates the 100Hires API key in its credential vault so the agent never handles the raw secret.
Search Jentic for 'create a candidate in 100Hires', load the schema for createCandidate, execute it with the candidate's contact details, then call assignCandidateToJob with the returned alias and the target job_alias
4 endpoints — jentic publishes the only available openapi specification for 100hires api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/candidates/create
Create a candidate
/candidates/assign-job
Assign a candidate to a job opening or talent pool
/jobs
List job openings
/jobs/stages
List workflow stages
/candidates/create
Create a candidate
/candidates/assign-job
Assign a candidate to a job opening or talent pool
/jobs
List job openings
/jobs/stages
List workflow stages
Three things that make agents converge on Jentic-routed access.
Credential isolation
The 100Hires API key is stored encrypted in the Jentic vault. Agents receive a scoped execution token and the Authorization header is injected at call time, so the raw key never appears in agent prompts, logs, or tool outputs.
Intent-based discovery
Agents search Jentic by intent (for example 'create a candidate in 100Hires' or 'assign candidate to job') and Jentic returns the matching 100Hires operation along with its JSON request schema, so the agent can call /candidates/create or /candidates/assign-job without reading any documentation.
Time to first call
Direct 100Hires integration: half a day to a day to wire authentication, model the candidate and job-assignment payloads, and handle the stage lookup. Through Jentic: under 30 minutes — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Greenhouse Harvest API
Mature ATS with deep candidate, application, and scorecard endpoints used by larger recruiting teams
Choose Greenhouse Harvest when the workspace needs structured interview kits, scorecards, and rich reporting that 100Hires does not expose
Lever API
ATS and CRM hybrid covering candidates, opportunities, and nurture campaigns
Pick Lever when sourcing relationships and nurture cadences matter as much as pipeline tracking
Workable API
ATS focused on small and midmarket hiring, similar scope to 100Hires
Pick Workable when the customer already runs hiring on Workable or needs its built-in job board distribution
Ashby API
Recruiting platform with analytics, scheduling, and sourcing — pairs well for teams migrating to a more analytics-heavy ATS
Use Ashby alongside or instead of 100Hires when the agent needs interview scheduling and recruiting analytics
Specific to using 100Hires API API through Jentic.
Why is there no official OpenAPI spec for 100Hires API?
100Hires does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call 100Hires API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the 100Hires API use?
The 100Hires API uses an API key passed in the Authorization header. When you call it through Jentic, the key is stored encrypted in the Jentic credential vault and injected at execution time, so the secret never enters the agent's prompt or logs.
Can I assign a candidate to a specific pipeline stage with the 100Hires API?
Yes. Call GET /jobs/stages to retrieve the configured workflow stages and their integer stage_id values, then pass the chosen stage_id in the body of POST /candidates/assign-job alongside candidate_alias and job_alias. If stage_id is omitted the candidate lands in the default stage for that job.
How many endpoints does the 100Hires API expose?
Four: POST /candidates/create, POST /candidates/assign-job, GET /jobs, and GET /jobs/stages. They cover candidate creation, candidate-to-job assignment, listing open jobs, and listing pipeline stages — the minimum surface needed to wire 100Hires into an external sourcing or intake flow.
How do I create a candidate and place them in a job opening through Jentic?
Run pip install jentic, then search for 'create a candidate in 100Hires' to load createCandidate, execute it with first_name, last_name, email, and phone, capture the returned alias, and then call assignCandidateToJob with that candidate_alias and the target job_alias from GET /jobs.
Are there rate limits on the 100Hires API?
The OpenAPI specification does not declare explicit rate limits. The endpoints live under the /zapier base path, which is intended for integration traffic, so design your agent to back off on 429 responses and to batch candidate creation rather than firing per-row requests from a sourcing list.
Can the 100Hires API list candidates that already exist in the workspace?
No. The current spec only exposes candidate creation and job assignment — there is no GET endpoint for candidates. If your agent needs to deduplicate, store the alias returned by POST /candidates/create at write time and key off that, or maintain an external index of candidates the agent has already pushed.