> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a leave policy

> Update a custom leave policy.

### Parameters

<ParamField path="id" type="string" required>
  The ID of the custom leave policy to update.
</ParamField>

<ParamField body="name" type="string">
  New human-readable policy name.
</ParamField>

<ParamField body="description" type="string | null">
  New plain-language explanation of the policy. Pass `null` to clear it.
</ParamField>

<ParamField body="status" type="string">
  New lifecycle state. One of `draft`, `active`, or `archived`.
</ParamField>

<ParamField body="type" type="string">
  New leave type, for example `vacation` or `sick_time_off`.
</ParamField>

<ParamField body="effect" type="string">
  Whether the policy is a `set` or `add` policy.
</ParamField>

<ParamField body="unit" type="string">
  Unit used for policy quantities. One of `days` or `hours`.
</ParamField>

<ParamField body="eligibility" type="string | null">
  Optional CEL expression used for automatic matching against the worker resource shape. Pass
  `null` to clear it.
</ParamField>

<ParamField body="period" type="object">
  Updated period definition for the policy.
</ParamField>

<ParamField body="accrual" type="object | null">
  Updated accrual rule. Use `null` for unlimited leave.
</ParamField>

<ParamField body="carryover" type="object | null">
  Updated carryover rule. Use `null` for use-it-or-lose-it.
</ParamField>

<ParamField body="balance" type="object | null">
  Updated balance bounds. Use `null` for unlimited leave.
</ParamField>

<ParamField body="usage" type="object | null">
  Updated per-period usage cap.
</ParamField>

<ParamField body="payout" type="object">
  Updated termination payout rule.
</ParamField>

### Returns

Returns the updated [Leave Policy object](/reference/leave-policies/object).
