Variable unmanaged_deviceConst
unmanaged_device: ZodObject<
Pick<
{
capabilities_supported: ZodArray<
ZodEnum<
[
"access_code",
"lock",
"noise_detection",
"thermostat",
"battery",
"phone",
],
>,
"many",
>;
connected_account_id: ZodString;
created_at: ZodString;
custom_metadata: ZodRecord<ZodString, ZodUnion<[ZodString, ZodBoolean]>>;
device_id: ZodString;
device_type: ZodUnion<
[
ZodEnum<[LockDeviceTypeFromMapping]>,
ZodEnum<[NoiseSensorDeviceTypeFromMapping]>,
ZodEnum<[ThermostatDeviceTypeFromMapping]>,
ZodEnum<[PhoneDeviceTypeFromMapping]>,
],
>;
display_name: ZodString;
errors: ZodArray<
ZodDiscriminatedUnion<
"error_code",
[
ZodObject<
{ created_at: ...; message: ... } & {
error_code: ...;
is_connected_account_error: ...;
is_device_error: ...;
},
"strip",
ZodTypeAny,
{
created_at: string;
error_code: "account_disconnected";
is_connected_account_error: true;
is_device_error: false;
message: string;
},
{
created_at: string;
error_code: "account_disconnected";
is_connected_account_error: true;
is_device_error: false;
message: string;
},
>,
ZodObject<
{ created_at: ...; message: ... } & {
error_code: ...;
is_connected_account_error: ...;
is_device_error: ...;
},
"strip",
ZodTypeAny,
{
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_connected_account_error: true;
is_device_error: false;
message: string;
},
{
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_connected_account_error: true;
is_device_error: false;
message: string;
},
>,
ZodObject<
{ created_at: ...; is_device_error: ...; message: ... } & {
error_code: ...;
},
"strip",
ZodTypeAny,
{
created_at: string;
error_code: "device_offline";
is_device_error: true;
message: string;
},
{
created_at: string;
error_code: "device_offline";
is_device_error: true;
message: string;
},
>,
],
>,
"many",
>;
is_managed: ZodLiteral<true>;
location: ZodNullable<
ZodObject<
{
location_name: ZodOptional<ZodString>;
timezone: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{ location_name?: string; timezone?: string },
{ location_name?: string; timezone?: string },
>,
>;
nickname: ZodOptional<ZodString>;
properties: ZodIntersection<
ZodIntersection<
ZodIntersection<
ZodObject<
{
accessory_keypad: ZodOptional<(...)>;
appearance: ZodObject<(...), (...), (...), (...), (...)>;
battery: ZodOptional<(...)>;
battery_level: ZodOptional<(...)>;
currently_triggering_noise_threshold_ids: ZodOptional<(...)>;
has_direct_power: ZodOptional<(...)>;
image_alt_text: ZodOptional<(...)>;
image_url: ZodOptional<(...)>;
manufacturer: ZodOptional<(...)>;
model: ZodObject<(...), (...), (...), (...), (...)>;
name: ZodString;
noise_level_decibels: ZodOptional<(...)>;
offline_access_codes_enabled: ZodOptional<(...)>;
online: ZodBoolean;
online_access_codes_enabled: ZodOptional<(...)>;
serial_number: ZodOptional<(...)>;
supports_accessory_keypad: ZodOptional<(...)>;
supports_offline_access_codes: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
accessory_keypad?: (...)
| (...);
appearance: { name: ... };
battery?: (...) | (...);
battery_level?: (...) | (...);
currently_triggering_noise_threshold_ids?: (...) | (...);
has_direct_power?: (...) | (...) | (...);
image_alt_text?: (...) | (...);
image_url?: (...) | (...);
manufacturer?: (...) | (...);
model: {
accessory_keypad_supported?: ...;
can_connect_accessory_keypad?: ...;
display_name: ...;
has_built_in_keypad?: ...;
manufacturer_display_name: ...;
offline_access_codes_supported?: ...;
online_access_codes_supported?: ...;
};
name: string;
noise_level_decibels?: (...)
| (...);
offline_access_codes_enabled?: (...) | (...) | (...);
online: boolean;
online_access_codes_enabled?: (...) | (...) | (...);
serial_number?: (...) | (...);
supports_accessory_keypad?: (...) | (...) | (...);
supports_offline_access_codes?: (...) | (...) | (...);
},
{
accessory_keypad?: (...)
| (...);
appearance: { name: ... };
battery?: (...) | (...);
battery_level?: (...) | (...);
currently_triggering_noise_threshold_ids?: (...) | (...);
has_direct_power?: (...) | (...) | (...);
image_alt_text?: (...) | (...);
image_url?: (...) | (...);
manufacturer?: (...) | (...);
model: {
accessory_keypad_supported?: ...;
can_connect_accessory_keypad?: ...;
display_name: ...;
has_built_in_keypad?: ...;
manufacturer_display_name: ...;
offline_access_codes_supported?: ...;
online_access_codes_supported?: ...;
};
name: string;
noise_level_decibels?: (...)
| (...);
offline_access_codes_enabled?: (...) | (...) | (...);
online: boolean;
online_access_codes_enabled?: (...) | (...) | (...);
serial_number?: (...) | (...);
supports_accessory_keypad?: (...) | (...) | (...);
supports_offline_access_codes?: (...) | (...) | (...);
},
>,
ZodObject<
{
assa_abloy_credential_service_metadata: ZodOptional<(...)>;
salto_space_credential_service_metadata: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
assa_abloy_credential_service_metadata?: (...)
| (...);
salto_space_credential_service_metadata?: (...) | (...);
},
{
assa_abloy_credential_service_metadata?: (...)
| (...);
salto_space_credential_service_metadata?: (...) | (...);
},
>,
>,
ZodObject<
{
akiles_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
assa_abloy_vostio_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
august_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
avigilon_alta_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
brivo_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
controlbyweb_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
dormakaba_oracode_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
ecobee_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
four_suites_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
genie_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
honeywell_resideo_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
hubitat_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
igloo_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
igloohome_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
keynest_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
kwikset_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
lockly_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
minut_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
nest_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
noiseaware_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
nuki_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
salto_ks_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
salto_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
schlage_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
seam_bridge_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
sensi_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
smartthings_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
tado_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
tedee_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
ttlock_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
two_n_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
visionline_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
wyze_metadata: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
},
"strip",
ZodTypeAny,
{
akiles_metadata?: {
_member_group_id?: ...;
gadget_id: ...;
gadget_name: ...;
product_name: ...;
};
assa_abloy_vostio_metadata?: { encoder_name: ... };
august_metadata?: {
has_keypad: ...;
house_id?: ...;
house_name: ...;
keypad_battery_level?: ...;
lock_id: ...;
lock_name: ...;
model?: ...;
};
avigilon_alta_metadata?: {
entry_name: ...;
entry_relays_total_count: ...;
org_name: ...;
site_id: ...;
site_name: ...;
zone_id: ...;
zone_name: ...;
};
brivo_metadata?: { device_name: ... };
controlbyweb_metadata?: {
device_id: ...;
device_name: ...;
relay_name: ...;
};
dormakaba_oracode_metadata?: {
device_id?: ...;
door_id?: ...;
door_is_wireless: ...;
door_name: ...;
iana_timezone?: ...;
predefined_time_slots?: ...;
site_id: ...;
site_name: ...;
};
ecobee_metadata?: { device_name: ...; ecobee_device_id: ... };
four_suites_metadata?: {
device_id: ...;
device_name: ...;
reclose_delay_in_seconds: ...;
};
genie_metadata?: { device_name: ...; door_name: ... };
honeywell_resideo_metadata?: {
device_name: ...;
honeywell_resideo_device_id: ...;
};
hubitat_metadata?: {
device_id: ...;
device_label: ...;
device_name: ...;
};
igloo_metadata?: { bridge_id: ...; device_id: ...; model?: ... };
igloohome_metadata?: {
bridge_id?: ...;
bridge_name?: ...;
device_id: ...;
device_name: ...;
is_keypad_linked_to_bridge?: ...;
keypad_id?: ...;
};
keynest_metadata?: {
address: ...;
current_or_last_store_id: ...;
current_status: ...;
current_user_company: ...;
current_user_email: ...;
current_user_name: ...;
current_user_phone_number: ...;
default_office_id: ...;
device_name: ...;
fob_id: ...;
handover_method: ...;
has_photo: ...;
key_id: ...;
key_notes: ...;
keynest_app_user: ...;
last_movement: ...;
property_id: ...;
property_postcode: ...;
status_type: ...;
subscription_plan: ...;
};
kwikset_metadata?: {
device_id: ...;
device_name: ...;
model_number: ...;
};
lockly_metadata?: { device_id: ...; device_name: ...; model?: ... };
minut_metadata?: {
device_id: ...;
device_name: ...;
latest_sensor_values: ...;
};
nest_metadata?: {
device_custom_name: ...;
device_name: ...;
display_name?: ...;
nest_device_id: ...;
};
noiseaware_metadata?: {
device_id: ...;
device_model: ...;
device_name: ...;
noise_level_decibel: ...;
noise_level_nrs: ...;
};
nuki_metadata?: {
device_id: ...;
device_name: ...;
keypad_2_paired?: ...;
keypad_battery_critical?: ...;
keypad_paired?: ...;
};
salto_ks_metadata?: {
battery_level: ...;
customer_reference: ...;
lock_id: ...;
lock_type: ...;
locked_state: ...;
model?: ...;
};
salto_metadata?: {
battery_level: ...;
customer_reference: ...;
lock_id: ...;
lock_type: ...;
locked_state: ...;
model?: ...;
};
schlage_metadata?: { device_id: ...; device_name: ...; model?: ... };
seam_bridge_metadata?: {
device_num: ...;
name: ...;
unlock_method?: ...;
};
sensi_metadata?: {
device_id: ...;
device_name: ...;
product_type: ...;
};
smartthings_metadata?: {
device_id: ...;
device_name: ...;
location_id?: ...;
model?: ...;
};
tado_metadata?: { device_type: ...; serial_no: ... };
tedee_metadata?: {
bridge_id: ...;
bridge_name: ...;
device_id: ...;
device_model: ...;
device_name: ...;
keypad_id?: ...;
serial_number: ...;
};
ttlock_metadata?: {
feature_value: ...;
features: ...;
has_gateway?: ...;
lock_alias: ...;
lock_id: ...;
wireless_keypads?: ...;
};
two_n_metadata?: { device_id: ...; device_name: ... };
visionline_metadata?: { encoder_id: ... };
wyze_metadata?: {
device_id: ...;
device_info_model: ...;
device_name: ...;
keypad_uuid?: ...;
locker_status_hardlock?: ...;
product_model: ...;
product_name: ...;
product_type: ...;
};
},
{
akiles_metadata?: {
_member_group_id?: ...;
gadget_id: ...;
gadget_name: ...;
product_name: ...;
};
assa_abloy_vostio_metadata?: { encoder_name: ... };
august_metadata?: {
has_keypad: ...;
house_id?: ...;
house_name: ...;
keypad_battery_level?: ...;
lock_id: ...;
lock_name: ...;
model?: ...;
};
avigilon_alta_metadata?: {
entry_name: ...;
entry_relays_total_count: ...;
org_name: ...;
site_id: ...;
site_name: ...;
zone_id: ...;
zone_name: ...;
};
brivo_metadata?: { device_name: ... };
controlbyweb_metadata?: {
device_id: ...;
device_name: ...;
relay_name: ...;
};
dormakaba_oracode_metadata?: {
device_id?: ...;
door_id?: ...;
door_is_wireless: ...;
door_name: ...;
iana_timezone?: ...;
predefined_time_slots?: ...;
site_id: ...;
site_name: ...;
};
ecobee_metadata?: { device_name: ...; ecobee_device_id: ... };
four_suites_metadata?: {
device_id: ...;
device_name: ...;
reclose_delay_in_seconds: ...;
};
genie_metadata?: { device_name: ...; door_name: ... };
honeywell_resideo_metadata?: {
device_name: ...;
honeywell_resideo_device_id: ...;
};
hubitat_metadata?: {
device_id: ...;
device_label: ...;
device_name: ...;
};
igloo_metadata?: { bridge_id: ...; device_id: ...; model?: ... };
igloohome_metadata?: {
bridge_id?: ...;
bridge_name?: ...;
device_id: ...;
device_name: ...;
is_keypad_linked_to_bridge?: ...;
keypad_id?: ...;
};
keynest_metadata?: {
address: ...;
current_or_last_store_id: ...;
current_status: ...;
current_user_company: ...;
current_user_email: ...;
current_user_name: ...;
current_user_phone_number: ...;
default_office_id: ...;
device_name: ...;
fob_id: ...;
handover_method: ...;
has_photo: ...;
key_id: ...;
key_notes: ...;
keynest_app_user: ...;
last_movement: ...;
property_id: ...;
property_postcode: ...;
status_type: ...;
subscription_plan: ...;
};
kwikset_metadata?: {
device_id: ...;
device_name: ...;
model_number: ...;
};
lockly_metadata?: { device_id: ...; device_name: ...; model?: ... };
minut_metadata?: {
device_id: ...;
device_name: ...;
latest_sensor_values: ...;
};
nest_metadata?: {
device_custom_name: ...;
device_name: ...;
display_name?: ...;
nest_device_id: ...;
};
noiseaware_metadata?: {
device_id: ...;
device_model: ...;
device_name: ...;
noise_level_decibel: ...;
noise_level_nrs: ...;
};
nuki_metadata?: {
device_id: ...;
device_name: ...;
keypad_2_paired?: ...;
keypad_battery_critical?: ...;
keypad_paired?: ...;
};
salto_ks_metadata?: {
battery_level: ...;
customer_reference: ...;
lock_id: ...;
lock_type: ...;
locked_state: ...;
model?: ...;
};
salto_metadata?: {
battery_level: ...;
customer_reference: ...;
lock_id: ...;
lock_type: ...;
locked_state: ...;
model?: ...;
};
schlage_metadata?: { device_id: ...; device_name: ...; model?: ... };
seam_bridge_metadata?: {
device_num: ...;
name: ...;
unlock_method?: ...;
};
sensi_metadata?: {
device_id: ...;
device_name: ...;
product_type: ...;
};
smartthings_metadata?: {
device_id: ...;
device_name: ...;
location_id?: ...;
model?: ...;
};
tado_metadata?: { device_type: ...; serial_no: ... };
tedee_metadata?: {
bridge_id: ...;
bridge_name: ...;
device_id: ...;
device_model: ...;
device_name: ...;
keypad_id?: ...;
serial_number: ...;
};
ttlock_metadata?: {
feature_value: ...;
features: ...;
has_gateway?: ...;
lock_alias: ...;
lock_id: ...;
wireless_keypads?: ...;
};
two_n_metadata?: { device_id: ...; device_name: ... };
visionline_metadata?: { encoder_id: ... };
wyze_metadata?: {
device_id: ...;
device_info_model: ...;
device_name: ...;
keypad_uuid?: ...;
locker_status_hardlock?: ...;
product_model: ...;
product_name: ...;
product_type: ...;
};
},
>,
>,
ZodIntersection<
ZodObject<
{
_experimental_supported_code_from_access_codes_lengths: ZodOptional<
(...),
>;
code_constraints: ZodOptional<(...)>;
has_native_entry_events: ZodOptional<(...)>;
max_active_codes_supported: ZodOptional<(...)>;
supported_code_lengths: ZodOptional<(...)>;
supports_backup_access_code_pool: ZodOptional<(...)>;
} & {
door_open: ZodOptional<(...)>;
keypad_battery: ZodOptional<(...)>;
locked: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
_experimental_supported_code_from_access_codes_lengths?: (...)[];
code_constraints?: (...)[];
door_open?: boolean;
has_native_entry_events?: boolean;
keypad_battery?: { level: ... };
locked?: boolean;
max_active_codes_supported?: number;
supported_code_lengths?: (...)[];
supports_backup_access_code_pool?: boolean;
},
{
_experimental_supported_code_from_access_codes_lengths?: (...)[];
code_constraints?: (...)[];
door_open?: boolean;
has_native_entry_events?: boolean;
keypad_battery?: { level: ... };
locked?: boolean;
max_active_codes_supported?: number;
supported_code_lengths?: (...)[];
supports_backup_access_code_pool?: boolean;
},
>,
ZodObject<
{
active_thermostat_schedule: ZodOptional<ZodNullable<(...)>>;
active_thermostat_schedule_id: ZodOptional<ZodNullable<(...)>>;
available_climate_preset_modes: ZodOptional<ZodArray<(...), (...)>>;
available_climate_presets: ZodOptional<ZodArray<(...), (...)>>;
available_fan_mode_settings: ZodOptional<ZodArray<(...), (...)>>;
available_hvac_mode_settings: ZodOptional<ZodArray<(...), (...)>>;
current_climate_setting: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
default_climate_setting: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
fallback_climate_preset_key: ZodOptional<ZodNullable<(...)>>;
fan_mode_setting: ZodOptional<ZodEnum<(...)>>;
is_cooling: ZodOptional<ZodBoolean>;
is_fan_running: ZodOptional<ZodBoolean>;
is_heating: ZodOptional<ZodBoolean>;
is_temporary_manual_override_active: ZodOptional<ZodBoolean>;
max_cooling_set_point_celsius: ZodOptional<ZodNumber>;
max_cooling_set_point_fahrenheit: ZodOptional<ZodNumber>;
max_heating_set_point_celsius: ZodOptional<ZodNumber>;
max_heating_set_point_fahrenheit: ZodOptional<ZodNumber>;
min_cooling_set_point_celsius: ZodOptional<ZodNumber>;
min_cooling_set_point_fahrenheit: ZodOptional<ZodNumber>;
min_heating_cooling_delta_celsius: ZodOptional<ZodNumber>;
min_heating_cooling_delta_fahrenheit: ZodOptional<ZodNumber>;
min_heating_set_point_celsius: ZodOptional<ZodNumber>;
min_heating_set_point_fahrenheit: ZodOptional<ZodNumber>;
relative_humidity: ZodOptional<ZodNumber>;
temperature_celsius: ZodOptional<ZodNumber>;
temperature_fahrenheit: ZodOptional<ZodNumber>;
temperature_threshold: ZodOptional<ZodOptional<(...)>>;
thermostat_daily_programs: ZodOptional<ZodOptional<(...)>>;
thermostat_weekly_program: ZodOptional<ZodOptional<(...)>>;
},
"strip",
ZodTypeAny,
{
active_thermostat_schedule?: | null
| {
climate_preset_key: ...;
created_at: ...;
device_id: ...;
ends_at: ...;
errors: ...;
is_override_allowed?: ...;
max_override_period_minutes?: ...;
name: ...;
starts_at: ...;
thermostat_schedule_id: ...;
workspace_id: ...;
};
active_thermostat_schedule_id?: null
| string;
available_climate_preset_modes?: (...)[];
available_climate_presets?: (...)[];
available_fan_mode_settings?: (...)[];
available_hvac_mode_settings?: (...)[];
current_climate_setting?: {
can_delete?: ...;
can_edit?: ...;
can_program?: ...;
climate_preset_key?: ...;
climate_preset_mode?: ...;
cooling_set_point_celsius?: ...;
cooling_set_point_fahrenheit?: ...;
display_name?: ...;
ecobee_metadata?: ...;
fan_mode_setting?: ...;
heating_set_point_celsius?: ...;
heating_set_point_fahrenheit?: ...;
hvac_mode_setting?: ...;
manual_override_allowed?: ...;
name?: ...;
};
default_climate_setting?: {
can_delete?: ...;
can_edit?: ...;
can_program?: ...;
climate_preset_key?: ...;
climate_preset_mode?: ...;
cooling_set_point_celsius?: ...;
cooling_set_point_fahrenheit?: ...;
display_name?: ...;
ecobee_metadata?: ...;
fan_mode_setting?: ...;
heating_set_point_celsius?: ...;
heating_set_point_fahrenheit?: ...;
hvac_mode_setting?: ...;
manual_override_allowed?: ...;
name?: ...;
};
fallback_climate_preset_key?: null
| string;
fan_mode_setting?: "auto" | "on" | "circulate";
is_cooling?: boolean;
is_fan_running?: boolean;
is_heating?: boolean;
is_temporary_manual_override_active?: boolean;
max_cooling_set_point_celsius?: number;
max_cooling_set_point_fahrenheit?: number;
max_heating_set_point_celsius?: number;
max_heating_set_point_fahrenheit?: number;
min_cooling_set_point_celsius?: number;
min_cooling_set_point_fahrenheit?: number;
min_heating_cooling_delta_celsius?: number;
min_heating_cooling_delta_fahrenheit?: number;
min_heating_set_point_celsius?: number;
min_heating_set_point_fahrenheit?: number;
relative_humidity?: number;
temperature_celsius?: number;
temperature_fahrenheit?: number;
temperature_threshold?: {
lower_limit_celsius: ...;
lower_limit_fahrenheit: ...;
upper_limit_celsius: ...;
upper_limit_fahrenheit: ...;
};
thermostat_daily_programs?: (...)[];
thermostat_weekly_program?:
| null
| {
created_at: ...;
friday_program_id: ...;
monday_program_id: ...;
saturday_program_id: ...;
sunday_program_id: ...;
thursday_program_id: ...;
tuesday_program_id: ...;
wednesday_program_id: ...;
};
},
{
active_thermostat_schedule?: | null
| {
climate_preset_key: ...;
created_at: ...;
device_id: ...;
ends_at: ...;
errors: ...;
is_override_allowed?: ...;
max_override_period_minutes?: ...;
name: ...;
starts_at: ...;
thermostat_schedule_id: ...;
workspace_id: ...;
};
active_thermostat_schedule_id?: null
| string;
available_climate_preset_modes?: (...)[];
available_climate_presets?: (...)[];
available_fan_mode_settings?: (...)[];
available_hvac_mode_settings?: (...)[];
current_climate_setting?: {
can_delete?: ...;
can_edit?: ...;
can_program?: ...;
climate_preset_key?: ...;
climate_preset_mode?: ...;
cooling_set_point_celsius?: ...;
cooling_set_point_fahrenheit?: ...;
display_name?: ...;
ecobee_metadata?: ...;
fan_mode_setting?: ...;
heating_set_point_celsius?: ...;
heating_set_point_fahrenheit?: ...;
hvac_mode_setting?: ...;
manual_override_allowed?: ...;
name?: ...;
};
default_climate_setting?: {
can_delete?: ...;
can_edit?: ...;
can_program?: ...;
climate_preset_key?: ...;
climate_preset_mode?: ...;
cooling_set_point_celsius?: ...;
cooling_set_point_fahrenheit?: ...;
display_name?: ...;
ecobee_metadata?: ...;
fan_mode_setting?: ...;
heating_set_point_celsius?: ...;
heating_set_point_fahrenheit?: ...;
hvac_mode_setting?: ...;
manual_override_allowed?: ...;
name?: ...;
};
fallback_climate_preset_key?: null
| string;
fan_mode_setting?: "auto" | "on" | "circulate";
is_cooling?: boolean;
is_fan_running?: boolean;
is_heating?: boolean;
is_temporary_manual_override_active?: boolean;
max_cooling_set_point_celsius?: number;
max_cooling_set_point_fahrenheit?: number;
max_heating_set_point_celsius?: number;
max_heating_set_point_fahrenheit?: number;
min_cooling_set_point_celsius?: number;
min_cooling_set_point_fahrenheit?: number;
min_heating_cooling_delta_celsius?: number;
min_heating_cooling_delta_fahrenheit?: number;
min_heating_set_point_celsius?: number;
min_heating_set_point_fahrenheit?: number;
relative_humidity?: number;
temperature_celsius?: number;
temperature_fahrenheit?: number;
temperature_threshold?: {
lower_limit_celsius: ...;
lower_limit_fahrenheit: ...;
upper_limit_celsius: ...;
upper_limit_fahrenheit: ...;
};
thermostat_daily_programs?: (...)[];
thermostat_weekly_program?:
| null
| {
created_at: ...;
friday_program_id: ...;
monday_program_id: ...;
saturday_program_id: ...;
sunday_program_id: ...;
thursday_program_id: ...;
tuesday_program_id: ...;
wednesday_program_id: ...;
};
},
>,
>,
>;
warnings: ZodArray<
ZodDiscriminatedUnion<
"warning_code",
[
ZodObject<
{ created_at: ...; message: ... } & { warning_code: ... },
"strip",
ZodTypeAny,
{
created_at: string;
message: string;
warning_code: "partial_backup_access_code_pool";
},
{
created_at: string;
message: string;
warning_code: "partial_backup_access_code_pool";
},
>,
ZodObject<
{ created_at: ...; message: ... } & { warning_code: ... },
"strip",
ZodTypeAny,
{
created_at: string;
message: string;
warning_code: "many_active_backup_codes";
},
{
created_at: string;
message: string;
warning_code: "many_active_backup_codes";
},
>,
ZodObject<
{ created_at: ...; message: ... } & { warning_code: ... },
"strip",
ZodTypeAny,
{
created_at: string;
message: string;
warning_code: "wyze_device_missing_gateway";
},
{
created_at: string;
message: string;
warning_code: "wyze_device_missing_gateway";
},
>,
],
>,
"many",
>;
workspace_id: ZodString;
} & {
can_hvac_cool: ZodOptional<ZodBoolean>;
can_hvac_heat: ZodOptional<ZodBoolean>;
can_hvac_heat_cool: ZodOptional<ZodBoolean>;
can_program_offline_access_codes: ZodOptional<ZodBoolean>;
can_program_online_access_codes: ZodOptional<ZodBoolean>;
can_remotely_lock: ZodOptional<ZodBoolean>;
can_remotely_unlock: ZodOptional<ZodBoolean>;
can_simulate_connection: ZodOptional<ZodBoolean>;
can_simulate_disconnection: ZodOptional<ZodBoolean>;
can_simulate_removal: ZodOptional<ZodBoolean>;
can_turn_off_hvac: ZodOptional<ZodBoolean>;
can_unlock_with_code: ZodOptional<ZodBoolean>;
},
| "location"
| "device_id"
| "workspace_id"
| "created_at"
| "errors"
| "connected_account_id"
| "warnings"
| "device_type"
| "capabilities_supported",
> & {
is_managed: ZodLiteral<false>;
properties: ZodObject<
Pick<
{
accessory_keypad: ZodOptional<
ZodObject<
{
battery: ZodOptional<
ZodObject<(...), (...), (...), (...), (...)>,
>;
is_connected: ZodBoolean;
},
"strip",
ZodTypeAny,
{ battery?: { level: ... }; is_connected: boolean },
{ battery?: { level: ... }; is_connected: boolean },
>,
>;
appearance: ZodObject<
{ name: ZodString },
"strip",
ZodTypeAny,
{ name: string },
{ name: string },
>;
battery: ZodOptional<
ZodObject<
{
level: ZodNumber;
status: ZodEnum<[(...), (...), (...), (...)]>;
},
"strip",
ZodTypeAny,
{ level: number; status: "low"
| "full"
| "critical"
| "good" },
{ level: number; status: "low" | "full" | "critical" | "good" },
>,
>;
battery_level: ZodOptional<ZodNumber>;
currently_triggering_noise_threshold_ids: ZodOptional<
ZodArray<ZodString, "many">,
>;
has_direct_power: ZodOptional<ZodBoolean>;
image_alt_text: ZodOptional<ZodString>;
image_url: ZodOptional<ZodString>;
manufacturer: ZodOptional<ZodString>;
model: ZodObject<
{
accessory_keypad_supported: ZodOptional<ZodBoolean>;
can_connect_accessory_keypad: ZodOptional<ZodBoolean>;
display_name: ZodString;
has_built_in_keypad: ZodOptional<ZodBoolean>;
manufacturer_display_name: ZodString;
offline_access_codes_supported: ZodOptional<ZodBoolean>;
online_access_codes_supported: ZodOptional<ZodBoolean>;
},
"strip",
ZodTypeAny,
{
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
},
{
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
},
>;
name: ZodString;
noise_level_decibels: ZodOptional<ZodNumber>;
offline_access_codes_enabled: ZodOptional<ZodBoolean>;
online: ZodBoolean;
online_access_codes_enabled: ZodOptional<ZodBoolean>;
serial_number: ZodOptional<ZodString>;
supports_accessory_keypad: ZodOptional<ZodBoolean>;
supports_offline_access_codes: ZodOptional<ZodBoolean>;
},
| "name"
| "online"
| "battery"
| "model"
| "battery_level"
| "accessory_keypad"
| "manufacturer"
| "image_url"
| "image_alt_text"
| "online_access_codes_enabled"
| "offline_access_codes_enabled",
>,
"strip",
ZodTypeAny,
{
accessory_keypad?: {
battery?: { level: number };
is_connected: boolean;
};
battery?: {
level: number;
status: "low"
| "full"
| "critical"
| "good";
};
battery_level?: number;
image_alt_text?: string;
image_url?: string;
manufacturer?: string;
model: {
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
};
name: string;
offline_access_codes_enabled?: boolean;
online: boolean;
online_access_codes_enabled?: boolean;
},
{
accessory_keypad?: {
battery?: { level: number };
is_connected: boolean;
};
battery?: {
level: number;
status: "low"
| "full"
| "critical"
| "good";
};
battery_level?: number;
image_alt_text?: string;
image_url?: string;
manufacturer?: string;
model: {
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
};
name: string;
offline_access_codes_enabled?: boolean;
online: boolean;
online_access_codes_enabled?: boolean;
},
>;
} & {
can_hvac_cool: ZodOptional<ZodBoolean>;
can_hvac_heat: ZodOptional<ZodBoolean>;
can_hvac_heat_cool: ZodOptional<ZodBoolean>;
can_program_offline_access_codes: ZodOptional<ZodBoolean>;
can_program_online_access_codes: ZodOptional<ZodBoolean>;
can_remotely_lock: ZodOptional<ZodBoolean>;
can_remotely_unlock: ZodOptional<ZodBoolean>;
can_simulate_connection: ZodOptional<ZodBoolean>;
can_simulate_disconnection: ZodOptional<ZodBoolean>;
can_simulate_removal: ZodOptional<ZodBoolean>;
can_turn_off_hvac: ZodOptional<ZodBoolean>;
can_unlock_with_code: ZodOptional<ZodBoolean>;
},
"strip",
ZodTypeAny,
{
can_hvac_cool?: boolean;
can_hvac_heat?: boolean;
can_hvac_heat_cool?: boolean;
can_program_offline_access_codes?: boolean;
can_program_online_access_codes?: boolean;
can_remotely_lock?: boolean;
can_remotely_unlock?: boolean;
can_simulate_connection?: boolean;
can_simulate_disconnection?: boolean;
can_simulate_removal?: boolean;
can_turn_off_hvac?: boolean;
can_unlock_with_code?: boolean;
capabilities_supported: (
| "access_code"
| "lock"
| "noise_detection"
| "thermostat"
| "battery"
| "phone"
)[];
connected_account_id: string;
created_at: string;
device_id: string;
device_type: | LockDeviceTypeFromMapping
| NoiseSensorDeviceTypeFromMapping
| ThermostatDeviceTypeFromMapping
| PhoneDeviceTypeFromMapping;
errors: (
| {
created_at: string;
error_code: "account_disconnected";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "invalid_credentials";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "bridge_disconnected";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
salto_ks_metadata: {
sites: {
site_id: string;
site_name: string;
site_user_subscription_limit: number;
subscribed_site_user_count: number;
}[];
};
}
| {
created_at: string;
error_code: "device_offline";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "device_removed";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "hub_disconnected";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "device_disconnected";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "account_disconnected";
is_connected_account_error: true;
is_device_error: false;
message: string;
}
| {
created_at: string;
error_code: "empty_backup_access_code_pool";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "august_lock_not_authorized";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "august_lock_missing_bridge";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_connected_account_error: true;
is_device_error: false;
message: string;
}
| {
created_at: string;
error_code: "ttlock_lock_not_paired_to_gateway";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "missing_device_credentials";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "auxiliary_heat_running";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "subscription_required";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "lockly_missing_wifi_bridge";
is_device_error: true;
message: string;
}
)[];
is_managed: false;
location: null
| { location_name?: string; timezone?: string };
properties: {
accessory_keypad?: {
battery?: { level: number };
is_connected: boolean;
};
battery?: { level: number; status: "low"
| "full"
| "critical"
| "good" };
battery_level?: number;
image_alt_text?: string;
image_url?: string;
manufacturer?: string;
model: {
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
};
name: string;
offline_access_codes_enabled?: boolean;
online: boolean;
online_access_codes_enabled?: boolean;
};
warnings: (
| {
created_at: string;
message: string;
warning_code: "partial_backup_access_code_pool";
}
| {
created_at: string;
message: string;
warning_code: "many_active_backup_codes";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_office_mode";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_privacy_mode";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_subscription_limit_almost_reached";
}
| {
created_at: string;
message: string;
warning_code: "wyze_device_missing_gateway";
}
| {
created_at: string;
message: string;
warning_code: "functional_offline_device";
}
| {
created_at: string;
message: string;
warning_code: "third_party_integration_detected";
}
| {
created_at: string;
message: string;
warning_code: "nest_thermostat_in_manual_eco_mode";
}
| {
created_at: string;
message: string;
warning_code: "ttlock_lock_gateway_unlocking_not_enabled";
}
| {
created_at: string;
message: string;
warning_code: "ttlock_weak_gateway_signal";
}
| {
created_at: string;
message: string;
warning_code: "power_saving_mode";
}
| {
created_at: string;
message: string;
warning_code: "temperature_threshold_exceeded";
}
| {
created_at: string;
message: string;
warning_code: "device_communication_degraded";
}
| {
created_at: string;
message: string;
warning_code: "scheduled_maintenance_window";
}
| {
created_at: string;
message: string;
warning_code: "device_has_flaky_connection";
}
| {
created_at: string;
message: string;
warning_code: "lockly_time_zone_not_configured";
}
| {
created_at: string;
message: string;
warning_code: "unknown_issue_with_phone";
}
)[];
workspace_id: string;
},
{
can_hvac_cool?: boolean;
can_hvac_heat?: boolean;
can_hvac_heat_cool?: boolean;
can_program_offline_access_codes?: boolean;
can_program_online_access_codes?: boolean;
can_remotely_lock?: boolean;
can_remotely_unlock?: boolean;
can_simulate_connection?: boolean;
can_simulate_disconnection?: boolean;
can_simulate_removal?: boolean;
can_turn_off_hvac?: boolean;
can_unlock_with_code?: boolean;
capabilities_supported: (
| "access_code"
| "lock"
| "noise_detection"
| "thermostat"
| "battery"
| "phone"
)[];
connected_account_id: string;
created_at: string;
device_id: string;
device_type: | LockDeviceTypeFromMapping
| NoiseSensorDeviceTypeFromMapping
| ThermostatDeviceTypeFromMapping
| PhoneDeviceTypeFromMapping;
errors: (
| {
created_at: string;
error_code: "account_disconnected";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "invalid_credentials";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "bridge_disconnected";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
}
| {
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_bridge_error?: boolean;
is_connected_account_error?: boolean;
message: string;
salto_ks_metadata: {
sites: {
site_id: string;
site_name: string;
site_user_subscription_limit: number;
subscribed_site_user_count: number;
}[];
};
}
| {
created_at: string;
error_code: "device_offline";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "device_removed";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "hub_disconnected";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "device_disconnected";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "account_disconnected";
is_connected_account_error: true;
is_device_error: false;
message: string;
}
| {
created_at: string;
error_code: "empty_backup_access_code_pool";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "august_lock_not_authorized";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "august_lock_missing_bridge";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "salto_ks_subscription_limit_exceeded";
is_connected_account_error: true;
is_device_error: false;
message: string;
}
| {
created_at: string;
error_code: "ttlock_lock_not_paired_to_gateway";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "missing_device_credentials";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "auxiliary_heat_running";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "subscription_required";
is_device_error: true;
message: string;
}
| {
created_at: string;
error_code: "lockly_missing_wifi_bridge";
is_device_error: true;
message: string;
}
)[];
is_managed: false;
location: null
| { location_name?: string; timezone?: string };
properties: {
accessory_keypad?: {
battery?: { level: number };
is_connected: boolean;
};
battery?: { level: number; status: "low"
| "full"
| "critical"
| "good" };
battery_level?: number;
image_alt_text?: string;
image_url?: string;
manufacturer?: string;
model: {
accessory_keypad_supported?: boolean;
can_connect_accessory_keypad?: boolean;
display_name: string;
has_built_in_keypad?: boolean;
manufacturer_display_name: string;
offline_access_codes_supported?: boolean;
online_access_codes_supported?: boolean;
};
name: string;
offline_access_codes_enabled?: boolean;
online: boolean;
online_access_codes_enabled?: boolean;
};
warnings: (
| {
created_at: string;
message: string;
warning_code: "partial_backup_access_code_pool";
}
| {
created_at: string;
message: string;
warning_code: "many_active_backup_codes";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_office_mode";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_privacy_mode";
}
| {
created_at: string;
message: string;
warning_code: "salto_ks_subscription_limit_almost_reached";
}
| {
created_at: string;
message: string;
warning_code: "wyze_device_missing_gateway";
}
| {
created_at: string;
message: string;
warning_code: "functional_offline_device";
}
| {
created_at: string;
message: string;
warning_code: "third_party_integration_detected";
}
| {
created_at: string;
message: string;
warning_code: "nest_thermostat_in_manual_eco_mode";
}
| {
created_at: string;
message: string;
warning_code: "ttlock_lock_gateway_unlocking_not_enabled";
}
| {
created_at: string;
message: string;
warning_code: "ttlock_weak_gateway_signal";
}
| {
created_at: string;
message: string;
warning_code: "power_saving_mode";
}
| {
created_at: string;
message: string;
warning_code: "temperature_threshold_exceeded";
}
| {
created_at: string;
message: string;
warning_code: "device_communication_degraded";
}
| {
created_at: string;
message: string;
warning_code: "scheduled_maintenance_window";
}
| {
created_at: string;
message: string;
warning_code: "device_has_flaky_connection";
}
| {
created_at: string;
message: string;
warning_code: "lockly_time_zone_not_configured";
}
| {
created_at: string;
message: string;
warning_code: "unknown_issue_with_phone";
}
)[];
workspace_id: string;
},
> = ...