---
search:
  tags:
    - holidays
    - PUT
seo:
  description: >-
    Updates an existing holiday day in a custom holiday year configuration.
    Reference for the PUT /holidays/days/{dayId} endpoint in the Leadtime Public
    API API.
sidebar:
  badge: PUT
  label: Update holiday day
title: Update holiday day
type: openapi-operation
---
Updates an existing holiday day in a custom holiday year configuration.

**What this does:**
Modifies a holiday's name, type, date, or rule. This allows you to customize holidays from the default set or modify holidays you've previously added.

**Holiday types:**
You can update holidays to be either type:

1. **Fixed** (`type: "Fixed"`):
   - A specific date that doesn't change
   - Requires a `date` field in ISO 8601 format (e.g., "2024-12-25")
   - Example: "Christmas Day" on December 25

2. **Rule** (`type: "Rule"`):
   - A computed date based on a rule string
   - Requires a `rule` field (e.g., "25 december", "easter monday", "first monday in september")
   - The date is automatically computed from the rule for each year
   - If converting from Fixed to Rule, you must provide a `rule` (or it will use the existing rule if available)

**Important constraints:**
- You cannot convert a Fixed holiday to Rule without providing a `rule`
- If the holiday already has a rule and you're converting to Rule type, the existing rule will be preserved if you don't provide one
- The holiday must belong to a custom year (not a default year)
- The `yearId` is automatically determined from the existing holiday

**Use cases:**
- Renaming a holiday (e.g., "Christmas" → "Holiday Break")
- Changing a holiday date
- Converting a fixed holiday to a rule-based one (e.g., "First Monday in September" for Labor Day)
- Modifying rule-based holidays from the default set

**Example - Converting Fixed to Rule:**
```json
{
  "name": "Labor Day",
  "type": "Rule",
  "rule": "first monday in september"
}
```

<Operation source="api-reference" id="holidayscontroller-updateholidayday" />
