Skip to main content
Stay up to date with every change to the Hirempire API. Breaking changes are marked clearly.
New
Expanded response fields, partial updates, job source URL endpoints
Two follow-up additions on top of the breaking-changes release earlier this month.

New: Job source URL endpoints

Each source object includes:
source_url is the publicly shareable link for that source. Visits to that URL increment the visits counter — useful for attribution.

Expanded response fields

Many fields were previously available in the database but not exposed. They are now included in responses without changing existing field names.Jobs (GET /v1/jobs, GET /v1/get-job) now include: public_slug, company_logo_url, department, industry, career_level, full salary breakdown (salary_type, salary_min, salary_max, salary_fixed), and a sources object with each source’s tracking URL. GET /v1/get-job additionally includes questions (the application form configuration: built-in fields toggles plus custom per-job questions).Candidates (GET /v1/candidates, GET /v1/get-candidate, GET /v1/job-candidates) now include: github_url, cover_letter, languages, custom_answers (answers to the job’s questions), tags, pool_stage, location_country, and the full AI screening breakdown (ai_skills_match, ai_experience_match, ai_location_match, plus linkedin_matching). The single-candidate endpoint additionally returns linkedin_data, github_data, and github_evaluation.Webhooks (GET /v1/webhooks) now include updated_at alongside created_at.

Partial updates: PATCH endpoints accept more fields

PATCH /v1/update-job now accepts any subset of: job_title, job_description, department, industry, job_country, city, workplace, job_type, career_level, salary, currency, salary_period, hide_salary, questions, status. Only the fields you send are updated. Status casing rules (Pendingdraft, Hiredclosed) are unchanged.PATCH /v1/update-candidate now accepts: status, tags, pool_stage (cold/warm/hot/not_interested), note_to_candidate.POST /v1/add-job now accepts two new optional body fields: industry and questions. public_slug is also optional — auto-generated from the title if not provided.
Breaking
Applicants renamed to Candidates, status enums, webhook paths, scopes removed
A workspace-wide breaking-changes release. All clients integrating against the Applicants endpoints, scoped tokens, or capitalized status values need to update.

Applicants renamed to Candidates

The applications table now stores three candidate sub-types — applicant, prospect, and upload — so the public API has been renamed from “applicants” to “candidates” to reflect this. Every candidate object now includes a type field, and GET /v1/candidates accepts an optional ?type= filter.A new endpoint GET /v1/get-candidate?candidate_id= was added — single-candidate fetches were previously undocumented.

Webhook path changes

GET /v1/webhooks and POST /v1/create-webhook are unchanged.Multiple webhooks per workspace are now allowed. The previous one-per-workspace unique constraint has been dropped.

Lowercase status enums

Status values are now lowercase in both input and output.
  • Job status — input accepts Pending Active Paused Hired Closed (capitalized values still accepted for backwards compatibility) and normalizes them. Pending maps to draft. Hired is accepted as a deprecated alias for closed. Output is always lowercase: one of draft active paused closed.
  • Candidate status — canonical lowercase values: applied screening phone_screen interview technical offer hired rejected withdrawn on_hold shortlisted qualified uploaded. The previous 7-value capitalized list (Applied / Reviewed / Accepted / Scheduled / Met / Hired / Rejected) is no longer accepted.
  • job_modeonsite remote hybrid (note: onsite, no hyphen).
  • job_typefull-time part-time contract freelance internship temporary project-based.
  • career_leveljunior mid-level senior team-leader manager director vp c-level.

Scopes removed

The scope system has been removed entirely. Any valid API token can call any endpoint — there is no Token is missing required scope error any more. The developers/scopes page has been deleted from the documentation. Existing tokens continue to work.

Other changes

  • job_location in job responses is now formatted as "City, Country" (the city portion is omitted if the job has no city).
  • Companies are soft-deleted using an archived_at timestamp. No public-facing behavior change for DELETE /v1/delete-company — the response shape is the same.
New
Google Jobs sync field
Jobs created via the API now include a google_jobs_indexed boolean in the response, indicating whether the listing has been submitted to Google Jobs indexing.
New
Webhook event types expanded
Five new webhook event types are now available:See the Event Types reference for full payloads.
New
Create Company endpoint
Added POST /companies — create a company directly via the API. See Create Company for the full schema.
New
Applicant status values expanded
The status field on applicants now supports two additional values:
  • scheduled — interview has been scheduled
  • met — interview has been completed
These align with the pipeline stages available in the Hirempire UI and MCP Server.
New
Webhooks — real-time event delivery
The Hirempire Webhooks API is now available. Subscribe to workspace events and receive instant POST notifications to your endpoint.Supported events at launch:Endpoints: POST /webhooks (create), GET /webhooks (list), PUT /webhooks/:id (update).Each registered webhook goes through a challenge verification step — your endpoint must echo back the challenge token before delivery begins.See the Webhooks reference for full setup instructions and payload schemas.
New
Rate limits introduced
API rate limits are now enforced per plan. Exceeding the limit returns HTTP 429 Too Many Requests.
New
Bearer token scopes
API tokens now support granular scopes. When generating a token from Settings → Integrations → API Tokens, you choose which resource groups the token can access:
  • Jobs — read and write job postings
  • Applicants — read and update applicant records
  • Companies — create and read company profiles
Requests that use a token without the required scope return:
New
Initial API launch — Jobs and Applicants endpoints
The Hirempire REST API launched with full Jobs and Applicants coverage.Jobs endpoints:Applicants endpoints:Applicant status values at launch: new, reviewed, accepted, rejectedAll endpoints require Bearer token authentication. See Get Started for base URL, authentication, and response format details.