---
title: "List departments"
method: GET
path: "/v3/departments"
tags: ["Departments"]
---

# List departments

`GET /v3/departments`

## Request

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

Departments are the organizational units jobs are assigned to (e.g. `Engineering`, `Marketing`). Each organization maintains its own department tree, with `parent_id` linking a department to its immediate parent and `null` marking top-level departments. Use this endpoint to discover department ids and `external_id` mappings before referencing them on jobs, candidate filters, or custom field scoping.

## 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
- `fields` string[]
- `parent_id` integer
- `external_id` string

## Response `200`

Successful

- object[]
  - `id` integer
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `name` string: Display name of the department (e.g. `Engineering`, `Marketing`).
  - `parent_id` integer, nullable: Id of the parent department in the organization's department tree. `null` for top-level departments. References another `/v3/departments` row.
  - `external_id` string, nullable: Partner-supplied identifier for the department, typically the matching id from an HRIS or other external system. Free-form string and `null` when no external id has been set.
  - `external_parent_id` string, nullable: `external_id` of the parent department, for partners that key the department hierarchy by external id rather than Greenhouse id. Mirrors the `external_parent_id` accepted on create and update. `null` for top-level departments and when the parent has no external id set.

---

[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)
