Keka HR Leave API

The Leave API from Keka HR — 4 operation(s) for leave.

Operations 5

GET /api/v1/time/leaverequests Get all leave requests #
POST /api/v1/time/leaverequests Create leave request #
GET /api/v1/time/leavetypes Get all leave types #
GET /api/v1/time/leavebalance Get All Leave Balance #
GET /api/v1/time/leaveplans Get All Leave Plans #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/keka-leave-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

keka-leave-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Keka HR Assets Leave API
  description: REST API for the Keka HR and payroll platform covering employee records, attendance, leave, payroll, expense management, performance, recruitment, professional services automation, helpdesk, background verification, and rewards.
  version: v1
  contact:
    url: https://developers.keka.com/
  license:
    name: Keka Terms of Service
    url: https://www.keka.com/terms-of-service
servers:
- url: https://{tenant}.keka.com/api/v1
  description: Keka HR API
  variables:
    tenant:
      default: your-company
      description: Your Keka tenant subdomain
security:
- oauth2:
  - kekaapi
tags:
- name: Leave
paths:
  /api/v1/time/leaverequests:
    get:
      operationId: get_all_leave_requests
      summary: Get all leave requests
      tags:
      - Leave
      responses:
        '200':
          description: Successful response
      description: '<p>This API is used for fetching list of all leave requests in the organization between from and to date. If both from and to are not specified, last 30 days records are returned. From date should be before to date. The difference between from and to date cannot be more than 90 days.</p>

        <h2 id="enumerated-values">Enumerated Values</h2>

        <div class="click-to-expand-wrapper is-table-wrapper"><table>

        <thead>

        <tr>

        <th>SessionType</th>

        <th>LeaveRequestStatus</th>

        </tr>

        </thead>

        <tbody>

        <tr>

        <td>0 = FirstHalf  <br />1 = SecondHalf</td>

        <td>0 = Pending  <br />1 = Approved  <br />2 = Rejected  <br />3 = Cancelled  <br />4 = InApprovalProcess</td>

        </tr>

        </tbody>

        </table>

        </div>'
    post:
      operationId: create_leave_request
      summary: Create leave request
      tags:
      - Leave
      responses:
        '200':
          description: Successful response
      description: '<p>This API is used for creating leave request against an employee. Create an leave request and returns leave request identifier.</p>

        '
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                employeeId: 444d61be-76c5-4f82-9107-31aa32a2f5df
                requestedBy: 444d61be-76c5-4f82-9107-31aa32a2f5df
                fromDate: '2023-11-03'
                toDate: '2023-11-03'
                fromSession: 0
                toSession: 1
                leaveTypeId: ABBE47B9-1AEF-4364-91E9-50EAD6C22E95
                reason: Health Issue
                note: casual Leave
  /api/v1/time/leavetypes:
    get:
      operationId: get_all_leave_types
      summary: Get all leave types
      tags:
      - Leave
      responses:
        '200':
          description: Successful response
      description: '<p>This API is used for fetching list of all leave types.</p>

        <h2 id="enumerated-values">Enumerated Values</h2>

        <div class="click-to-expand-wrapper is-table-wrapper"><table>

        <thead>

        <tr>

        <th>SessionType</th>

        <th>LeaveRequestStatus</th>

        </tr>

        </thead>

        <tbody>

        <tr>

        <td>0 = FirstHalf  <br />1 = SecondHalf</td>

        <td>0 = Pending  <br />1 = Approved  <br />2 = Rejected  <br />3 = Cancelled  <br />4 = InApprovalProcess</td>

        </tr>

        </tbody>

        </table>

        </div>'
  /api/v1/time/leavebalance:
    get:
      operationId: get_all_leave_balance
      summary: Get All Leave Balance
      tags:
      - Leave
      responses:
        '200':
          description: Successful response
  /api/v1/time/leaveplans:
    get:
      operationId: get_all_leave_plans
      summary: Get All Leave Plans
      tags:
      - Leave
      responses:
        '200':
          description: Successful response
components:
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 client credentials flow
      flows:
        clientCredentials:
          tokenUrl: https://login.keka.com/connect/token
          scopes:
            kekaapi: Access to Keka HR API