Schedule

A configurable schedule for one day of the week or specific date.

JSON representation
{
  "days": [
    enum (DayOfWeek)
  ],
  "dateRanges": [
    {
      object (DateRange)
    }
  ],
  "timeRanges": [
    {
      object (TimeOfDayRange)
    }
  ]
}
Fields
days[]

enum (DayOfWeek)

Optional. The days of the week to apply the schedule to.

dateRanges[]

object (DateRange)

Optional. The date ranges to apply the schedule to. If set, the schedule is only active on these specific date ranges. If both days and dateRanges are set, the schedule is active when both condition is met. For example, if days is [MONDAY] and dateRanges is [2026-01-01, 2026-01-31], the schedule is active on all Monday in January.

timeRanges[]

object (TimeOfDayRange)

Optional. The time of day ranges to apply the schedule to. If set, the schedule is only active during these time ranges.

DateRange

Represents a date range, inclusive of both ends.

JSON representation
{
  "startDate": {
    object (Date)
  },
  "endDate": {
    object (Date)
  }
}
Fields
startDate

object (Date)

Required. The start date of the range, inclusive.

endDate

object (Date)

Required. The end date of the range, inclusive.

TimeOfDayRange

Represents a period between two times of day on an unspecified date. For example, business hours like 09:00 to 17:00.

JSON representation
{
  "startTime": {
    object (TimeOfDay)
  },
  "endTime": {
    object (TimeOfDay)
  }
}
Fields
startTime

object (TimeOfDay)

Required. The start of the time range, inclusive.

endTime

object (TimeOfDay)

Required. The end of the time range, exclusive. If endTime is earlier than startTime, it means the endtime is on the next day.