---
title: "Read a request by id"
method: GET
path: "/requests/{id}"
tags: ["Requests"]
---

# Read a request by id

`GET /requests/{id}`

Read a request by id

## Path parameters

- `id` string, uuid, required

## Query parameters

- `locale` 'en' | 'de' | 'fr' | 'hu' | 'it' | 'pl' | 'pt' | 'ru' | 'es' | 'tr' | 'uk'

## Response `200`

Successful response

- object, nullable
  - `id` string, required
  - `createdAt` string, required
  - `updatedAt` string, required
  - `end` string, required
  - `start` string, required
  - `start_at` 'morning' | 'afternoon', required — For day-based leave types: whether the absence starts in the `morning` (the whole first day counts) or `afternoon` (only the second half of the first day). Ignored for hour-based leave types.
  - `end_at` 'lunchtime' | 'end_of_day', required — For day-based leave types: whether the absence ends at `lunchtime` (only the first half of the last day) or `end_of_day` (the whole last day counts). Ignored for hour-based leave types.
  - `leave_unit` 'days' | 'half_days' | 'hours' | 'minutes_30' | 'minutes_15' | 'minutes_10' | 'minutes_5' | 'minutes_1', required
  - `request_creator_member` object, nullable, required
    - `id` string, required
    - `custom_id` string, nullable, required
    - `name` string, nullable, required
    - `email` string, nullable, required
  - `leave_type` object, required
    - `name` string, required
    - `default_name` string, required
    - `id` string, required
    - `leave_unit` 'days' | 'half_days' | 'hours' | 'minutes_30' | 'minutes_15' | 'minutes_10' | 'minutes_5' | 'minutes_1', required
  - `approval_process` 'Linear_all_have_to_agree' | 'Linear_one_has_to_agree' | 'Parallel_all_have_to_agree' | 'Parallel_one_has_to_agree', required
  - `cancel_reason` string, nullable, required
  - `canceld_by_member` object, nullable, required
    - `id` string, required
    - `custom_id` string, nullable, required
    - `name` string, nullable, required
    - `email` string, nullable, required
  - `requester_member` object, nullable, required
    - `id` string, required
    - `custom_id` string, nullable, required
    - `name` string, nullable, required
    - `email` string, nullable, required
  - `take_from_allowance` boolean, required
  - `allowance_type` object, nullable, required
    - `id` string, required
    - `name` string, required
    - `default_name` string, required
    - `ignore_allowance_limit` boolean, required
    - `allowance_unit` 'days' | 'hours', required
  - `reason` string, nullable, required
  - `workday_absence_duration` number, required
  - `duration` number, required
  - `status` string, required
  - `canceld_date` string, nullable, required
  - `request_approvers` object[], required
    - `reason` string, nullable, required
    - `status` 'PENDING' | 'APPROVED' | 'DECLINED' | 'CANCELED' | 'APPROVED_BY_ANOTHER_MANAGER' | 'DECLINED_BY_ANOTHER_MANAGER' | 'CANCELED_BY_ANOTHER_MANAGER' | 'SKIPPED_ANOTHER_USER_APPROVED', required
    - `status_changed_by_member` object, nullable, required
      - `id` string, required
      - `custom_id` string, nullable, required
      - `name` string, nullable, required
      - `email` string, nullable, required
    - `status_changed_date` string, nullable, required
    - `approver_member` object, nullable, required
      - `id` string, required
      - `custom_id` string, nullable, required
      - `name` string, nullable, required
      - `email` string, nullable, required
    - `predecessor_request_member_approver_id` string, nullable, required

## Other responses

- `400` — Invalid input data
- `401` — Authorization not provided
- `403` — Insufficient access
- `404` — Not found
- `500` — Internal server error

---

[API](https://skmtc.net/absentify/apis/absentify-crud-api.md) · [All operations](https://skmtc.net/absentify/apis/absentify-crud-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/absentify/absentify-crud-api/revisions/ef777d51e6f2/schema)
