v1

latestOpenAPI 3.1.02026-07-261770816.7 KB
Applications

Create application

Create a new application for an existing candidate. The body accepts one of two shapes: a candidate application (requires candidate_id + job_id) places the candidate at the job's first interview stage (or initial_stage_id when supplied); a prospect application (requires candidate_id + prospect: true) creates a prospect, optionally attached to one or more jobs via job_ids, a prospect pool via prospect_pool_id + prospect_pool_stage_id, or prospective department/office. To create a candidate and their first application in a single call, use POST /v3/candidates with a nested application object.

post/v3/applications

Request body

OR

Response

Successful

idinteger
created_atstring date-time
updated_atstring date-time
agency_note_idinteger nullable

Id of the note created when the candidate was submitted by an agency, or null if the application did not come through an agency.

candidate_idinteger

Id of the candidate (person) this application belongs to.

coordinator_idinteger nullable

Id of the user assigned as coordinator on the application's job, or null when unassigned.

job_idinteger nullable

Id of the job this application is on. null for jobless prospect applications.

job_post_idinteger nullable

Id of the job post the candidate applied through, or null if the application was created internally rather than from a posted role.

recruiter_idinteger nullable

Id of the user assigned as recruiter on the application's job, or null when unassigned.

referrer_idinteger nullable

Id of the referrer who credited this application, or null if there was no referral. References a referrer, not a Greenhouse user.

source_idinteger nullable

Id of the source the application is attributed to (e.g. a job board, an event, an employee referral source). null if no source is set.

stage_idinteger nullable

Id of the interview stage the candidate is currently in for this application. null for prospect applications and applications in a terminal state.

job_interview_stage_idinteger nullable

Id of the job interview stage definition (see GET /v3/job_interview_stages) the candidate is currently in for this application. null for prospect applications and applications in a terminal state.

stage_namestring nullable

Display name of the candidate's current interview stage on this application.

status'rejected' | 'hired' | 'converted' | 'in_process'

Lifecycle status of the application. in_process for active candidates, rejected for rejected applications, hired once an offer is closed and the hire endpoint has fired, and converted for prospect applications that have been promoted to a candidate application via convert_to_candidate.

needs_decisionboolean nullable

true when the application is waiting on a hiring-team decision (scorecard completion, advance/reject, etc.) in its current stage.

prospectboolean

true for prospect applications (sourced candidates not yet attached to a single job), false for candidate applications on a specific job.

rejected_atstring date-time nullable

Timestamp the application was rejected, in ISO 8601. null for applications that have not been rejected.

last_activity_atstring date-time nullable

Timestamp of the most recent activity on this application (notes, emails, stage changes, etc.), in ISO 8601.

location_addressstring nullable

Free-form location string captured on the application (typically from the job post's location question).

prospective_job_idsinteger[]

For prospect applications, the ids of jobs the prospect is being considered for. Empty for non-prospect applications and for jobless prospects.

custom_fieldsobject nullable