Schedule

Schedule

A schedule defining availability of a resource (e.g. a price or discount).

All date/time values in a Schedule follow a floating-time convention: they are
serialized as UTC but should be interpreted as local times relative to the
context in which the schedule is evaluated (typically the location’s time zone).
For example, a startDate of 2026-02-17T00:00:00Z means “midnight local time on
Feb 17”, not “midnight UTC”.

Kind: Object

Fields

Field Type Description
durationMinutes Int Duration of each recurring event in minutes (required if rrule is present).
For example, a recurring event from 8am-9am local time can be represented by:
{
“rrule”: “RRULE:FREQ=DAILY;BYHOUR=8;BYMINUTE=0;BYSECOND=0”,
“durationMinutes”: 60
}
endDate DateTime When the schedule expires (null means no expiration). Stored as UTC but
interpreted as a floating local time — see the Schedule type description.
rrule RRule Recurrence pattern (null means no recurrence). This follows the RRULE property
format from iCalendar (RFC-5545). Note that there are redundant degrees of
freedom between the rrule’s UNTIL and COUNT rules and the endDate property on
the Schedule type. In practice, the value resulting in the soonest expiration
will take effect.
startDate DateTime When the resource becomes active (null means active from when the schedule is
created). Stored as UTC but interpreted as a floating local time — see the
Schedule type description.

Definition

"""
A schedule defining availability of a resource (e.g. a price or discount).

All date/time values in a Schedule follow a floating-time convention: they are
serialized as UTC but should be interpreted as local times relative to the
context in which the schedule is evaluated (typically the location's time zone).
For example, a startDate of 2026-02-17T00:00:00Z means "midnight local time on
Feb 17", not "midnight UTC".
"""
type Schedule {
  """
  Duration of each recurring event in minutes (required if rrule is present).
  For example, a recurring event from 8am-9am local time can be represented by:
  {
    "rrule": "RRULE:FREQ=DAILY;BYHOUR=8;BYMINUTE=0;BYSECOND=0",
    "durationMinutes": 60
  }
  """
  durationMinutes: Int
  """
  When the schedule expires (null means no expiration). Stored as UTC but
  interpreted as a floating local time — see the Schedule type description.
  """
  endDate: DateTime
  """
  Recurrence pattern (null means no recurrence). This follows the RRULE property
  format from iCalendar (RFC-5545). Note that there are redundant degrees of
  freedom between the rrule's UNTIL and COUNT rules and the endDate property on
  the Schedule type. In practice, the value resulting in the soonest expiration
  will take effect.
  """
  rrule: RRule
  """
  When the resource becomes active (null means active from when the schedule is
  created). Stored as UTC but interpreted as a floating local time — see the
  Schedule type description.
  """
  startDate: DateTime
}