{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/BusinessHoursDTO",
  "title": "BusinessHoursDTO",
  "type": "object",
  "properties": {
    "organizationId": {
      "type": "string",
      "format": "uuid",
      "description": "ID of the contact center organization. This field is required for all bulk save operations.",
      "example": "f53c8b54-46ca-43f6-ba05-08426a46e23d",
      "maxLength": 36,
      "minLength": 32,
      "pattern": "^[0-9a-fA-F]{8}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{12}$"
    },
    "id": {
      "type": "string",
      "description": "ID of this contact center resource. It should not be specified when creating a new resource. However, it is mandatory when updating a resource.",
      "example": "93912f11-6017-404b-bf14-5331890b1797"
    },
    "version": {
      "type": "integer",
      "format": "int32",
      "description": "The version of this resource. For a newly created resource, it will be 0 unless specified otherwise.",
      "example": 1
    },
    "name": {
      "type": "string",
      "description": "Enter a name for the agent profile.",
      "example": "Agent-Profile(Auto WrapUp)",
      "maxLength": 80,
      "minLength": 1,
      "pattern": "^[a-zA-Z0-9_-]+(\\s?[a-zA-Z0-9_-]+)*$"
    },
    "description": {
      "type": "string",
      "description": "(Optional) Enter a description of the profile.",
      "example": "This business hour can be set for happy hours",
      "maxLength": 255,
      "minLength": 0
    },
    "timezone": {
      "type": "string",
      "description": "The time zone that you provision for your business hour.",
      "example": "America/New_York",
      "minLength": 1
    },
    "workingHours": {
      "type": "array",
      "description": "Working hours",
      "example": [
        {
          "name": "Happy Hours",
          "days": [
            "MON",
            "TUE",
            "WED",
            "THU",
            "FRI"
          ],
          "startTime": "17:00",
          "endTime": "18:59"
        },
        {
          "name": "Open Hours",
          "days": [
            "MON",
            "TUE",
            "WED",
            "THU",
            "FRI",
            "SAT",
            "SUN"
          ],
          "startTime": "19:00",
          "endTime": "23:59"
        }
      ],
      "items": {
        "$ref": "#/components/schemas/WorkingHoursDTO"
      },
      "minItems": 1,
      "uniqueItems": true
    },
    "holidaysId": {
      "type": "string"
    },
    "overridesId": {
      "type": "string"
    },
    "workingHoursCount": {
      "type": "integer",
      "format": "int64"
    },
    "createdTime": {
      "type": "integer",
      "format": "int64",
      "description": "This is the created time of the entity."
    },
    "lastUpdatedTime": {
      "type": "integer",
      "format": "int64",
      "description": "This is the updated time of the entity."
    }
  },
  "required": [
    "name",
    "timezone",
    "workingHours"
  ]
}