@seamapi/http - v1.121.0
    Preparing search index...

    Type Alias DeviceResource

    type DeviceResource = {
        can_configure_auto_lock?: boolean;
        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_program_thermostat_programs_as_different_each_day?: boolean;
        can_program_thermostat_programs_as_same_each_day?: boolean;
        can_program_thermostat_programs_as_weekday_weekend?: boolean;
        can_remotely_lock?: boolean;
        can_remotely_unlock?: boolean;
        can_run_thermostat_programs?: boolean;
        can_simulate_connection?: boolean;
        can_simulate_disconnection?: boolean;
        can_simulate_hub_connection?: boolean;
        can_simulate_hub_disconnection?: boolean;
        can_simulate_paid_subscription?: 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;
        custom_metadata: Record<string, unknown>;
        device_id: string;
        device_manufacturer?: {
            display_name: string;
            image_url?: string;
            manufacturer: string;
        };
        device_provider?: {
            device_provider_name: string;
            display_name: string;
            image_url?: string;
            provider_category: string;
        };
        device_type: | "akuvox_lock"
        | "august_lock"
        | "brivo_access_point"
        | "butterflymx_panel"
        | "avigilon_alta_entry"
        | "doorking_lock"
        | "genie_door"
        | "igloo_lock"
        | "linear_lock"
        | "lockly_lock"
        | "kwikset_lock"
        | "nuki_lock"
        | "salto_lock"
        | "schlage_lock"
        | "smartthings_lock"
        | "wyze_lock"
        | "yale_lock"
        | "two_n_intercom"
        | "controlbyweb_device"
        | "ttlock_lock"
        | "igloohome_lock"
        | "four_suites_door"
        | "dormakaba_oracode_door"
        | "tedee_lock"
        | "akiles_lock"
        | "ultraloq_lock"
        | "keyincode_lock"
        | "omnitec_lock"
        | "kisi_lock"
        | "keynest_key"
        | "noiseaware_activity_zone"
        | "minut_sensor"
        | "ecobee_thermostat"
        | "nest_thermostat"
        | "honeywell_resideo_thermostat"
        | "tado_thermostat"
        | "sensi_thermostat"
        | "smartthings_thermostat"
        | "ios_phone"
        | "android_phone"
        | "ring_camera";
        display_name: string;
        errors: (
            | {
                created_at: string;
                error_code: "account_disconnected";
                is_connected_account_error: boolean;
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "salto_ks_subscription_limit_exceeded";
                is_connected_account_error: boolean;
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "dormakaba_sites_disconnected";
                is_connected_account_error: boolean;
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "device_offline";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "device_removed";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "hub_disconnected";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "device_disconnected";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "empty_backup_access_code_pool";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "august_lock_not_authorized";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "missing_device_credentials";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "auxiliary_heat_running";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "subscription_required";
                is_device_error: boolean;
                message: string;
            }
            | {
                created_at: string;
                error_code: "bridge_disconnected";
                is_bridge_error?: boolean;
                is_connected_account_error?: boolean;
                message: string;
            }
        )[];
        is_managed: boolean;
        location?: {
            location_name?: string;
            time_zone?: string;
            timezone?: string;
        };
        nickname?: string;
        properties: {
            _experimental_supported_code_from_access_codes_lengths?: number[];
            accessory_keypad?: { battery?: { level: number }; is_connected: boolean };
            active_thermostat_schedule?:
                | {
                    climate_preset_key: string;
                    created_at: string;
                    device_id: string;
                    ends_at: string;
                    errors: { created_at: string; error_code: string; message: string }[];
                    is_override_allowed?: boolean;
                    max_override_period_minutes?: number | null;
                    name: string | null;
                    starts_at: string;
                    thermostat_schedule_id: string;
                    workspace_id: string;
                }
                | null;
            active_thermostat_schedule_id?: string
            | null;
            akiles_metadata?: {
                _member_group_id?: string;
                gadget_id?: string;
                gadget_name?: string;
                product_name?: string;
            };
            appearance: { name: string };
            assa_abloy_credential_service_metadata?: {
                endpoints?: { endpoint_id?: string; is_active?: boolean }[];
                has_active_endpoint?: boolean;
            };
            assa_abloy_vostio_metadata?: { encoder_name?: string };
            august_metadata?: {
                has_keypad?: boolean;
                house_id?: string;
                house_name?: string;
                keypad_battery_level?: string;
                lock_id?: string;
                lock_name?: string;
                model?: string;
            };
            auto_lock_delay_seconds?: number;
            auto_lock_enabled?: boolean;
            available_climate_preset_modes?: (
                "home"
                | "away"
                | "wake"
                | "sleep"
                | "occupied"
                | "unoccupied"
            )[];
            available_climate_presets?: {
                can_delete: boolean;
                can_edit: boolean;
                can_use_with_thermostat_daily_programs: boolean;
                climate_preset_key: string;
                climate_preset_mode?:
                    | "home"
                    | "away"
                    | "wake"
                    | "sleep"
                    | "occupied"
                    | "unoccupied";
                cooling_set_point_celsius?: number;
                cooling_set_point_fahrenheit?: number;
                display_name: string;
                ecobee_metadata?: {
                    climate_ref?: string;
                    is_optimized?: boolean;
                    owner?: "user"
                    | "system";
                };
                fan_mode_setting?: "auto"
                | "on"
                | "circulate";
                heating_set_point_celsius?: number;
                heating_set_point_fahrenheit?: number;
                hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
                manual_override_allowed: boolean;
                name?: string | null;
            }[];
            available_fan_mode_settings?: ("auto" | "on" | "circulate")[];
            available_hvac_mode_settings?: (
                "off"
                | "heat"
                | "cool"
                | "heat_cool"
                | "eco"
            )[];
            avigilon_alta_metadata?: {
                entry_name?: string;
                entry_relays_total_count?: number;
                org_name?: string;
                site_id?: number;
                site_name?: string;
                zone_id?: number;
                zone_name?: string;
            };
            backup_access_code_pool_enabled?: boolean;
            battery?: { level: number; status: "critical"
            | "low"
            | "good"
            | "full" };
            battery_level?: number;
            brivo_metadata?: { activation_enabled?: boolean; device_name?: string };
            code_constraints?: {
                constraint_type:
                    | "no_zeros"
                    | "cannot_start_with_12"
                    | "no_triple_consecutive_ints"
                    | "cannot_specify_pin_code"
                    | "pin_code_matches_existing_set"
                    | "start_date_in_future"
                    | "no_ascending_or_descending_sequence"
                    | "at_least_three_unique_digits"
                    | "cannot_contain_089"
                    | "cannot_contain_0789"
                    | "unique_first_four_digits"
                    | "no_all_same_digits"
                    | "name_length"
                    | "name_must_be_unique";
                max_length?: number;
                min_length?: number;
            }[];
            controlbyweb_metadata?: {
                device_id?: string;
                device_name?: string;
                relay_name?: string
                | null;
            };
            current_climate_setting?: {
                can_delete?: boolean;
                can_edit?: boolean;
                can_use_with_thermostat_daily_programs?: boolean;
                climate_preset_key?: string;
                climate_preset_mode?: | "home"
                | "away"
                | "wake"
                | "sleep"
                | "occupied"
                | "unoccupied";
                cooling_set_point_celsius?: number;
                cooling_set_point_fahrenheit?: number;
                display_name?: string;
                ecobee_metadata?: {
                    climate_ref?: string;
                    is_optimized?: boolean;
                    owner?: "user"
                    | "system";
                };
                fan_mode_setting?: "auto"
                | "on"
                | "circulate";
                heating_set_point_celsius?: number;
                heating_set_point_fahrenheit?: number;
                hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
                manual_override_allowed?: boolean;
                name?: string | null;
            };
            currently_triggering_noise_threshold_ids?: string[];
            default_climate_setting?: {
                can_delete?: boolean;
                can_edit?: boolean;
                can_use_with_thermostat_daily_programs?: boolean;
                climate_preset_key?: string;
                climate_preset_mode?: | "home"
                | "away"
                | "wake"
                | "sleep"
                | "occupied"
                | "unoccupied";
                cooling_set_point_celsius?: number;
                cooling_set_point_fahrenheit?: number;
                display_name?: string;
                ecobee_metadata?: {
                    climate_ref?: string;
                    is_optimized?: boolean;
                    owner?: "user"
                    | "system";
                };
                fan_mode_setting?: "auto"
                | "on"
                | "circulate";
                heating_set_point_celsius?: number;
                heating_set_point_fahrenheit?: number;
                hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
                manual_override_allowed?: boolean;
                name?: string | null;
            };
            door_open?: boolean;
            dormakaba_oracode_metadata?: {
                device_id?: {};
                door_id?: number;
                door_is_wireless?: boolean;
                door_name?: string;
                iana_timezone?: string;
                predefined_time_slots?: {
                    check_in_time?: string;
                    check_out_time?: string;
                    dormakaba_oracode_user_level_id?: string;
                    dormakaba_oracode_user_level_prefix?: number;
                    is_24_hour?: boolean;
                    is_biweekly_mode?: boolean;
                    is_master?: boolean;
                    is_one_shot?: boolean;
                    name?: string;
                    prefix?: number;
                }[];
                site_id?: number
                | null;
                site_name?: string;
            };
            ecobee_metadata?: { device_name?: string; ecobee_device_id?: string };
            fallback_climate_preset_key?: string | null;
            fan_mode_setting?: "auto" | "on" | "circulate";
            four_suites_metadata?: {
                device_id?: number;
                device_name?: string;
                reclose_delay_in_seconds?: number;
            };
            genie_metadata?: { device_name?: string; door_name?: string };
            has_direct_power?: boolean;
            has_native_entry_events?: boolean;
            honeywell_resideo_metadata?: {
                device_name?: string;
                honeywell_resideo_device_id?: string;
            };
            igloo_metadata?: {
                bridge_id?: string;
                device_id?: string;
                model?: string;
            };
            igloohome_metadata?: {
                bridge_id?: string;
                bridge_name?: string;
                device_id?: string;
                device_name?: string;
                is_accessory_keypad_linked_to_bridge?: boolean;
                keypad_id?: string;
            };
            image_alt_text?: string;
            image_url?: string;
            is_cooling?: boolean;
            is_fan_running?: boolean;
            is_heating?: boolean;
            is_temporary_manual_override_active?: boolean;
            keynest_metadata?: {
                address?: string
                | null;
                current_or_last_store_id?: number;
                current_status?: string | null;
                current_user_company?: string | null;
                current_user_email?: string | null;
                current_user_name?: string | null;
                current_user_phone_number?: string | null;
                default_office_id?: number;
                device_name?: string;
                fob_id?: number;
                handover_method?: string | null;
                has_photo?: boolean;
                is_quadient_locker?: boolean;
                key_id?: string;
                key_notes?: string | null;
                keynest_app_user?: string | null;
                last_movement?: string;
                property_id?: string | null;
                property_postcode?: string | null;
                status_type?: string;
                subscription_plan?: string;
            };
            keypad_battery?: { level: number };
            kisi_metadata?: {
                description?: string | null;
                lock_id?: number;
                lock_name?: string;
                place_name?: string | null;
            };
            korelock_metadata?: {
                device_id?: string;
                device_name?: string;
                firmware_version?: string;
                location_id?: string
                | null;
                model_code?: string;
                serial_number?: string;
                wifi_signal_strength?: number;
            };
            kwikset_metadata?: {
                device_id?: string;
                device_name?: string;
                model_number?: string;
            };
            locked?: boolean;
            lockly_metadata?: {
                device_id?: string;
                device_name?: string;
                model?: string;
            };
            manufacturer?: string;
            max_active_codes_supported?: number;
            max_cooling_set_point_celsius?: number;
            max_cooling_set_point_fahrenheit?: number;
            max_heating_set_point_celsius?: number;
            max_heating_set_point_fahrenheit?: number;
            max_thermostat_daily_program_periods_per_day?: number;
            max_unique_climate_presets_per_thermostat_weekly_program?: 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;
            minut_metadata?: {
                device_id?: string;
                device_name?: string;
                latest_sensor_values?: {
                    accelerometer_z?: { time?: string; value?: number };
                    humidity?: { time?: string; value?: number };
                    pressure?: { time?: string; value?: number };
                    sound?: { time?: string; value?: number };
                    temperature?: { time?: string; value?: number };
                };
            };
            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;
            nest_metadata?: {
                device_custom_name?: string;
                device_name?: string;
                display_name?: string;
                nest_device_id?: string;
            };
            noise_level_decibels?: number;
            noiseaware_metadata?: {
                device_id?: string;
                device_model?: "indoor"
                | "outdoor";
                device_name?: string;
                noise_level_decibel?: number;
                noise_level_nrs?: number;
            };
            nuki_metadata?: {
                device_id?: string;
                device_name?: string;
                keypad_2_paired?: boolean;
                keypad_battery_critical?: boolean;
                keypad_paired?: boolean;
            };
            offline_access_codes_enabled?: boolean;
            offline_time_frame_options?: {
                display_name: string;
                end_date_recurrence_rule?: string;
                matching_start_end_time?: boolean;
                max_duration?: string;
                min_duration?: string;
                start_date_recurrence_rule?: string;
                time_pairs?: {
                    display_name: string;
                    end_time: string;
                    start_time: string;
                }[];
                time_zone?: string;
            }[];
            omnitec_metadata?: {
                has_gateway?: boolean;
                lock_alias?: string;
                lock_id?: number;
                lock_mac?: string;
                lock_name?: string;
                time_zone?: string
                | null;
                timezone_raw_offset_ms?: number;
            };
            online: boolean;
            online_access_codes_enabled?: boolean;
            online_time_frame_options?: {
                display_name: string;
                end_date_recurrence_rule?: string;
                matching_start_end_time?: boolean;
                max_duration?: string;
                min_duration?: string;
                start_date_recurrence_rule?: string;
                time_pairs?: {
                    display_name: string;
                    end_time: string;
                    start_time: string;
                }[];
                time_zone?: string;
            }[];
            relative_humidity?: number;
            ring_metadata?: { device_id?: string; device_name?: string };
            salto_ks_metadata?: {
                battery_level?: string;
                customer_reference?: string;
                has_custom_pin_subscription?: boolean;
                lock_id?: string;
                lock_type?: string;
                locked_state?: string;
                model?: string;
                site_id?: string;
                site_name?: string;
            };
            salto_metadata?: {
                battery_level?: string;
                customer_reference?: string;
                lock_id?: string;
                lock_type?: string;
                locked_state?: string;
                model?: string;
                site_id?: string;
                site_name?: string;
            };
            salto_space_credential_service_metadata?: { has_active_phone?: boolean };
            schlage_metadata?: {
                device_id?: string;
                device_name?: string;
                model?: string;
            };
            seam_bridge_metadata?: {
                device_num?: number;
                name?: string;
                unlock_method?: "bridge"
                | "doorking";
            };
            sensi_metadata?: {
                device_id?: string;
                device_name?: string;
                dual_setpoints_not_supported?: boolean;
                product_type?: string;
            };
            serial_number?: string;
            smartthings_metadata?: {
                device_id?: string;
                device_name?: string;
                location_id?: string;
                model?: string;
            };
            supported_code_lengths?: number[];
            supports_accessory_keypad?: boolean;
            supports_backup_access_code_pool?: boolean;
            supports_offline_access_codes?: boolean;
            tado_metadata?: { device_type?: string; serial_no?: string };
            tedee_metadata?: {
                bridge_id?: number;
                bridge_name?: string;
                device_id?: number;
                device_model?: string;
                device_name?: string;
                keypad_id?: number;
                serial_number?: string;
            };
            temperature_celsius?: number;
            temperature_fahrenheit?: number;
            temperature_threshold?: {
                lower_limit_celsius: number
                | null;
                lower_limit_fahrenheit: number | null;
                upper_limit_celsius: number | null;
                upper_limit_fahrenheit: number | null;
            };
            thermostat_daily_program_period_precision_minutes?: number;
            thermostat_daily_programs?: {
                created_at: string;
                device_id: string;
                name: string
                | null;
                periods: { climate_preset_key: string; starts_at_time: string }[];
                thermostat_daily_program_id: string;
                workspace_id: string;
            }[];
            thermostat_weekly_program?: | {
                created_at: string;
                friday_program_id: string
                | null;
                monday_program_id: string | null;
                saturday_program_id: string | null;
                sunday_program_id: string | null;
                thursday_program_id: string | null;
                tuesday_program_id: string | null;
                wednesday_program_id: string | null;
            }
            | null;
            ttlock_metadata?: {
                feature_value?: string;
                features?: {
                    auto_lock_time_config?: boolean;
                    incomplete_keyboard_passcode?: boolean;
                    lock_command?: boolean;
                    passcode?: boolean;
                    passcode_management?: boolean;
                    unlock_via_gateway?: boolean;
                    wifi?: boolean;
                };
                has_gateway?: boolean;
                lock_alias?: string;
                lock_id?: number;
                timezone_raw_offset_ms?: number
                | null;
                wireless_keypads?: {
                    wireless_keypad_id?: number;
                    wireless_keypad_name?: string;
                }[];
            };
            two_n_metadata?: { device_id?: number; device_name?: string };
            ultraloq_metadata?: {
                device_id?: string;
                device_name?: string;
                device_type?: string;
                time_zone?: string | null;
            };
            visionline_metadata?: { encoder_id?: string };
            wyze_metadata?: {
                device_id?: string;
                device_info_model?: string;
                device_name?: string;
                keypad_uuid?: string;
                locker_status_hardlock?: number;
                product_model?: string;
                product_name?: string;
                product_type?: string;
            };
        };
        space_ids: string[];
        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: "third_party_integration_detected";
            }
            | {
                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: "salto_ks_office_mode";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "salto_ks_privacy_mode";
            }
            | { created_at: string; message: string; warning_code: "privacy_mode" }
            | {
                created_at: string;
                message: string;
                warning_code: "salto_ks_subscription_limit_almost_reached";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "salto_ks_lock_access_code_support_removed";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "unknown_issue_with_phone";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "lockly_time_zone_not_configured";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "ultraloq_time_zone_unknown";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "time_zone_unknown";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "time_zone_mismatch";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "two_n_device_missing_timezone";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "hub_required_for_additional_capabilities";
            }
            | { created_at: string; message: string; warning_code: "provider_issue" }
            | {
                created_at: string;
                message: string;
                warning_code: "keynest_unsupported_locker";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "accessory_keypad_setup_required";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "unreliable_online_status";
            }
            | {
                active_access_code_count: number;
                created_at: string;
                max_active_access_code_count: number;
                message: string;
                warning_code: "max_access_codes_reached";
            }
            | {
                created_at: string;
                message: string;
                warning_code: "insufficient_permissions";
            }
        )[];
        workspace_id: string;
    }
    Index

    Properties

    can_configure_auto_lock?: boolean
    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_program_thermostat_programs_as_different_each_day?: boolean
    can_program_thermostat_programs_as_same_each_day?: boolean
    can_program_thermostat_programs_as_weekday_weekend?: boolean
    can_remotely_lock?: boolean
    can_remotely_unlock?: boolean
    can_run_thermostat_programs?: boolean
    can_simulate_connection?: boolean
    can_simulate_disconnection?: boolean
    can_simulate_hub_connection?: boolean
    can_simulate_hub_disconnection?: boolean
    can_simulate_paid_subscription?: 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
    custom_metadata: Record<string, unknown>
    device_id: string
    device_manufacturer?: {
        display_name: string;
        image_url?: string;
        manufacturer: string;
    }
    device_provider?: {
        device_provider_name: string;
        display_name: string;
        image_url?: string;
        provider_category: string;
    }
    device_type:
        | "akuvox_lock"
        | "august_lock"
        | "brivo_access_point"
        | "butterflymx_panel"
        | "avigilon_alta_entry"
        | "doorking_lock"
        | "genie_door"
        | "igloo_lock"
        | "linear_lock"
        | "lockly_lock"
        | "kwikset_lock"
        | "nuki_lock"
        | "salto_lock"
        | "schlage_lock"
        | "smartthings_lock"
        | "wyze_lock"
        | "yale_lock"
        | "two_n_intercom"
        | "controlbyweb_device"
        | "ttlock_lock"
        | "igloohome_lock"
        | "four_suites_door"
        | "dormakaba_oracode_door"
        | "tedee_lock"
        | "akiles_lock"
        | "ultraloq_lock"
        | "keyincode_lock"
        | "omnitec_lock"
        | "kisi_lock"
        | "keynest_key"
        | "noiseaware_activity_zone"
        | "minut_sensor"
        | "ecobee_thermostat"
        | "nest_thermostat"
        | "honeywell_resideo_thermostat"
        | "tado_thermostat"
        | "sensi_thermostat"
        | "smartthings_thermostat"
        | "ios_phone"
        | "android_phone"
        | "ring_camera"
    display_name: string
    errors: (
        | {
            created_at: string;
            error_code: "account_disconnected";
            is_connected_account_error: boolean;
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "salto_ks_subscription_limit_exceeded";
            is_connected_account_error: boolean;
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "dormakaba_sites_disconnected";
            is_connected_account_error: boolean;
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "device_offline";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "device_removed";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "hub_disconnected";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "device_disconnected";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "empty_backup_access_code_pool";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "august_lock_not_authorized";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "missing_device_credentials";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "auxiliary_heat_running";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "subscription_required";
            is_device_error: boolean;
            message: string;
        }
        | {
            created_at: string;
            error_code: "bridge_disconnected";
            is_bridge_error?: boolean;
            is_connected_account_error?: boolean;
            message: string;
        }
    )[]
    is_managed: boolean
    location?: { location_name?: string; time_zone?: string; timezone?: string }
    nickname?: string
    properties: {
        _experimental_supported_code_from_access_codes_lengths?: number[];
        accessory_keypad?: { battery?: { level: number }; is_connected: boolean };
        active_thermostat_schedule?:
            | {
                climate_preset_key: string;
                created_at: string;
                device_id: string;
                ends_at: string;
                errors: { created_at: string; error_code: string; message: string }[];
                is_override_allowed?: boolean;
                max_override_period_minutes?: number | null;
                name: string | null;
                starts_at: string;
                thermostat_schedule_id: string;
                workspace_id: string;
            }
            | null;
        active_thermostat_schedule_id?: string
        | null;
        akiles_metadata?: {
            _member_group_id?: string;
            gadget_id?: string;
            gadget_name?: string;
            product_name?: string;
        };
        appearance: { name: string };
        assa_abloy_credential_service_metadata?: {
            endpoints?: { endpoint_id?: string; is_active?: boolean }[];
            has_active_endpoint?: boolean;
        };
        assa_abloy_vostio_metadata?: { encoder_name?: string };
        august_metadata?: {
            has_keypad?: boolean;
            house_id?: string;
            house_name?: string;
            keypad_battery_level?: string;
            lock_id?: string;
            lock_name?: string;
            model?: string;
        };
        auto_lock_delay_seconds?: number;
        auto_lock_enabled?: boolean;
        available_climate_preset_modes?: (
            "home"
            | "away"
            | "wake"
            | "sleep"
            | "occupied"
            | "unoccupied"
        )[];
        available_climate_presets?: {
            can_delete: boolean;
            can_edit: boolean;
            can_use_with_thermostat_daily_programs: boolean;
            climate_preset_key: string;
            climate_preset_mode?:
                | "home"
                | "away"
                | "wake"
                | "sleep"
                | "occupied"
                | "unoccupied";
            cooling_set_point_celsius?: number;
            cooling_set_point_fahrenheit?: number;
            display_name: string;
            ecobee_metadata?: {
                climate_ref?: string;
                is_optimized?: boolean;
                owner?: "user"
                | "system";
            };
            fan_mode_setting?: "auto"
            | "on"
            | "circulate";
            heating_set_point_celsius?: number;
            heating_set_point_fahrenheit?: number;
            hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
            manual_override_allowed: boolean;
            name?: string | null;
        }[];
        available_fan_mode_settings?: ("auto" | "on" | "circulate")[];
        available_hvac_mode_settings?: (
            "off"
            | "heat"
            | "cool"
            | "heat_cool"
            | "eco"
        )[];
        avigilon_alta_metadata?: {
            entry_name?: string;
            entry_relays_total_count?: number;
            org_name?: string;
            site_id?: number;
            site_name?: string;
            zone_id?: number;
            zone_name?: string;
        };
        backup_access_code_pool_enabled?: boolean;
        battery?: { level: number; status: "critical"
        | "low"
        | "good"
        | "full" };
        battery_level?: number;
        brivo_metadata?: { activation_enabled?: boolean; device_name?: string };
        code_constraints?: {
            constraint_type:
                | "no_zeros"
                | "cannot_start_with_12"
                | "no_triple_consecutive_ints"
                | "cannot_specify_pin_code"
                | "pin_code_matches_existing_set"
                | "start_date_in_future"
                | "no_ascending_or_descending_sequence"
                | "at_least_three_unique_digits"
                | "cannot_contain_089"
                | "cannot_contain_0789"
                | "unique_first_four_digits"
                | "no_all_same_digits"
                | "name_length"
                | "name_must_be_unique";
            max_length?: number;
            min_length?: number;
        }[];
        controlbyweb_metadata?: {
            device_id?: string;
            device_name?: string;
            relay_name?: string
            | null;
        };
        current_climate_setting?: {
            can_delete?: boolean;
            can_edit?: boolean;
            can_use_with_thermostat_daily_programs?: boolean;
            climate_preset_key?: string;
            climate_preset_mode?: | "home"
            | "away"
            | "wake"
            | "sleep"
            | "occupied"
            | "unoccupied";
            cooling_set_point_celsius?: number;
            cooling_set_point_fahrenheit?: number;
            display_name?: string;
            ecobee_metadata?: {
                climate_ref?: string;
                is_optimized?: boolean;
                owner?: "user"
                | "system";
            };
            fan_mode_setting?: "auto"
            | "on"
            | "circulate";
            heating_set_point_celsius?: number;
            heating_set_point_fahrenheit?: number;
            hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
            manual_override_allowed?: boolean;
            name?: string | null;
        };
        currently_triggering_noise_threshold_ids?: string[];
        default_climate_setting?: {
            can_delete?: boolean;
            can_edit?: boolean;
            can_use_with_thermostat_daily_programs?: boolean;
            climate_preset_key?: string;
            climate_preset_mode?: | "home"
            | "away"
            | "wake"
            | "sleep"
            | "occupied"
            | "unoccupied";
            cooling_set_point_celsius?: number;
            cooling_set_point_fahrenheit?: number;
            display_name?: string;
            ecobee_metadata?: {
                climate_ref?: string;
                is_optimized?: boolean;
                owner?: "user"
                | "system";
            };
            fan_mode_setting?: "auto"
            | "on"
            | "circulate";
            heating_set_point_celsius?: number;
            heating_set_point_fahrenheit?: number;
            hvac_mode_setting?: "off" | "heat" | "cool" | "heat_cool" | "eco";
            manual_override_allowed?: boolean;
            name?: string | null;
        };
        door_open?: boolean;
        dormakaba_oracode_metadata?: {
            device_id?: {};
            door_id?: number;
            door_is_wireless?: boolean;
            door_name?: string;
            iana_timezone?: string;
            predefined_time_slots?: {
                check_in_time?: string;
                check_out_time?: string;
                dormakaba_oracode_user_level_id?: string;
                dormakaba_oracode_user_level_prefix?: number;
                is_24_hour?: boolean;
                is_biweekly_mode?: boolean;
                is_master?: boolean;
                is_one_shot?: boolean;
                name?: string;
                prefix?: number;
            }[];
            site_id?: number
            | null;
            site_name?: string;
        };
        ecobee_metadata?: { device_name?: string; ecobee_device_id?: string };
        fallback_climate_preset_key?: string | null;
        fan_mode_setting?: "auto" | "on" | "circulate";
        four_suites_metadata?: {
            device_id?: number;
            device_name?: string;
            reclose_delay_in_seconds?: number;
        };
        genie_metadata?: { device_name?: string; door_name?: string };
        has_direct_power?: boolean;
        has_native_entry_events?: boolean;
        honeywell_resideo_metadata?: {
            device_name?: string;
            honeywell_resideo_device_id?: string;
        };
        igloo_metadata?: { bridge_id?: string; device_id?: string; model?: string };
        igloohome_metadata?: {
            bridge_id?: string;
            bridge_name?: string;
            device_id?: string;
            device_name?: string;
            is_accessory_keypad_linked_to_bridge?: boolean;
            keypad_id?: string;
        };
        image_alt_text?: string;
        image_url?: string;
        is_cooling?: boolean;
        is_fan_running?: boolean;
        is_heating?: boolean;
        is_temporary_manual_override_active?: boolean;
        keynest_metadata?: {
            address?: string
            | null;
            current_or_last_store_id?: number;
            current_status?: string | null;
            current_user_company?: string | null;
            current_user_email?: string | null;
            current_user_name?: string | null;
            current_user_phone_number?: string | null;
            default_office_id?: number;
            device_name?: string;
            fob_id?: number;
            handover_method?: string | null;
            has_photo?: boolean;
            is_quadient_locker?: boolean;
            key_id?: string;
            key_notes?: string | null;
            keynest_app_user?: string | null;
            last_movement?: string;
            property_id?: string | null;
            property_postcode?: string | null;
            status_type?: string;
            subscription_plan?: string;
        };
        keypad_battery?: { level: number };
        kisi_metadata?: {
            description?: string | null;
            lock_id?: number;
            lock_name?: string;
            place_name?: string | null;
        };
        korelock_metadata?: {
            device_id?: string;
            device_name?: string;
            firmware_version?: string;
            location_id?: string
            | null;
            model_code?: string;
            serial_number?: string;
            wifi_signal_strength?: number;
        };
        kwikset_metadata?: {
            device_id?: string;
            device_name?: string;
            model_number?: string;
        };
        locked?: boolean;
        lockly_metadata?: {
            device_id?: string;
            device_name?: string;
            model?: string;
        };
        manufacturer?: string;
        max_active_codes_supported?: number;
        max_cooling_set_point_celsius?: number;
        max_cooling_set_point_fahrenheit?: number;
        max_heating_set_point_celsius?: number;
        max_heating_set_point_fahrenheit?: number;
        max_thermostat_daily_program_periods_per_day?: number;
        max_unique_climate_presets_per_thermostat_weekly_program?: 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;
        minut_metadata?: {
            device_id?: string;
            device_name?: string;
            latest_sensor_values?: {
                accelerometer_z?: { time?: string; value?: number };
                humidity?: { time?: string; value?: number };
                pressure?: { time?: string; value?: number };
                sound?: { time?: string; value?: number };
                temperature?: { time?: string; value?: number };
            };
        };
        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;
        nest_metadata?: {
            device_custom_name?: string;
            device_name?: string;
            display_name?: string;
            nest_device_id?: string;
        };
        noise_level_decibels?: number;
        noiseaware_metadata?: {
            device_id?: string;
            device_model?: "indoor"
            | "outdoor";
            device_name?: string;
            noise_level_decibel?: number;
            noise_level_nrs?: number;
        };
        nuki_metadata?: {
            device_id?: string;
            device_name?: string;
            keypad_2_paired?: boolean;
            keypad_battery_critical?: boolean;
            keypad_paired?: boolean;
        };
        offline_access_codes_enabled?: boolean;
        offline_time_frame_options?: {
            display_name: string;
            end_date_recurrence_rule?: string;
            matching_start_end_time?: boolean;
            max_duration?: string;
            min_duration?: string;
            start_date_recurrence_rule?: string;
            time_pairs?: {
                display_name: string;
                end_time: string;
                start_time: string;
            }[];
            time_zone?: string;
        }[];
        omnitec_metadata?: {
            has_gateway?: boolean;
            lock_alias?: string;
            lock_id?: number;
            lock_mac?: string;
            lock_name?: string;
            time_zone?: string
            | null;
            timezone_raw_offset_ms?: number;
        };
        online: boolean;
        online_access_codes_enabled?: boolean;
        online_time_frame_options?: {
            display_name: string;
            end_date_recurrence_rule?: string;
            matching_start_end_time?: boolean;
            max_duration?: string;
            min_duration?: string;
            start_date_recurrence_rule?: string;
            time_pairs?: {
                display_name: string;
                end_time: string;
                start_time: string;
            }[];
            time_zone?: string;
        }[];
        relative_humidity?: number;
        ring_metadata?: { device_id?: string; device_name?: string };
        salto_ks_metadata?: {
            battery_level?: string;
            customer_reference?: string;
            has_custom_pin_subscription?: boolean;
            lock_id?: string;
            lock_type?: string;
            locked_state?: string;
            model?: string;
            site_id?: string;
            site_name?: string;
        };
        salto_metadata?: {
            battery_level?: string;
            customer_reference?: string;
            lock_id?: string;
            lock_type?: string;
            locked_state?: string;
            model?: string;
            site_id?: string;
            site_name?: string;
        };
        salto_space_credential_service_metadata?: { has_active_phone?: boolean };
        schlage_metadata?: {
            device_id?: string;
            device_name?: string;
            model?: string;
        };
        seam_bridge_metadata?: {
            device_num?: number;
            name?: string;
            unlock_method?: "bridge"
            | "doorking";
        };
        sensi_metadata?: {
            device_id?: string;
            device_name?: string;
            dual_setpoints_not_supported?: boolean;
            product_type?: string;
        };
        serial_number?: string;
        smartthings_metadata?: {
            device_id?: string;
            device_name?: string;
            location_id?: string;
            model?: string;
        };
        supported_code_lengths?: number[];
        supports_accessory_keypad?: boolean;
        supports_backup_access_code_pool?: boolean;
        supports_offline_access_codes?: boolean;
        tado_metadata?: { device_type?: string; serial_no?: string };
        tedee_metadata?: {
            bridge_id?: number;
            bridge_name?: string;
            device_id?: number;
            device_model?: string;
            device_name?: string;
            keypad_id?: number;
            serial_number?: string;
        };
        temperature_celsius?: number;
        temperature_fahrenheit?: number;
        temperature_threshold?: {
            lower_limit_celsius: number
            | null;
            lower_limit_fahrenheit: number | null;
            upper_limit_celsius: number | null;
            upper_limit_fahrenheit: number | null;
        };
        thermostat_daily_program_period_precision_minutes?: number;
        thermostat_daily_programs?: {
            created_at: string;
            device_id: string;
            name: string
            | null;
            periods: { climate_preset_key: string; starts_at_time: string }[];
            thermostat_daily_program_id: string;
            workspace_id: string;
        }[];
        thermostat_weekly_program?: | {
            created_at: string;
            friday_program_id: string
            | null;
            monday_program_id: string | null;
            saturday_program_id: string | null;
            sunday_program_id: string | null;
            thursday_program_id: string | null;
            tuesday_program_id: string | null;
            wednesday_program_id: string | null;
        }
        | null;
        ttlock_metadata?: {
            feature_value?: string;
            features?: {
                auto_lock_time_config?: boolean;
                incomplete_keyboard_passcode?: boolean;
                lock_command?: boolean;
                passcode?: boolean;
                passcode_management?: boolean;
                unlock_via_gateway?: boolean;
                wifi?: boolean;
            };
            has_gateway?: boolean;
            lock_alias?: string;
            lock_id?: number;
            timezone_raw_offset_ms?: number
            | null;
            wireless_keypads?: {
                wireless_keypad_id?: number;
                wireless_keypad_name?: string;
            }[];
        };
        two_n_metadata?: { device_id?: number; device_name?: string };
        ultraloq_metadata?: {
            device_id?: string;
            device_name?: string;
            device_type?: string;
            time_zone?: string | null;
        };
        visionline_metadata?: { encoder_id?: string };
        wyze_metadata?: {
            device_id?: string;
            device_info_model?: string;
            device_name?: string;
            keypad_uuid?: string;
            locker_status_hardlock?: number;
            product_model?: string;
            product_name?: string;
            product_type?: string;
        };
    }
    space_ids: string[]
    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: "third_party_integration_detected";
        }
        | {
            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: "salto_ks_office_mode";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "salto_ks_privacy_mode";
        }
        | { created_at: string; message: string; warning_code: "privacy_mode" }
        | {
            created_at: string;
            message: string;
            warning_code: "salto_ks_subscription_limit_almost_reached";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "salto_ks_lock_access_code_support_removed";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "unknown_issue_with_phone";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "lockly_time_zone_not_configured";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "ultraloq_time_zone_unknown";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "time_zone_unknown";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "time_zone_mismatch";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "two_n_device_missing_timezone";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "hub_required_for_additional_capabilities";
        }
        | { created_at: string; message: string; warning_code: "provider_issue" }
        | {
            created_at: string;
            message: string;
            warning_code: "keynest_unsupported_locker";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "accessory_keypad_setup_required";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "unreliable_online_status";
        }
        | {
            active_access_code_count: number;
            created_at: string;
            max_active_access_code_count: number;
            message: string;
            warning_code: "max_access_codes_reached";
        }
        | {
            created_at: string;
            message: string;
            warning_code: "insufficient_permissions";
        }
    )[]
    workspace_id: string