---
title: "Create Time Off Request"
method: POST
path: "/hris/time-off-requests"
tags: ["Time Off Requests"]
---

# Create Time Off Request

`POST /hris/time-off-requests`

Create Time Off Request

## Query parameters

- `raw` boolean

## Headers

- `x-apideck-consumer-id` string, required
- `x-apideck-app-id` string, required
- `x-apideck-service-id` string

## Request body

- TimeOffRequest
  - `id` string — A unique identifier for an object.
  - `employee_id` string, nullable — ID of the employee
  - `policy_id` string, nullable — ID of the policy
  - `status` 'requested' | 'approved' | 'declined' | 'cancelled' | 'deleted' | 'other', nullable — The status of the time off request.
  - `description` string, nullable — Description of the time off request.
  - `start_date` string, nullable — The start date of the time off request.
  - `end_date` string, nullable — The end date of the time off request.
  - `request_date` string, nullable — The date the request was made.
  - `request_type` 'vacation' | 'sick' | 'personal' | 'jury_duty' | 'volunteer' | 'bereavement' | 'other', nullable — The type of request
  - `approval_date` string, nullable — The date the request was approved
  - `units` 'days' | 'hours' | 'other', nullable — The unit of time off requested. Possible values include: `hours`, `days`, or `other`.
  - `amount` number, nullable — The amount of time off requested.
  - `day_part` string, nullable — The day part of the time off request.
  - `notes` object
    - `employee` string, nullable
    - `manager` string, nullable
  - `custom_mappings` CustomMappings, nullable — When custom mappings are configured on the resource, the result is included here.
  - `updated_by` string, nullable — The user who last updated the object.
  - `created_by` string, nullable — The user who created the object.
  - `updated_at` string, date-time, nullable — The date and time when the object was last updated.
  - `created_at` string, date-time, nullable — The date and time when the object was created.
  - `pass_through` object[] — The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
    - `service_id` string, required — Identifier for the service to which this pass_through should be applied.
    - `operation_id` string — Optional identifier for a workflow operation to which this pass_through should be applied. This is useful for Unify calls that are making more than one downstream request.
    - `extend_object` object — Simple object allowing any properties for direct extension.
    - `extend_paths` object[] — Array of objects for structured data modifications via paths.
      - `path` string, required — JSONPath string specifying where to apply the value.
      - `value` unknown, required
  - `policy_type` string — The policy type of the time off request

## Response `201`

TimeOffRequests

- CreateTimeOffRequestResponse
  - `status_code` integer, required — HTTP Response Status Code
  - `status` string, required — HTTP Response Status
  - `service` string, required — Apideck ID of service provider
  - `resource` string, required — Unified API resource name
  - `operation` string, required — Operation performed
  - `data` UnifiedId, required — A object containing a unique identifier for the resource that was created, updated, or deleted.
    - `id` string, required — The unique identifier of the resource
  - `_raw` Raw, nullable — Raw response from the integration when raw=true query param is provided

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `402` — Payment Required
- `404` — The specified resource was not found
- `422` — Unprocessable
- `default` — Unexpected error

---

[API](https://skmtc.net/apideck-libraries/apis/hris-api.md) · [All operations](https://skmtc.net/apideck-libraries/apis/hris-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/apideck-libraries/hris-api/versions/e16521ae2068/schema)
