Deel · Capability

Deel HRIS API — Time Off

Self-contained Naftiko capability for managing time-off policies, requests, and entitlements.

Deel HRIS API — Time Off is a Naftiko capability published by Deel, one of 20 capabilities the APIs.io network indexes for this provider. It bundles 3 operations across the GET and POST methods rooted at /v1/time-off.

Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Deel, HRIS, and Time Off.

Run with Naftiko DeelHRISTime Off

What You Can Do

GET
Listtimeoffrequests — List time-off requests.
/v1/time-off/requests
POST
Createtimeoffrequest — Submit time-off request.
/v1/time-off/requests
GET
Listtimeoffpolicies — List time-off policies.
/v1/time-off/policies

Capability Spec

hris-time-off.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Deel HRIS API — Time Off
  description: Self-contained Naftiko capability for managing time-off policies, requests, and entitlements.
  tags:
  - Deel
  - HRIS
  - Time Off
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    DEEL_API_TOKEN: DEEL_API_TOKEN
capability:
  consumes:
  - type: http
    namespace: hris-time-off
    baseUri: https://api.letsdeel.com/rest/v2
    description: Deel HRIS Time Off capability.
    resources:
    - name: time-off-requests
      path: /time-off/requests
      operations:
      - name: listTimeOffRequests
        method: GET
        description: List time-off requests.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
        inputParameters:
        - { name: person_id, in: query, type: string, required: false }
        - { name: status, in: query, type: string, required: false }
        - { name: from, in: query, type: string, required: false }
        - { name: to, in: query, type: string, required: false }
      - name: createTimeOffRequest
        method: POST
        description: Submit a time-off request.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
        inputParameters:
        - { name: body, in: body, type: object, required: true }
        - { name: Idempotency-Key, in: header, type: string, required: false }
    - name: time-off-policies
      path: /time-off/policies
      operations:
      - name: listTimeOffPolicies
        method: GET
        description: List time-off policies.
        outputRawFormat: json
        outputParameters:
        - { name: result, type: object, value: $. }
        inputParameters: []
    authentication:
      type: bearer
      value: '{{env.DEEL_API_TOKEN}}'
      placement: header
  exposes:
  - type: rest
    namespace: hris-time-off-rest
    port: 8080
    description: REST adapter for HRIS Time Off.
    resources:
    - path: /v1/time-off/requests
      name: time-off-requests
      description: REST surface for time-off requests.
      operations:
      - method: GET
        name: listTimeOffRequests
        description: List time-off requests.
        call: hris-time-off.listTimeOffRequests
        with: { person_id: rest.query.person_id, status: rest.query.status, from: rest.query.from, to: rest.query.to }
      - method: POST
        name: createTimeOffRequest
        description: Submit time-off request.
        call: hris-time-off.createTimeOffRequest
        with: { body: rest.body, Idempotency-Key: rest.header.idempotency_key }
    - path: /v1/time-off/policies
      name: time-off-policies
      description: REST surface for time-off policies.
      operations:
      - method: GET
        name: listTimeOffPolicies
        description: List time-off policies.
        call: hris-time-off.listTimeOffPolicies