---
title: "Update a leave type"
method: PUT
path: "/leave_types/{id}"
tags: ["Leave types"]
---

# Update a leave type

`PUT /leave_types/{id}`

Update a leave type

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `name` string
  - `color` string
  - `needs_approval` boolean
  - `maximum_absent` boolean
  - `leave_unit` 'days' | 'half_days' | 'hours' | 'minutes_30' | 'minutes_15' | 'minutes_10' | 'minutes_5' | 'minutes_1'
  - `position` integer
  - `take_from_allowance` boolean
  - `privacy_hide_leavetype` boolean
  - `outlook_synchronization_show_as` 'free' | 'tentative' | 'busy' | 'oof' | 'workingElsewhere' | 'unknown'
  - `outlook_synchronization_subject` string, nullable
  - `icon` 'NoIcon' | 'Umbrella' | 'Anchor' | 'Archive' | 'Award' | 'Briefcase' | 'Calendar' | 'Cast' | 'Clock' | 'Coffee' | 'Compass' | 'Battery' | 'Emoji' | 'Gift' | 'Frown' | 'Image' | 'Sun' | 'Zap' | 'Home' | 'Users'
  - `reason_mandatory` boolean
  - `reason_hint_text` string, nullable
  - `allowance_type_id` string, nullable
  - `sync_option` 'Disabled' | 'All' | 'OnlyApproved'
  - `counts_as_leave` boolean
  - `allow_representative_overlap` boolean
  - `translations` object[] — Replaces the stored translations. Omit the field to leave them untouched.
    - `language` 'en' | 'de' | 'fr' | 'hu' | 'it' | 'pl' | 'pt' | 'ru' | 'es' | 'tr' | 'uk', required — Language code the name below is written in, e.g. `de`.
    - `name` string, required

## Response `200`

Successful response

- string, uuid, nullable

## 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)
