Zoho CRM Holidays API

Operations for managing holidays that affect business hours and shift schedules

Operations 6

GET /settings/holidays Retrieve holidays #
POST /settings/holidays Create holidays #
PUT /settings/holidays Update holidays (bulk) #
PUT /settings/holidays/{holidayId} Update a specific holiday #
GET /settings/holidays/{holidayId} Retrieve a specific holiday #
DELETE /settings/holidays/{holidayId} Delete a specific holiday #

Documentation

Specifications

Other Resources

🔗
Webhooks
https://raw.githubusercontent.com/api-evangelist/zoho-crm/refs/heads/main/asyncapi/zoho-crm-notifications-asyncapi.yml
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/apis.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/appointment_preference.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/appointments.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/assignment_rules.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/associate_email.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/attachments.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/audit_log_export.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/available_currencies.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/bulk_read.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/bulk_write.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/business_hours.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/cadences_execution.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/cadences.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/call_preferences.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/cancel_meetings.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/change_owner.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/composite_requests.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/contact_roles.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/conversion_option.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/convert.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/coql.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/currencies.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/custom_views.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/data_sharing.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/deal_contact_roles.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/deal_link_emails.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/download_attachments.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/download_inline_images.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/duplicate_check_preference.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/email_drafts.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/email_templates.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/emails_sharing_details.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/features.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/fetch_full_data.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/field_updates.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/fields.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/files.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/find_and_merge.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/fiscal_year.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/from_addresses.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/get_related_records_count.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/global_picklists.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/holidays.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/inventory_convert.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/inventory_templates.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/layouts_activate_deactivate.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/layouts.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/locking_informations.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mail_merge.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/map_dependency.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mass_change_owner.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mass_convert.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mass_delete_cvid.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mass_delete_tags.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/mass_update.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/module_search.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/modules.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/notes.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/notifications.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/org.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/org_photo.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/ownership_history.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/pick_list_values.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/pipeline.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/portal_user_type.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/portal_users.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/portals.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/profiles.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/record_count.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/record_locking_configurations.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/record.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/record_photo.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/record_share_email.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/recycle_bin.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/related_lists.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/related_notes.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/related_records.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/roles.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/scoring_rules.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/send_mail.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/service_preference.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/services.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/share_records.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/shift_hours.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/tags_actions.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/tags.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/territories.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/territory_users.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/timelines.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/unblock_email.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/unsubscribe_links.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/upload.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/user_groups.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/users.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/users_territories.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/users_transfer.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/variable_groups.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/variables.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/webhooks.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/wizards.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/workflow_configurations.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/workflow_rules.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/workflow_tasks.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/zia_enrichment.json
🔗
SourceCode
https://github.com/zoho/crm-oas/blob/main/v8.0/zia_org_enrichment.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zoho-crm-holidays-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zoho-crm-holidays-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Zoho CRM Holidays API
  description: Manage business and shift holidays in Zoho CRM. This API allows you to create, retrieve, update, and delete holidays that affect business hours and shift schedules. Business holidays apply to all users while shift holidays apply to specific shift configurations.
  version: '8'
servers:
- url: https://zohoapis.{dc}/crm/{version}
  description: API Server URL
  variables:
    dc:
      enum:
      - com
      - eu
      - in
      - cn
      - au
      default: com
      description: API Server URL TLD
    version:
      enum:
      - v8
      default: v8
      description: API version
security:
- iam-oauth2-schema:
  - ZohoCRM.settings.business_hours.READ
  - ZohoCRM.settings.business_hours.CREATE
  - ZohoCRM.settings.business_hours.UPDATE
  - ZohoCRM.settings.business_hours.DELETE
tags:
- name: Holidays
  description: Operations for managing holidays that affect business hours and shift schedules
