---
title: "Get all departments"
method: GET
path: "/hris/departments"
tags: ["Departments"]
---

# Get all departments

`GET /hris/departments`

## Request

- Base URL: `https://{company}.keka.com/api/v1`
- URL: `https://{company}.keka.com/api/v1/hris/departments`
- Auth: OAuth 2
  - Implicit: `https://login.keka.com/connect/authorize`

Get all departments

## Query parameters

- `departmentIds` string
- `lastModified` string, date-time
- `pageNumber` integer
- `pageSize` integer

## Response `200`

OK

- APIDepartmentViewPagedResponse: class represents paged response.
  - `succeeded` boolean: Gets or sets a value indicating whether this Keka.API.Web.Core.Response`1 is succeeded.
  - `message` string, nullable: Gets or sets the message.
  - `errors` string[], nullable: Gets or sets the errors.
  - `data` APIDepartmentView[], nullable: Gets or sets the data.
    - `id` string, nullable
    - `parentId` string, nullable
    - `name` string, nullable
    - `description` string, nullable
    - `isArchived` boolean
    - `departmentHeads` EmployeeLookup[], nullable
      - `id` string, nullable
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `email` string, nullable
  - `pageNumber` integer: Gets or sets the page number.
  - `pageSize` integer: Gets or sets the size of the page.
  - `firstPage` string, uri, nullable: Gets or sets the first page.
  - `lastPage` string, uri, nullable: Gets or sets the last page.
  - `totalPages` integer: Gets or sets the total pages.
  - `totalRecords` integer: Gets or sets the total records.
  - `nextPage` string, uri, nullable: Gets or sets the next page.
  - `previousPage` string, uri, nullable: Gets or sets the previous page.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/keka/apis/core-hr.md) - [All operations](https://skmtc.dev/keka/apis/core-hr/llms.txt) - [OpenAPI document](https://skmtc.dev/keka/apis/core-hr/revisions/d4f1d9facc7b?raw)
