---
title: "List applications"
method: GET
path: "/v3/applications"
tags: ["Applications"]
---

# List applications

`GET /v3/applications`

## Request

- Base URL: `https://harvest.greenhouse.io`
- URL: `https://harvest.greenhouse.io/v3/applications`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://auth.greenhouse.io/authorize`
    - Client credentials
    - Token URL: `https://auth.greenhouse.io/token` scopes: `harvest:applications:list`
  - HTTP bearer

Applications represent a candidate's journey on a specific job — the bridge between a candidate (person) and a job. Each candidate can have one application per job (and prospect applications can be jobless or attached to multiple prospective jobs). Scope the list with one of the parent-id arrays — `candidate_ids`, `job_ids`, `job_post_ids`, `source_ids`, `referrer_ids`, `stage_ids`, or `prospective_job_ids` — to filter by the matching foreign key. Pass `ids` directly to fetch specific applications by id (max 50 per request).

## Query parameters

- `cursor` string
- `per_page` integer
- `ids` integer[]
- `created_at` object
  - `gte` string, date-time
  - `lte` string, date-time
  - `gt` string, date-time
  - `lt` string, date-time
- `updated_at` object
  - `gte` string, date-time
  - `lte` string, date-time
  - `gt` string, date-time
  - `lt` string, date-time
- `candidate_ids` integer[]
- `job_ids` integer[]
- `prospective_job_ids` integer[]
- `job_post_ids` integer[]
- `source_ids` integer[]
- `referrer_ids` integer[]
- `stage_ids` integer[]
- `job_interview_stage_ids` integer[]
- `fields` string[]
- `status` 'rejected' | 'hired' | 'converted' | 'in_process' | 'active'
- `stage_name` string
- `custom_field_option_id` integer
- `last_activity_at` object
  - `gte` string, date-time
  - `lte` string, date-time
  - `gt` string, date-time
  - `lt` string, date-time
- `prospect` boolean

## Response `200`

Successful

- object[]
  - `id` integer
  - `created_at` string, date-time
  - `updated_at` string, date-time: Timestamp the application was last updated, in ISO 8601. Changes to candidate-level data (name, title, company, or last activity) also update it, so activity on one application usually moves this on all of the candidate's applications.
  - `agency_note_id` integer, 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_id` integer: Id of the candidate (person) this application belongs to.
  - `coordinator_id` integer, nullable: Id of the user assigned as coordinator on the application's job, or `null` when unassigned.
  - `job_id` integer, nullable: Id of the job this application is on. `null` for jobless prospect applications.
  - `job_post_id` integer, 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_id` integer, nullable: Id of the user assigned as recruiter on the application's job, or `null` when unassigned.
  - `referrer_id` integer, nullable: Id of the referrer who credited this application, or `null` if there was no referral. References a referrer, not a Greenhouse user.
  - `rejection_reason_id` integer, nullable: Id of the rejection reason selected for the application. References a `/v3/rejection_reasons` row scoped to the organization. `null` when the application was rejected without a reason, or has not been rejected.
  - `source_id` integer, 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_id` integer, 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_id` integer, 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_name` string, 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_decision` boolean, nullable: `true` when the application is waiting on a hiring-team decision (scorecard completion, advance/reject, etc.) in its current stage.
  - `prospect` boolean: `true` for prospect applications (sourced candidates not yet attached to a single job), `false` for candidate applications on a specific job.
  - `rejected_at` string, date-time, nullable: Timestamp the application was rejected, in ISO 8601. `null` for applications that have not been rejected.
  - `last_activity_at` string, date-time, nullable: Timestamp of recent activity for this application's candidate, in ISO 8601. Most activity (notes, emails, stage changes, etc.) on any of the candidate's applications updates this value on all of them, so it usually matches the candidate's `last_activity_at` rather than reflecting this application alone.
  - `location_address` string, nullable: Free-form location string captured on the application (typically from the job post's location question).
  - `answers` object[], nullable: Free-text answers the candidate provided on the job post application form. Each entry pairs the question text with the candidate's answer.
    - `question` string: Application-form question the candidate answered.
    - `answer` string: Candidate's free-text answer to the question.
  - `prospective_job_ids` integer[]: For prospect applications, the ids of jobs the prospect is being considered for. Empty for non-prospect applications and for jobless prospects.
  - `custom_fields` object, nullable

---

[API](https://skmtc.dev/greenhouse/apis/harvest-api.md) - [All operations](https://skmtc.dev/greenhouse/apis/harvest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/greenhouse/apis/harvest-api/revisions/822822e3f771?raw)