paths:
  /settings/holidays:
    get:
      tags:
      - Holidays
      summary: Retrieve holidays
      description: Retrieves a list of holidays filtered by year, type (business or shift), and shift ID. Business holidays apply organization-wide, while shift holidays are specific to configured shifts. Returns paginated results with metadata.
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.READ
      operationId: getHolidays
      parameters:
      - $ref: '#/components/parameters/Year'
      - $ref: '#/components/parameters/Type'
      - $ref: '#/components/parameters/ShiftId'
      responses:
        '200':
          description: Success - Returns a paginated list of holidays matching the specified filter criteria
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    description: Array of holiday objects matching the filter criteria
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          description: 'Name of the holiday. Cannot contain special characters: #, %, ^, &, *'
                          maxLength: 80
                          minLength: 1
                          pattern: ^[^#%^&*]+$
                        date:
                          type: string
                          format: date
                          description: Date of the holiday in YYYY-MM-DD format. Must be within current or next financial year.
                        type:
                          type: string
                          description: 'Type of holiday: business_holiday applies to all users, shift_holiday applies to specific shifts'
                          enum:
                          - business_holiday
                          - shift_holiday
                        shift_hour:
                          type:
                          - object
                          - 'null'
                          description: Shift hour configuration associated with this holiday (required for shift_holiday type)
                          properties:
                            name:
                              type: string
                              description: Name of the shift hour
                              maxLength: 255
                            id:
                              type: string
                              description: Unique identifier of the shift hour
                              pattern: ^[0-9]+$
                              maxLength: 255
                          required:
                          - name
                          - id
                          additionalProperties: false
                        id:
                          type: string
                          description: Unique identifier of the holiday
                          pattern: ^[0-9]+$
                          maxLength: 255
                        year:
                          type: integer
                          format: int32
                          description: Year of the holiday
                          minimum: 2000
                          maximum: 2100
                      required:
                      - name
                      - date
                      - type
                      - shift_hour
                      - id
                      - year
                      description: The Item of the object.
                      additionalProperties: false
                    maxItems: 100
                  info:
                    type: object
                    description: Pagination metadata for the response
                    properties:
                      per_page:
                        type: integer
                        format: int32
                        description: Number of records returned per page
                        minimum: 1
                      page:
                        type: integer
                        format: int32
                        description: Current page number (1-indexed)
                        minimum: 1
                      count:
                        type: integer
                        format: int32
                        description: Total number of records returned in this response
                        minimum: 0
                      more_records:
                        type: boolean
                        description: Indicates whether more records are available on subsequent pages
                    additionalProperties: false
                required:
                - holidays
                description: The Response body of the object.
                additionalProperties: false
        '204':
          description: No Content - No holidays found matching the specified filter criteria
        '400':
          description: Bad request - validation errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - PATTERN_NOT_MATCHED
                    description: The Code of the object.
                  details:
                    type: object
                    description: The Details of the object.
                    additionalProperties: true
                  message:
                    type: string
                    description: The Message of the object.
                    maxLength: 255
                  status:
                    type: string
                    enum:
                    - error
                    description: The Status of the object.
                description: The Response body of the object.
                additionalProperties: false
    post:
      tags:
      - Holidays
      summary: Create holidays
      description: Creates one or more holidays with specified names, dates, types, and associated shift hours. Each holiday must have a unique name and date combination. Business holidays apply to all users, while shift holidays require a valid shift_hour association.
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.CREATE
      operationId: createHolidays
      requestBody:
        description: Request body containing an array of holidays to create. Each holiday must include a name, date, type, and shift_hour association (for shift holidays).
        content:
          application/json:
            schema:
              type: object
              properties:
                holidays:
                  type: array
                  description: Array of holiday objects to create. Maximum 52 holidays allowed per type per year.
                  minItems: 1
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: 'Name of the holiday. Cannot contain special characters: #, %, ^, &, *'
                        maxLength: 80
                        minLength: 1
                        pattern: ^[^#%^&*]+$
                      date:
                        type: string
                        format: date
                        description: Date of the holiday in YYYY-MM-DD format. Must be within current or next financial year.
                      type:
                        type: string
                        description: 'Type of holiday: business_holiday applies to all users, shift_holiday applies to specific shifts'
                        enum:
                        - business_holiday
                        - shift_holiday
                      shift_hour:
                        type: object
                        description: Shift hour association (required when type is shift_holiday, should be null or omitted for business_holiday)
                        properties:
                          name:
                            type: string
                            description: Name of the shift hour
                            maxLength: 255
                          id:
                            type: string
                            description: Unique identifier of the shift hour
                            pattern: ^[0-9]+$
                            maxLength: 255
                        required:
                        - name
                        - id
                        additionalProperties: false
                    required:
                    - name
                    - date
                    - type
                    - shift_hour
                    description: The Item of the object.
                    additionalProperties: false
                  maxItems: 100
                info:
                  type: object
                  properties:
                    per_page:
                      type: integer
                      format: int32
                      description: The Per page of the object.
                    page:
                      type: integer
                      format: int32
                      description: The Page of the object.
                    count:
                      type: integer
                      format: int32
                      description: The Count of the object.
                    more_records:
                      type: boolean
                      description: The More records of the object.
                  description: The Info of the object.
                  additionalProperties: false
              description: The Request body of the object.
              additionalProperties: false
        required: true
      responses:
        '201':
          description: Holidays created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                          - SUCCESS
                          description: The Code of the object.
                        details:
                          type: object
                          properties:
                            id:
                              type: string
                              description: The unique identifier of the holiday
                              maxLength: 255
                          description: The Details of the object.
                          additionalProperties: false
                        message:
                          type: string
                          description: The Message of the object.
                          maxLength: 255
                        status:
                          type: string
                          enum:
                          - success
                          description: The Status of the object.
                      required:
                      - code
                      - details
                      - message
                      - status
                      description: The Item of the object.
                      additionalProperties: false
                    description: The Holidays of the object.
                    maxItems: 100
                required:
                - holidays
                description: The Response body of the object.
                additionalProperties: false
        '400':
          description: Bad request - validation errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                          - MANDATORY_NOT_FOUND
                          - LIMIT_EXCEEDED
                          - DUPLICATE_DATA
                          - DEPENDENT_FIELD_MISSING
                          - INVALID_DATA
                          description: The Code of the object.
                        details:
                          type: object
                          description: The Details of the object.
                          additionalProperties: true
                        message:
                          type: string
                          description: The Message of the object.
                          maxLength: 255
                        status:
                          type: string
                          enum:
                          - error
                          description: The Status of the object.
                      description: The Item of the object.
                      additionalProperties: false
                    description: The Holidays of the object.
                    maxItems: 100
                description: The Response body of the object.
                additionalProperties: false
        '403':
          $ref: '#/components/responses/ForbiddenError'
    put:
      tags:
      - Holidays
      summary: Update holidays (bulk)
      description: Updates one or more existing holidays by their IDs with new names, dates, or shift hour associations.
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.UPDATE
      operationId: updateHolidays
      requestBody:
        description: Request body containing an array of holidays to update. Each holiday must include its ID along with the fields to update.
        content:
          application/json:
            schema:
              oneOf:
              - type: object
                properties:
                  holidays:
                    type: array
                    description: Array of holiday objects to update with their IDs and new values
                    minItems: 1
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          description: 'Name of the holiday. Cannot contain special characters: #, %, ^, &, *'
                          maxLength: 80
                          minLength: 1
                          pattern: ^[^#%^&*]+$
                        date:
                          type: string
                          format: date
                          description: Date of the holiday in YYYY-MM-DD format. Must be within current or next financial year.
                        type:
                          type: string
                          description: 'Type of holiday: business_holiday applies to all users, shift_holiday applies to specific shifts'
                          enum:
                          - business_holiday
                          - shift_holiday
                        shift_hour:
                          type: object
                          description: Shift hour association (required when type is shift_holiday)
                          properties:
                            name:
                              type: string
                              description: Name of the shift hour
                              maxLength: 255
                            id:
                              type: string
                              description: Unique identifier of the shift hour
                              pattern: ^[0-9]+$
                              maxLength: 255
                          required:
                          - name
                          - id
                          additionalProperties: false
                        id:
                          type: string
                          description: Unique identifier of the holiday to update
                          pattern: ^[0-9]+$
                          maxLength: 255
                      required:
                      - name
                      - date
                      - type
                      - shift_hour
                      - id
                      description: The Item of the object.
                      additionalProperties: false
                    maxItems: 100
                  info:
                    type: object
                    properties:
                      per_page:
                        type: integer
                        format: int32
                        description: The Per page of the object.
                      page:
                        type: integer
                        format: int32
                        description: The Page of the object.
                      count:
                        type: integer
                        format: int32
                        description: The Count of the object.
                      more_records:
                        type: boolean
                        description: The More records of the object.
                    description: The Info of the object.
                    additionalProperties: false
                description: A object value.
                additionalProperties: false
              description: The Request body of the object.
        required: true
      responses:
        '200':
          description: Success - Holidays updated successfully. Returns array of result objects with status for each holiday.
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    description: Array of operation results for each holiday update request
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Result code indicating success or failure
                          maxLength: 255
                        details:
                          type: object
                          description: Additional details about the operation result
                          properties:
                            id:
                              type: string
                              description: The ID of the updated holiday
                              maxLength: 255
                          additionalProperties: false
                        message:
                          type: string
                          description: Human-readable message describing the result
                          maxLength: 255
                        status:
                          type: string
                          description: Operation status
                          maxLength: 255
                      description: The Item of the object.
                      additionalProperties: false
                    maxItems: 100
                required:
                - holidays
                description: The Response body of the object.
                additionalProperties: false
        '400':
          description: Bad request - validation errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                          - DUPLICATE_DATA
                          - DEPENDENT_FIELD_MISSING
                          - INVALID_DATA
                          description: The Code of the object.
                        details:
                          type: object
                          description: The Details of the object.
                          additionalProperties: true
                        message:
                          type: string
                          description: The Message of the object.
                          maxLength: 255
                        status:
                          type: string
                          enum:
                          - error
                          description: The Status of the object.
                      description: The Item of the object.
                      additionalProperties: false
                    description: The Holidays of the object.
                    maxItems: 100
                description: The Response body of the object.
                additionalProperties: false
        '403':
          $ref: '#/components/responses/ForbiddenError'
  /settings/holidays/{holidayId}:
    put:
      tags:
      - Holidays
      summary: Update a specific holiday
      description: 'Updates a specific holiday identified by its ID. You can modify the holiday''s name (max 80 characters, no special characters: #, %, ^, &, *) or date (must be within current or next financial year). Provide only the fields you want to update.'
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.UPDATE
      operationId: updateHoliday
      parameters:
      - $ref: '#/components/parameters/HolidayId'
      requestBody:
        description: Request body containing the fields to update for the holiday. Provide only the fields you wish to change.
        content:
          application/json:
            schema:
              type: object
              properties:
                holidays:
                  type: array
                  description: Array containing a single holiday object with fields to update
                  minItems: 1
                  maxItems: 1
                  items:
                    type: object
                    properties:
                      name:
                        type:
                        - string
                        - 'null'
                        description: 'New name for the holiday. Cannot contain special characters: #, %, ^, &, *. Set to null to keep existing value.'
                        maxLength: 80
                        minLength: 1
                        pattern: ^[^#%^&*]+$
                      date:
                        type:
                        - string
                        - 'null'
                        format: date
                        description: New date for the holiday in YYYY-MM-DD format. Must be within current or next financial year. Set to null to keep existing value.
                    description: The Item of the object.
                    additionalProperties: false
              description: The Request body of the object.
              additionalProperties: false
        required: true
      responses:
        '200':
          description: Holiday updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                          - SUCCESS
                          description: The Code of the object.
                        details:
                          type: object
                          properties:
                            id:
                              type: string
                              description: The unique identifier of the holiday
                              maxLength: 255
                          description: The Details of the object.
                          additionalProperties: false
                        message:
                          type: string
                          description: The Message of the object.
                          maxLength: 255
                        status:
                          type: string
                          enum:
                          - success
                          description: The Status of the object.
                      required:
                      - code
                      - details
                      - message
                      - status
                      description: The Item of the object.
                      additionalProperties: false
                    description: The Holidays of the object.
                    maxItems: 100
                required:
                - holidays
                description: The Response body of the object.
                additionalProperties: false
        '400':
          description: Bad request - validation errors
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  additionalProperties: false
                  description: Error response for multiple business hours creation attempt
                  properties:
                    holidays:
                      type: array
                      items:
                        $ref: '#/components/schemas/InvalidDataResponse'
                      description: The Holidays of the array inside error object.
                      maxItems: 100
                  required:
                  - holidays
                - $ref: '#/components/schemas/InvalidDataResponse'
    get:
      tags:
      - Holidays
      summary: Retrieve a specific holiday
      description: Retrieves complete details of a specific holiday by its unique identifier, including its name, date, type, associated shift hour (if applicable), and year.
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.READ
      operationId: getHoliday
      parameters:
      - $ref: '#/components/parameters/HolidayId'
      responses:
        '200':
          description: Response for status 200
          content:
            application/json:
              schema:
                type: object
                properties:
                  holidays:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          maxLength: 80
                          description: The Name of the object.
                        date:
                          type: string
                          format: date
                          description: The Date of the object.
                        type:
                          type: string
                          enum:
                          - business_holiday
                          - shift_holiday
                          description: The Type of the object.
                        shift_hour:
                          type:
                          - object
                          - 'null'
                          properties:
                            name:
                              type: string
                              description: The Name of the object.
                              maxLength: 255
                            id:
                              type: string
                              description: The Id of the object.
                              maxLength: 255
                          required:
                          - name
                          - id
                          description: The Shift hour of the object.
                          additionalProperties: false
                        id:
                          type: string
                          description: The Id of the object.
                          maxLength: 255
                        year:
                          type: integer
                          format: int32
                          description: The Year of the object.
                      required:
                      - name
                      - date
                      - type
                      - shift_hour
                      - id
                      - year
                      description: The Item of the object.
                      additionalProperties: false
                    description: The Holidays of the object.
                    maxItems: 100
                  info:
                    type: object
                    properties:
                      per_page:
                        type: integer
                        format: int32
                        description: The Per page of the object.
                      page:
                        type: integer
                        format: int32
                        description: The Page of the object.
                      count:
                        type: integer
                        format: int32
                        description: The Count of the object.
                      more_records:
                        type: boolean
                        description: The More records of the object.
                    description: The Info of the object.
                    additionalProperties: false
                required:
                - holidays
                description: The Response body of the object.
                additionalProperties: false
        '204':
          description: Response for status 204
    delete:
      tags:
      - Holidays
      summary: Delete a specific holiday
      description: Permanently deletes a specific holiday identified by its ID. This operation is irreversible. Ensure the holiday ID is valid before deletion to avoid errors.
      security:
      - iam-oauth2-schema:
        - ZohoCRM.settings.business_hours.DELETE
      operationId: deleteHoliday
      parameters:
      - $ref: '#/components/parameters/HolidayId'
      responses:
        '200':
          description: Holiday deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HolidaysSuccessResponse'
        '400':
          description: Bad request - validation errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - INVALID_DATA
                    description: The Code of the object.
                  details:
                    type: object
                    description: The Details of the object.
                    additionalProperties: true
                  message:
                    type: string
                    description: The Message of the object.
                    maxLength: 255
                  status:
                    type: string
                    enum:
                    - error
                    description: The Status of the object.
                description: The Response body of the object.
                additionalProperties: false
components:
  parameters:
    Year:
      name: year
      in: query
      required: false
      description: Filter holidays by year. Must be a valid 4-digit year value within a reasonable range.
      schema:
        type: integer
        format: int32
        minimum: 2

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zoho-crm/refs/heads/main/openapi/zoho-crm-holidays-api-openapi.yml