Event Object

The event object represents a scheduled thermostat program change. All events have a start and end time during which the thermostat runtime settings will be modified. Events may not be directly modified, various Functions provide the capability to modify the calendar events and to modify the program. The event list is sorted with events ordered by whether they are currently running and the internal priority of each event. It is safe to take the first event which is running and show it as the currently running event. When the resume function is used, events are removed in the order they are listed here.

Note that the start/end date/time for the event must be in thermostat time and are not specified in UTC.

Event Priorities

The events are listed from top priority first to lowest priority. They will appear in the events list in the same order as listed here provided they are active currently.

Type Event Type
hold Hold temperature event.
demandResponse Demand Response event.
sensor Sensor generated event.
switchOccupancy EMS only event to flip unoccupied to occupied, and vice versa. Look at name to determine whether "occupied" or "unoccupied".
vacation Vacation event.
quickSave Quick Save event.
today Today widget generated event.
template A vacation event that reflects the thermostat owner's default preferences for any created vacation. Template events are never active and are only used to store the last used vacation settings of the thermostat owner.

Properties

Name Type Read Only Required Description
type String yes no The type of event. Values: hold, demandResponse, sensor, switchOccupancy, vacation, quickSave, today, autoAway, autoHome
name String yes no The unique event name.
running Boolean yes no Whether the event is currently active or not.
startDate String yes no The event start date in thermostat local time.
startTime String yes no The event start time in thermostat local time.
endDate String yes no The event end date in thermostat local time.
endTime String yes no The event end time in thermostat local time.
isOccupied Boolean yes no Whether there are persons occupying the property during the event.
isCoolOff Boolean yes no Whether cooling will be turned off during the event.
isHeatOff Boolean yes no Whether heating will be turned off during the event.
coolHoldTemp Integer yes no The cooling absolute temperature to set.
heatHoldTemp Integer yes no The heating absolute temperature to set.
fan String yes no The fan mode during the event. Values: auto, on Default: based on current climate and hvac mode.
vent String yes no The ventilator mode during the vent. Values: auto, minontime, on, off.
ventilatorMinOnTime Integer yes no The minimum amount of time the ventilator equipment must stay on on each duty cycle.
isOptional Boolean yes no Whether this event is mandatory or the end user can cancel it.
isTemperatureRelative Boolean yes no Whether the event is using a relative temperature setting to the currently active program climate. See the Note at the bottom of this page for more information.
coolRelativeTemp Integer yes no The relative cool temperature adjustment.
heatRelativeTemp Integer yes no The relative heat temperature adjustment.
isTemperatureAbsolute Boolean yes no Whether the event uses absolute temperatures to set the values. Default: true for DRs. See the Note at the bottom of this page for more information.
dutyCyclePercentage Integer yes no Indicates the % scheduled runtime during a Demand Response event. Valid range is 0 - 100%. Default = 100, indicates no change to schedule.
fanMinOnTime Integer yes no The minimum number of minutes to run the fan each hour. Range: 0-60, Default: 0
occupiedSensorActive Boolean yes no True if this calendar event was created because of the occupied sensor.
unoccupiedSensorActive Boolean yes no True if this calendar event was created because of the unoccupied sensor
drRampUpTemp Integer yes no Unsupported. Future feature.
drRampUpTime Integer yes no Unsupported. Future feature.
linkRef String yes no Unique identifier set by the server to link one or more events and alerts together.
holdClimateRef String yes no Used for display purposes to indicate what climate (if any) is being used for the hold.

Note that when 'isTemperatureAbsolute' is true, the coolHoldTemp and heatHoldTemp must be specified. Similarly, when 'isTemperatureRelative' is true, the coolRelativeTemp and heatRelativeTemp must be specified.

Back To Top