@seamapi/types 1.438.0 → 1.440.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +2 -1
  2. package/dist/connect.cjs +216 -1
  3. package/dist/connect.cjs.map +1 -1
  4. package/dist/connect.d.cts +7321 -141
  5. package/dist/index.cjs +57327 -3
  6. package/dist/index.cjs.map +1 -1
  7. package/dist/index.d.cts +2 -3
  8. package/index.d.ts +1 -2
  9. package/index.js +1 -1
  10. package/index.js.map +1 -1
  11. package/lib/index.d.ts +1 -0
  12. package/lib/index.js +2 -0
  13. package/lib/index.js.map +1 -0
  14. package/lib/seam/connect/internal/schemas.d.ts +1 -1
  15. package/lib/seam/connect/internal/schemas.js +1 -1
  16. package/lib/seam/connect/internal/schemas.js.map +1 -1
  17. package/lib/seam/connect/model-types.d.ts +1 -1
  18. package/lib/seam/connect/models/batches/batch.d.ts +5669 -0
  19. package/lib/seam/connect/models/batches/batch.js +8 -0
  20. package/lib/seam/connect/models/batches/batch.js.map +1 -0
  21. package/lib/seam/connect/models/batches/index.d.ts +2 -0
  22. package/lib/seam/connect/models/batches/index.js +3 -0
  23. package/lib/seam/connect/models/batches/index.js.map +1 -0
  24. package/lib/seam/connect/models/batches/spaces.d.ts +5669 -0
  25. package/lib/seam/connect/models/batches/spaces.js +13 -0
  26. package/lib/seam/connect/models/batches/spaces.js.map +1 -0
  27. package/lib/seam/connect/models/events/seam-event.js +1 -1
  28. package/lib/seam/connect/models/index.d.ts +1 -0
  29. package/lib/seam/connect/models/index.js +1 -0
  30. package/lib/seam/connect/models/index.js.map +1 -1
  31. package/lib/seam/connect/openapi.d.ts +223 -0
  32. package/lib/seam/connect/openapi.js +183 -0
  33. package/lib/seam/connect/openapi.js.map +1 -1
  34. package/lib/seam/connect/route-types.d.ts +1287 -0
  35. package/lib/seam/connect/schemas.d.ts +1 -1
  36. package/lib/seam/connect/schemas.js +1 -1
  37. package/lib/seam/connect/schemas.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/index.ts +1 -1
  40. package/src/lib/index.ts +1 -0
  41. package/src/lib/seam/connect/internal/schemas.ts +1 -0
  42. package/src/lib/seam/connect/model-types.ts +1 -0
  43. package/src/lib/seam/connect/models/batches/batch.ts +12 -0
  44. package/src/lib/seam/connect/models/batches/index.ts +2 -0
  45. package/src/lib/seam/connect/models/batches/spaces.ts +16 -0
  46. package/src/lib/seam/connect/models/events/seam-event.ts +1 -1
  47. package/src/lib/seam/connect/models/index.ts +1 -0
  48. package/src/lib/seam/connect/openapi.ts +185 -0
  49. package/src/lib/seam/connect/route-types.ts +1632 -0
  50. package/src/lib/seam/connect/schemas.ts +1 -0
@@ -54966,6 +54966,1638 @@ export interface Routes {
54966
54966
  }
54967
54967
  }
54968
54968
  }
54969
+ '/spaces/get_related': {
54970
+ route: '/spaces/get_related'
54971
+ method: 'GET' | 'POST'
54972
+ queryParams: {}
54973
+ jsonBody: {}
54974
+ commonParams: {
54975
+ /** IDs of the spaces that you want to get along with their related resources. */
54976
+ space_ids: string[]
54977
+ include?: Array<'spaces' | 'devices' | 'acs_entrances'> | undefined
54978
+ exclude?: Array<'spaces' | 'devices' | 'acs_entrances'> | undefined
54979
+ }
54980
+ formData: {}
54981
+ jsonResponse: {
54982
+ /** Represents a resource batch. */
54983
+ batch: {
54984
+ batch_type: 'spaces'
54985
+ spaces?:
54986
+ | Array<{
54987
+ /** ID of the space. */
54988
+ space_id: string
54989
+ /** ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) associated with the space. */
54990
+ workspace_id: string
54991
+ /** Name of the space. */
54992
+ name: string
54993
+ /** Display name for the space. */
54994
+ display_name: string
54995
+ /** Date and time at which the space was created. */
54996
+ created_at: string
54997
+ }>
54998
+ | undefined
54999
+ devices?:
55000
+ | Array<{
55001
+ /** ID of the device. */
55002
+ device_id: string
55003
+ /** Type of the device. */
55004
+ device_type:
55005
+ | (
55006
+ | 'akuvox_lock'
55007
+ | 'august_lock'
55008
+ | 'brivo_access_point'
55009
+ | 'butterflymx_panel'
55010
+ | 'avigilon_alta_entry'
55011
+ | 'doorking_lock'
55012
+ | 'genie_door'
55013
+ | 'igloo_lock'
55014
+ | 'linear_lock'
55015
+ | 'lockly_lock'
55016
+ | 'kwikset_lock'
55017
+ | 'nuki_lock'
55018
+ | 'salto_lock'
55019
+ | 'schlage_lock'
55020
+ | 'seam_relay'
55021
+ | 'smartthings_lock'
55022
+ | 'wyze_lock'
55023
+ | 'yale_lock'
55024
+ | 'two_n_intercom'
55025
+ | 'controlbyweb_device'
55026
+ | 'ttlock_lock'
55027
+ | 'igloohome_lock'
55028
+ | 'hubitat_lock'
55029
+ | 'four_suites_door'
55030
+ | 'dormakaba_oracode_door'
55031
+ | 'tedee_lock'
55032
+ | 'akiles_lock'
55033
+ )
55034
+ | ('noiseaware_activity_zone' | 'minut_sensor')
55035
+ | (
55036
+ | 'ecobee_thermostat'
55037
+ | 'nest_thermostat'
55038
+ | 'honeywell_resideo_thermostat'
55039
+ | 'tado_thermostat'
55040
+ | 'sensi_thermostat'
55041
+ | 'smartthings_thermostat'
55042
+ )
55043
+ | ('ios_phone' | 'android_phone')
55044
+ /** Optional nickname to describe the device, settable through Seam. */
55045
+ nickname?: string | undefined
55046
+ /** Display name of the device, defaults to nickname (if it is set) or `properties.appearance.name`, otherwise. Enables administrators and users to identify the device easily, especially when there are numerous devices. */
55047
+ display_name: string
55048
+ /**
55049
+ Collection of capabilities that the device supports when connected to Seam. Values are `access_code`, which indicates that the device can manage and utilize digital PIN codes for secure access; `lock`, which indicates that the device controls a door locking mechanism, enabling the remote opening and closing of doors and other entry points; `noise_detection`, which indicates that the device supports monitoring and responding to ambient noise levels; `thermostat`, which indicates that the device can regulate and adjust indoor temperatures; `battery`, which indicates that the device can manage battery life and health; and `phone`, which indicates that the device is a mobile device, such as a smartphone. **Important:** Superseded by [capability flags](https://docs.seam.co/latest/capability-guides/device-and-system-capabilities#capability-flags).
55050
+ */
55051
+ capabilities_supported: Array<
55052
+ | 'access_code'
55053
+ | 'lock'
55054
+ | 'noise_detection'
55055
+ | 'thermostat'
55056
+ | 'battery'
55057
+ | 'phone'
55058
+ >
55059
+ /** Properties of the device. */
55060
+ properties: (({
55061
+ /** Indicates whether the device is online. */
55062
+ online: boolean
55063
+ /** Name of the device.
55064
+ * @deprecated use device.display_name instead */
55065
+ name: string
55066
+ /** Accessory keypad properties and state. */
55067
+ accessory_keypad?:
55068
+ | {
55069
+ /** Indicates if an accessory keypad is connected to the device.
55070
+ */
55071
+ is_connected: boolean
55072
+ /** Keypad battery properties.
55073
+ */
55074
+ battery?:
55075
+ | {
55076
+ level: number
55077
+ }
55078
+ | undefined
55079
+ }
55080
+ | undefined
55081
+ /** Appearance-related properties, as reported by the device. */
55082
+ appearance: {
55083
+ /** Name of the device as seen from the provider API and application, not settable through Seam. */
55084
+ name: string
55085
+ }
55086
+ /** Device model-related properties. */
55087
+ model: {
55088
+ /**
55089
+ Indicates whether the device can connect a accessory keypad.
55090
+ */
55091
+ can_connect_accessory_keypad?: boolean | undefined
55092
+ /**
55093
+ Display name of the device model.
55094
+ */
55095
+ display_name: string
55096
+ /**
55097
+ Display name that corresponds to the manufacturer-specific terminology for the device.
55098
+ */
55099
+ manufacturer_display_name: string
55100
+ /**
55101
+ Indicates whether the device has a built in accessory keypad.
55102
+ */
55103
+ has_built_in_keypad?: boolean | undefined
55104
+ /**
55105
+ * @deprecated use device.can_program_offline_access_codes. */
55106
+ offline_access_codes_supported?: boolean | undefined
55107
+ /**
55108
+ * @deprecated use device.can_program_online_access_codes. */
55109
+ online_access_codes_supported?: boolean | undefined
55110
+ /**
55111
+ * @deprecated use device.properties.model.can_connect_accessory_keypad */
55112
+ accessory_keypad_supported?: boolean | undefined
55113
+ }
55114
+ /** Indicates whether the device has direct power. */
55115
+ has_direct_power?: boolean | undefined
55116
+ /** Indicates the battery level of the device as a decimal value between 0 and 1, inclusive. */
55117
+ battery_level?: number | undefined
55118
+ /** Represents the current status of the battery charge level. */
55119
+ battery?:
55120
+ | {
55121
+ /** Battery charge level as a value between 0 and 1, inclusive.
55122
+ */
55123
+ level: number
55124
+ /** Represents the current status of the battery charge level. Values are `critical`, which indicates an extremely low level, suggesting imminent shutdown or an urgent need for charging; `low`, which signifies that the battery is under the preferred threshold and should be charged soon; `good`, which denotes a satisfactory charge level, adequate for normal use without the immediate need for recharging; and `full`, which represents a battery that is fully charged, providing the maximum duration of usage.
55125
+ */
55126
+ status: 'critical' | 'low' | 'good' | 'full'
55127
+ }
55128
+ | undefined
55129
+ /** Manufacturer of the device. When a device, such as a smart lock, is connected through a smart hub, the manufacturer of the device might be different from that of the smart hub. */
55130
+ manufacturer?: string | undefined
55131
+ /** Image URL for the device. */
55132
+ image_url?: string | undefined
55133
+ /** Alt text for the device image. */
55134
+ image_alt_text?: string | undefined
55135
+ /** Serial number of the device. */
55136
+ serial_number?: string | undefined
55137
+ /** Indicates whether it is currently possible to use online access codes for the device. */
55138
+ online_access_codes_enabled?: boolean | undefined
55139
+ /** Indicates whether it is currently possible to use offline access codes for the device. */
55140
+ offline_access_codes_enabled?: boolean | undefined
55141
+ /**
55142
+ * @deprecated use device.properties.model.can_connect_accessory_keypad */
55143
+ supports_accessory_keypad?: boolean | undefined
55144
+ /**
55145
+ * @deprecated use offline_access_codes_enabled */
55146
+ supports_offline_access_codes?: boolean | undefined
55147
+ /** Indicates current noise level in decibels, if the device supports noise detection. */
55148
+ noise_level_decibels?: number | undefined
55149
+ /** Array of noise threshold IDs that are currently triggering. */
55150
+ currently_triggering_noise_threshold_ids?: string[] | undefined
55151
+ } & {
55152
+ /** ASSA ABLOY Credential Service metadata for the phone. */
55153
+ assa_abloy_credential_service_metadata?:
55154
+ | (
55155
+ | {
55156
+ /** Indicates whether the credential service has active endpoints associated with the phone. */
55157
+ has_active_endpoint: boolean
55158
+ /** Endpoints associated with the phone. */
55159
+ endpoints: Array<{
55160
+ /** ID of the associated endpoint. */
55161
+ endpoint_id: string
55162
+ /** Indicated whether the endpoint is active. */
55163
+ is_active: boolean
55164
+ }>
55165
+ }
55166
+ | undefined
55167
+ )
55168
+ | undefined
55169
+ /** Salto Space credential service metadata for the phone. */
55170
+ salto_space_credential_service_metadata?:
55171
+ | (
55172
+ | {
55173
+ /** Indicates whether the credential service has an active associated phone. */
55174
+ has_active_phone: boolean
55175
+ }
55176
+ | undefined
55177
+ )
55178
+ | undefined
55179
+ }) & {
55180
+ /** Metadata for an August device. */
55181
+ august_metadata?:
55182
+ | {
55183
+ /** Lock ID for an August device. */
55184
+ lock_id: string
55185
+ /** Lock name for an August device. */
55186
+ lock_name: string
55187
+ /** House name for an August device. */
55188
+ house_name: string
55189
+ /** Indicates whether an August device has a keypad. */
55190
+ has_keypad: boolean
55191
+ /** Keypad battery level for an August device. */
55192
+ keypad_battery_level?: string | undefined
55193
+ /** Model for an August device. */
55194
+ model?: string | undefined
55195
+ /** House ID for an August device. */
55196
+ house_id?: string | undefined
55197
+ }
55198
+ | undefined
55199
+ /** Metadata for an Avigilon Alta system. */
55200
+ avigilon_alta_metadata?:
55201
+ | {
55202
+ /** Entry name for an Avigilon Alta system. */
55203
+ entry_name: string
55204
+ /** Organization name for an Avigilon Alta system. */
55205
+ org_name: string
55206
+ /** Zone ID for an Avigilon Alta system. */
55207
+ zone_id: number
55208
+ /** Zone name for an Avigilon Alta system. */
55209
+ zone_name: string
55210
+ /** Site ID for an Avigilon Alta system. */
55211
+ site_id: number
55212
+ /** Site name for an Avigilon Alta system. */
55213
+ site_name: string
55214
+ /** Total count of entry relays for an Avigilon Alta system. */
55215
+ entry_relays_total_count: number
55216
+ }
55217
+ | undefined
55218
+ /** Metadata for a Schlage device. */
55219
+ schlage_metadata?:
55220
+ | {
55221
+ /** Device ID for a Schlage device. */
55222
+ device_id: string
55223
+ /** Device name for a Schlage device. */
55224
+ device_name: string
55225
+ /** Model for a Schlage device. */
55226
+ model?: string | undefined
55227
+ }
55228
+ | undefined
55229
+ /** Metadata for a SmartThings device. */
55230
+ smartthings_metadata?:
55231
+ | {
55232
+ /** Device ID for a SmartThings device. */
55233
+ device_id: string
55234
+ /** Device name for a SmartThings device. */
55235
+ device_name: string
55236
+ /** Model for a SmartThings device. */
55237
+ model?: string | undefined
55238
+ /** Location ID for a SmartThings device. */
55239
+ location_id?: string | undefined
55240
+ }
55241
+ | undefined
55242
+ /** Metadata for a Lockly device. */
55243
+ lockly_metadata?:
55244
+ | {
55245
+ /** Device ID for a Lockly device. */
55246
+ device_id: string
55247
+ /** Device name for a Lockly device. */
55248
+ device_name: string
55249
+ /** Model for a Lockly device. */
55250
+ model?: string | undefined
55251
+ }
55252
+ | undefined
55253
+ /** Metadata for a Nuki device. */
55254
+ nuki_metadata?:
55255
+ | {
55256
+ /** Device ID for a Nuki device. */
55257
+ device_id: string
55258
+ /** Device name for a Nuki device. */
55259
+ device_name: string
55260
+ /** Indicates whether the keypad battery is in a critical state for a Nuki device. */
55261
+ keypad_battery_critical?: boolean | undefined
55262
+ /** Indicates whether the keypad is paired for a Nuki device. */
55263
+ keypad_paired?: boolean | undefined
55264
+ /** Indicates whether keypad 2 is paired for a Nuki device. */
55265
+ keypad_2_paired?: boolean | undefined
55266
+ }
55267
+ | undefined
55268
+ /** Metadata for a Kwikset device. */
55269
+ kwikset_metadata?:
55270
+ | {
55271
+ /** Device ID for a Kwikset device. */
55272
+ device_id: string
55273
+ /** Device name for a Kwikset device. */
55274
+ device_name: string
55275
+ /** Model number for a Kwikset device. */
55276
+ model_number: string
55277
+ }
55278
+ | undefined
55279
+ /** Metada for a Salto device.
55280
+ * @deprecated Use `salto_ks_metadata ` instead. */
55281
+ salto_metadata?:
55282
+ | {
55283
+ /** Lock ID for a Salto device. */
55284
+ lock_id: string
55285
+ /** Customer reference for a Salto device. */
55286
+ customer_reference: string
55287
+ /** Lock type for a Salto device. */
55288
+ lock_type: string
55289
+ /** Battery level for a Salto device. */
55290
+ battery_level: string
55291
+ /** Locked state for a Salto device. */
55292
+ locked_state: string
55293
+ /** Model for a Salto device. */
55294
+ model?: string | undefined
55295
+ }
55296
+ | undefined
55297
+ /** Metadata for a Salto KS device. */
55298
+ salto_ks_metadata?:
55299
+ | {
55300
+ /** Lock ID for a Salto KS device. */
55301
+ lock_id: string
55302
+ /** Customer reference for a Salto KS device. */
55303
+ customer_reference: string
55304
+ /** Lock type for a Salto KS device. */
55305
+ lock_type: string
55306
+ /** Battery level for a Salto KS device. */
55307
+ battery_level: string
55308
+ /** Locked state for a Salto KS device. */
55309
+ locked_state: string
55310
+ /** Model for a Salto KS device. */
55311
+ model?: string | undefined
55312
+ }
55313
+ | undefined
55314
+ /** Metadata for a Genie device. */
55315
+ genie_metadata?:
55316
+ | {
55317
+ /** Lock name for a Genie device. */
55318
+ device_name: string
55319
+ /** Door name for a Genie device. */
55320
+ door_name: string
55321
+ }
55322
+ | undefined
55323
+ /** Metadata for a Brivo device. */
55324
+ brivo_metadata?:
55325
+ | {
55326
+ /** Device name for a Brivo device. */
55327
+ device_name: string
55328
+ }
55329
+ | undefined
55330
+ /** Metadata for an igloo device. */
55331
+ igloo_metadata?:
55332
+ | {
55333
+ /** Device ID for an igloo device. */
55334
+ device_id: string
55335
+ /** Bridge ID for an igloo device. */
55336
+ bridge_id: string
55337
+ /** Model for an igloo device. */
55338
+ model?: string | undefined
55339
+ }
55340
+ | undefined
55341
+ /** Metadata for a NoiseAware device. */
55342
+ noiseaware_metadata?:
55343
+ | {
55344
+ /** Device model for a NoiseAware device. */
55345
+ device_model: 'indoor' | 'outdoor'
55346
+ /** Noise level, expressed as a Noise Risk Score (NRS), for a NoiseAware device. */
55347
+ noise_level_nrs: number
55348
+ /** Noise level, in decibels, for a NoiseAware device. */
55349
+ noise_level_decibel: number
55350
+ /** Device name for a NoiseAware device. */
55351
+ device_name: string
55352
+ /** Device ID for a NoiseAware device. */
55353
+ device_id: string
55354
+ }
55355
+ | undefined
55356
+ /** Metadata for a Minut device. */
55357
+ minut_metadata?:
55358
+ | {
55359
+ /** Device ID for a Minut device. */
55360
+ device_id: string
55361
+ /** Device name for a Minut device. */
55362
+ device_name: string
55363
+ /** Latest sensor values for a Minut device. */
55364
+ latest_sensor_values: {
55365
+ /** Latest temperature reading for a Minut device. */
55366
+ temperature: {
55367
+ /** Time of latest temperature reading for a Minut device. */
55368
+ time: string
55369
+ /** Value of latest temperature reading for a Minut device. */
55370
+ value: number
55371
+ }
55372
+ /** Latest sound reading for a Minut device. */
55373
+ sound: {
55374
+ /** Time of latest sound reading for a Minut device. */
55375
+ time: string
55376
+ /** Value of latest sound reading for a Minut device. */
55377
+ value: number
55378
+ }
55379
+ /** Latest humidity reading for a Minut device. */
55380
+ humidity: {
55381
+ /** Time of latest humidity reading for a Minut device. */
55382
+ time: string
55383
+ /** Value of latest humidity reading for a Minut device. */
55384
+ value: number
55385
+ }
55386
+ /** Latest pressure reading for a Minut device. */
55387
+ pressure: {
55388
+ /** Time of latest pressure reading for a Minut device. */
55389
+ time: string
55390
+ /** Value of latest pressure reading for a Minut device. */
55391
+ value: number
55392
+ }
55393
+ /** Latest accelerometer Z-axis reading for a Minut device. */
55394
+ accelerometer_z: {
55395
+ /** Time of latest accelerometer Z-axis reading for a Minut device. */
55396
+ time: string
55397
+ /** Value of latest accelerometer Z-axis reading for a Minut device. */
55398
+ value: number
55399
+ }
55400
+ }
55401
+ }
55402
+ | undefined
55403
+ /** Metadata for a 4SUITES device. */
55404
+ four_suites_metadata?:
55405
+ | {
55406
+ /** Device ID for a 4SUITES device. */
55407
+ device_id: number
55408
+ /** Device name for a 4SUITES device. */
55409
+ device_name: string
55410
+ /** Reclose delay, in seconds, for a 4SUITES device. */
55411
+ reclose_delay_in_seconds: number
55412
+ }
55413
+ | undefined
55414
+ /** Metadata for a 2N device. */
55415
+ two_n_metadata?:
55416
+ | {
55417
+ /** Device ID for a 2N device. */
55418
+ device_id: number
55419
+ /** Device name for a 2N device. */
55420
+ device_name: string
55421
+ }
55422
+ | undefined
55423
+ /** Metadata for a ControlByWeb device. */
55424
+ controlbyweb_metadata?:
55425
+ | {
55426
+ /** Device ID for a ControlByWeb device. */
55427
+ device_id: string
55428
+ /** Device name for a ControlByWeb device. */
55429
+ device_name: string
55430
+ /** Relay name for a ControlByWeb device. */
55431
+ relay_name: string | null
55432
+ }
55433
+ | undefined
55434
+ /** Metadata for a TTLock device. */
55435
+ ttlock_metadata?:
55436
+ | {
55437
+ /** Lock ID for a TTLock device. */
55438
+ lock_id: number
55439
+ /** Lock alias for a TTLock device. */
55440
+ lock_alias: string
55441
+ /** Feature value for a TTLock device. */
55442
+ feature_value: string
55443
+ /** Features for a TTLock device. */
55444
+ features: {
55445
+ /** Indicates whether a TTLock device supports a passcode. */
55446
+ passcode: boolean
55447
+ /** Indicates whether a TTLock device supports passcode management. */
55448
+ passcode_management: boolean
55449
+ /** Indicates whether a TTLock device supports unlock via gateway. */
55450
+ unlock_via_gateway: boolean
55451
+ /** Indicates whether a TTLock device supports the lock command. */
55452
+ lock_command: boolean
55453
+ /** Indicates whether a TTLock device supports an incomplete keyboard passcode. */
55454
+ incomplete_keyboard_passcode: boolean
55455
+ /** Indicates whether a TTLock device supports Wi-Fi. */
55456
+ wifi: boolean
55457
+ }
55458
+ /** Indicates whether a TTLock device has a gateway. */
55459
+ has_gateway?: boolean | undefined
55460
+ /** Wireless keypads for a TTLock device. */
55461
+ wireless_keypads?:
55462
+ | Array<{
55463
+ /** ID for a wireless keypad for a TTLock device. */
55464
+ wireless_keypad_id: number
55465
+ /** Name for a wireless keypad for a TTLock device. */
55466
+ wireless_keypad_name: string
55467
+ }>
55468
+ | undefined
55469
+ }
55470
+ | undefined
55471
+ /** Metadata for Seam Bridge. */
55472
+ seam_bridge_metadata?:
55473
+ | {
55474
+ /** Unlock method for Seam Bridge. */
55475
+ unlock_method?: ('bridge' | 'doorking') | undefined
55476
+ /** Device number for Seam Bridge. */
55477
+ device_num: number
55478
+ /** Name for Seam Bridge. */
55479
+ name: string
55480
+ }
55481
+ | undefined
55482
+ /** Metadata for an igloohome device. */
55483
+ igloohome_metadata?:
55484
+ | {
55485
+ /** Device ID for an igloohome device. */
55486
+ device_id: string
55487
+ /** Device name for an igloohome device. */
55488
+ device_name: string
55489
+ /** Bridge ID for an igloohome device. */
55490
+ bridge_id?: string | undefined
55491
+ /** Bridge name for an igloohome device. */
55492
+ bridge_name?: string | undefined
55493
+ /** Keypad ID for an igloohome device. */
55494
+ keypad_id?: string | undefined
55495
+ /** Indicates whether a keypad is linked to a bridge for an igloohome device. */
55496
+ is_keypad_linked_to_bridge?: boolean | undefined
55497
+ }
55498
+ | undefined
55499
+ /** Metadata for a Google Nest device. */
55500
+ nest_metadata?:
55501
+ | {
55502
+ /** Device ID for a Google Nest device. */
55503
+ nest_device_id: string
55504
+ /** Device name for a Google Nest device. Google sets this value. */
55505
+ device_name: string
55506
+ /** Custom device name for a Google Nest device. The device owner sets this value. */
55507
+ device_custom_name: string
55508
+ /** Display name for a Google Nest device. */
55509
+ display_name?: string | undefined
55510
+ }
55511
+ | undefined
55512
+ /** Metadata for an ecobee device. */
55513
+ ecobee_metadata?:
55514
+ | {
55515
+ /** Device ID for an ecobee device. */
55516
+ ecobee_device_id: string
55517
+ /** Device name for an ecobee device. */
55518
+ device_name: string
55519
+ }
55520
+ | undefined
55521
+ /** Metadata for a Honeywell Resideo device. */
55522
+ honeywell_resideo_metadata?:
55523
+ | {
55524
+ /** Device ID for a Honeywell Resideo device. */
55525
+ honeywell_resideo_device_id: string
55526
+ /** Device name for a Honeywell Resideo device. */
55527
+ device_name: string
55528
+ }
55529
+ | undefined
55530
+ /** Metadata for a Hubitat device. */
55531
+ hubitat_metadata?:
55532
+ | {
55533
+ /** Device ID for a Hubitat device. */
55534
+ device_id: string
55535
+ /** Device name for a Hubitat device. */
55536
+ device_name: string
55537
+ /** Device label for a Hubitat device. */
55538
+ device_label: string
55539
+ }
55540
+ | undefined
55541
+ /** Metadata for a dormakaba Oracode device. */
55542
+ dormakaba_oracode_metadata?:
55543
+ | {
55544
+ /** Door ID for a dormakaba Oracode device. */
55545
+ door_id?: number | undefined
55546
+ /** Door name for a dormakaba Oracode device. */
55547
+ door_name: string
55548
+ /** Device ID for a dormakaba Oracode device. */
55549
+ device_id?: (number | string) | undefined
55550
+ /** Indicates whether a door is wireless for a dormakaba Oracode device. */
55551
+ door_is_wireless: boolean
55552
+ /** Site ID for a dormakaba Oracode device.
55553
+ * @deprecated Previously marked as "@DEPRECATED." */
55554
+ site_id: number | null
55555
+ /** Site name for a dormakaba Oracode device. */
55556
+ site_name: string
55557
+ /** IANA time zone for a dormakaba Oracode device. */
55558
+ iana_timezone?: string | undefined
55559
+ /** Predefined time slots for a dormakaba Oracode device. */
55560
+ predefined_time_slots?:
55561
+ | Array<{
55562
+ /** Name of a time slot for a dormakaba Oracode device. */
55563
+ name: string
55564
+ /** Prefix for a time slot for a dormakaba Oracode device. */
55565
+ prefix: number
55566
+ /** Check in time for a time slot for a dormakaba Oracode device. */
55567
+ check_in_time: string
55568
+ /** Checkout time for a time slot for a dormakaba Oracode device. */
55569
+ check_out_time: string
55570
+ /** Indicates whether a time slot for a dormakaba Oracode device is a 24-hour time slot. */
55571
+ is_24_hour: boolean
55572
+ /** Indicates whether a time slot for a dormakaba Oracode device is in biweekly mode. */
55573
+ is_biweekly_mode: boolean
55574
+ /** Indicates whether a time slot for a dormakaba Oracode device is a one-shot time slot. */
55575
+ is_one_shot: boolean
55576
+ /** Indicates whether a time slot for a dormakaba Oracode device is a master time slot. */
55577
+ is_master: boolean
55578
+ /** Prefix for a user level for a dormakaba Oracode device. */
55579
+ ext_dormakaba_oracode_user_level_prefix: number
55580
+ /** ID of a user level for a dormakaba Oracode device. */
55581
+ dormakaba_oracode_user_level_id: string
55582
+ }>
55583
+ | undefined
55584
+ }
55585
+ | undefined
55586
+ /** Metadata for a Wyze device. */
55587
+ wyze_metadata?:
55588
+ | {
55589
+ /** Device ID for a Wyze device. */
55590
+ device_id: string
55591
+ /** Device name for a Wyze device. */
55592
+ device_name: string
55593
+ /** Product name for a Wyze device. */
55594
+ product_name: string
55595
+ /** Product type for a Wyze device. */
55596
+ product_type: string
55597
+ /** Product model for a Wyze device. */
55598
+ product_model: string
55599
+ /** Device information model for a Wyze device. */
55600
+ device_info_model: string
55601
+ /** Keypad UUID for a Wyze device. */
55602
+ keypad_uuid?: string | undefined
55603
+ /** Locker status (hardlock) for a Wyze device. */
55604
+ locker_status_hardlock?: number | undefined
55605
+ }
55606
+ | undefined
55607
+ /** Metadata for a Tedee device. */
55608
+ tedee_metadata?:
55609
+ | {
55610
+ /** Device ID for a Tedee device. */
55611
+ device_id: number
55612
+ /** Serial number for a Tedee device. */
55613
+ serial_number: string
55614
+ /** Device name for a Tedee device. */
55615
+ device_name: string
55616
+ /** Device model for a Tedee device. */
55617
+ device_model: string
55618
+ /** Bridge ID for a Tedee device. */
55619
+ bridge_id: number
55620
+ /** Bridge name for a Tedee device. */
55621
+ bridge_name: string
55622
+ /** Keypad ID for a Tedee device. */
55623
+ keypad_id?: number | undefined
55624
+ }
55625
+ | undefined
55626
+ /** Metadata for an ASSA ABLOY Visionline system. */
55627
+ visionline_metadata?:
55628
+ | {
55629
+ /** Encoder ID for an ASSA ABLOY Visionline system. */
55630
+ encoder_id: string
55631
+ }
55632
+ | undefined
55633
+ /** Metadata for an Akiles device. */
55634
+ akiles_metadata?:
55635
+ | {
55636
+ /** Gadget name for an Akiles device. */
55637
+ gadget_name: string
55638
+ /** Gadget ID for an Akiles device. */
55639
+ gadget_id: string
55640
+ /** Product name for an Akiles device. */
55641
+ product_name: string
55642
+ /** Group ID to which to add users for an Akiles device. */
55643
+ _member_group_id?: string | undefined
55644
+ }
55645
+ | undefined
55646
+ /** Metadata for an ASSA ABLOY Vostio system. */
55647
+ assa_abloy_vostio_metadata?:
55648
+ | {
55649
+ /** Encoder name for an ASSA ABLOY Vostio system. */
55650
+ encoder_name: string
55651
+ }
55652
+ | undefined
55653
+ /** Metadata for a tado° device. */
55654
+ tado_metadata?:
55655
+ | {
55656
+ /** Serial number for a tado° device. */
55657
+ serial_no: string
55658
+ /** Device type for a tado° device. */
55659
+ device_type: string
55660
+ }
55661
+ | undefined
55662
+ /** Metadata for a Sensi device. */
55663
+ sensi_metadata?:
55664
+ | {
55665
+ /** Device ID for a Sensi device. */
55666
+ device_id: string
55667
+ /** Device name for a Sensi device. */
55668
+ device_name: string
55669
+ /** Product type for a Sensi device. */
55670
+ product_type: string
55671
+ }
55672
+ | undefined
55673
+ }) &
55674
+ ({
55675
+ /** */
55676
+ _experimental_supported_code_from_access_codes_lengths?:
55677
+ | (number[] | undefined)
55678
+ | undefined
55679
+ /** Constraints on access codes for the device. Seam represents each constraint as an object with a `constraint_type` property. Depending on the constraint type, there may also be additional properties. Note that some constraints are manufacturer- or device-specific. */
55680
+ code_constraints?:
55681
+ | (
55682
+ | Array<
55683
+ | {
55684
+ /** Code constraint type for access codes. */
55685
+ constraint_type:
55686
+ | 'no_zeros'
55687
+ | 'cannot_start_with_12'
55688
+ | 'no_triple_consecutive_ints'
55689
+ | 'cannot_specify_pin_code'
55690
+ | 'pin_code_matches_existing_set'
55691
+ | 'start_date_in_future'
55692
+ | 'no_ascending_or_descending_sequence'
55693
+ | 'at_least_three_unique_digits'
55694
+ | 'cannot_contain_089'
55695
+ | 'cannot_contain_0789'
55696
+ }
55697
+ | {
55698
+ constraint_type:
55699
+ | 'name_length'
55700
+ | 'name_must_be_unique'
55701
+ /** Minimum name length constraint for access codes. */
55702
+ min_length?: number | undefined
55703
+ /** Maximum name length constraint for access codes. */
55704
+ max_length?: number | undefined
55705
+ }
55706
+ >
55707
+ | undefined
55708
+ )
55709
+ | undefined
55710
+ /** Supported code lengths for access codes. */
55711
+ supported_code_lengths?: (number[] | undefined) | undefined
55712
+ /** Maximum number of active access codes that the device supports. */
55713
+ max_active_codes_supported?: (number | undefined) | undefined
55714
+ /** Indicates whether the device supports a [backup access code pool](https://docs.seam.co/latest/capability-guides/smart-locks/access-codes/backup-access-codes). */
55715
+ supports_backup_access_code_pool?:
55716
+ | (boolean | undefined)
55717
+ | undefined
55718
+ /** Indicates whether the device supports native entry events. */
55719
+ has_native_entry_events?: (boolean | undefined) | undefined
55720
+ /** Indicates whether the lock is locked. */
55721
+ locked?: (boolean | undefined) | undefined
55722
+ /** Keypad battery status. */
55723
+ keypad_battery?:
55724
+ | (
55725
+ | {
55726
+ /**
55727
+ Keypad battery charge level.
55728
+ */
55729
+ level: number
55730
+ }
55731
+ | undefined
55732
+ )
55733
+ | undefined
55734
+ /** Indicates whether the door is open. */
55735
+ door_open?: (boolean | undefined) | undefined
55736
+ } & {
55737
+ /** Reported temperature in °F. */
55738
+ temperature_fahrenheit?: number | undefined
55739
+ /** Reported temperature in °C. */
55740
+ temperature_celsius?: number | undefined
55741
+ /** Reported relative humidity, as a value between 0 and 1, inclusive. */
55742
+ relative_humidity?: number | undefined
55743
+ /** HVAC mode settings that the thermostat supports. */
55744
+ available_hvac_mode_settings?:
55745
+ | Array<'off' | 'heat' | 'cool' | 'heat_cool'>
55746
+ | undefined
55747
+ /** Fan mode settings that the thermostat supports. */
55748
+ available_fan_mode_settings?:
55749
+ | Array<'auto' | 'on' | 'circulate'>
55750
+ | undefined
55751
+ /** Climate preset modes that the thermostat supports, such as "home", "away", "wake", "sleep", "occupied", and "unoccupied". */
55752
+ available_climate_preset_modes?:
55753
+ | Array<
55754
+ | 'home'
55755
+ | 'away'
55756
+ | 'wake'
55757
+ | 'sleep'
55758
+ | 'occupied'
55759
+ | 'unoccupied'
55760
+ >
55761
+ | undefined
55762
+ /** Indicates whether the connected HVAC system is currently heating, as reported by the thermostat. */
55763
+ is_heating?: boolean | undefined
55764
+ /** Indicates whether the connected HVAC system is currently cooling, as reported by the thermostat. */
55765
+ is_cooling?: boolean | undefined
55766
+ /** Indicates whether the fan in the connected HVAC system is currently running, as reported by the thermostat. */
55767
+ is_fan_running?: boolean | undefined
55768
+ /**
55769
+ * @deprecated Use `current_climate_setting.fan_mode_setting` instead. */
55770
+ fan_mode_setting?: ('auto' | 'on' | 'circulate') | undefined
55771
+ /** Indicates whether the current thermostat settings differ from the most recent active program or schedule that Seam activated. For this condition to occur, `current_climate_setting.manual_override_allowed` must also be `true`. */
55772
+ is_temporary_manual_override_active?: boolean | undefined
55773
+ /** Current climate setting. */
55774
+ current_climate_setting?:
55775
+ | {
55776
+ /** Unique key to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55777
+ climate_preset_key?: string | undefined
55778
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited. */
55779
+ can_edit?: boolean | undefined
55780
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted. */
55781
+ can_delete?: boolean | undefined
55782
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program. */
55783
+ can_program?: boolean | undefined
55784
+ /** User-friendly name to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55785
+ name?: ((string | null) | undefined) | undefined
55786
+ /** Display name for the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55787
+ display_name?: string | undefined
55788
+ /**
55789
+ The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
55790
+ */
55791
+ climate_preset_mode?:
55792
+ | (
55793
+ | (
55794
+ | 'home'
55795
+ | 'away'
55796
+ | 'wake'
55797
+ | 'sleep'
55798
+ | 'occupied'
55799
+ | 'unoccupied'
55800
+ )
55801
+ | undefined
55802
+ )
55803
+ | undefined
55804
+ /** Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. */
55805
+ fan_mode_setting?:
55806
+ | (('auto' | 'on' | 'circulate') | undefined)
55807
+ | undefined
55808
+ /** Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`. */
55809
+ hvac_mode_setting?:
55810
+ | (
55811
+ | ('off' | 'heat' | 'cool' | 'heat_cool')
55812
+ | undefined
55813
+ )
55814
+ | undefined
55815
+ /** Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55816
+ cooling_set_point_celsius?:
55817
+ | (number | undefined)
55818
+ | undefined
55819
+ /** Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55820
+ heating_set_point_celsius?:
55821
+ | (number | undefined)
55822
+ | undefined
55823
+ /** Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55824
+ cooling_set_point_fahrenheit?:
55825
+ | (number | undefined)
55826
+ | undefined
55827
+ /** Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55828
+ heating_set_point_fahrenheit?:
55829
+ | (number | undefined)
55830
+ | undefined
55831
+ /** Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
55832
+ * @deprecated Use 'thermostat_schedule.is_override_allowed' */
55833
+ manual_override_allowed?: boolean | undefined
55834
+ /**
55835
+ Metadata specific to the Ecobee climate, if applicable.
55836
+ */
55837
+ ecobee_metadata?:
55838
+ | (
55839
+ | {
55840
+ /** Reference to the Ecobee climate, if applicable. */
55841
+ climate_ref: string
55842
+ /** Indicates if the climate preset is optimized by Ecobee. */
55843
+ is_optimized: boolean
55844
+ /** Indicates whether the climate preset is owned by the user or the system. */
55845
+ owner: 'user' | 'system'
55846
+ }
55847
+ | undefined
55848
+ )
55849
+ | undefined
55850
+ }
55851
+ | undefined
55852
+ /**
55853
+ * @deprecated use fallback_climate_preset_key to specify a fallback climate preset instead. */
55854
+ default_climate_setting?:
55855
+ | {
55856
+ /** Unique key to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55857
+ climate_preset_key?: string | undefined
55858
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited. */
55859
+ can_edit?: boolean | undefined
55860
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted. */
55861
+ can_delete?: boolean | undefined
55862
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program. */
55863
+ can_program?: boolean | undefined
55864
+ /** User-friendly name to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55865
+ name?: ((string | null) | undefined) | undefined
55866
+ /** Display name for the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55867
+ display_name?: string | undefined
55868
+ /**
55869
+ The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
55870
+ */
55871
+ climate_preset_mode?:
55872
+ | (
55873
+ | (
55874
+ | 'home'
55875
+ | 'away'
55876
+ | 'wake'
55877
+ | 'sleep'
55878
+ | 'occupied'
55879
+ | 'unoccupied'
55880
+ )
55881
+ | undefined
55882
+ )
55883
+ | undefined
55884
+ /** Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. */
55885
+ fan_mode_setting?:
55886
+ | (('auto' | 'on' | 'circulate') | undefined)
55887
+ | undefined
55888
+ /** Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`. */
55889
+ hvac_mode_setting?:
55890
+ | (
55891
+ | ('off' | 'heat' | 'cool' | 'heat_cool')
55892
+ | undefined
55893
+ )
55894
+ | undefined
55895
+ /** Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55896
+ cooling_set_point_celsius?:
55897
+ | (number | undefined)
55898
+ | undefined
55899
+ /** Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55900
+ heating_set_point_celsius?:
55901
+ | (number | undefined)
55902
+ | undefined
55903
+ /** Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55904
+ cooling_set_point_fahrenheit?:
55905
+ | (number | undefined)
55906
+ | undefined
55907
+ /** Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55908
+ heating_set_point_fahrenheit?:
55909
+ | (number | undefined)
55910
+ | undefined
55911
+ /** Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
55912
+ * @deprecated Use 'thermostat_schedule.is_override_allowed' */
55913
+ manual_override_allowed?: boolean | undefined
55914
+ /**
55915
+ Metadata specific to the Ecobee climate, if applicable.
55916
+ */
55917
+ ecobee_metadata?:
55918
+ | (
55919
+ | {
55920
+ /** Reference to the Ecobee climate, if applicable. */
55921
+ climate_ref: string
55922
+ /** Indicates if the climate preset is optimized by Ecobee. */
55923
+ is_optimized: boolean
55924
+ /** Indicates whether the climate preset is owned by the user or the system. */
55925
+ owner: 'user' | 'system'
55926
+ }
55927
+ | undefined
55928
+ )
55929
+ | undefined
55930
+ }
55931
+ | undefined
55932
+ /** Available [climate presets](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for the thermostat. */
55933
+ available_climate_presets?:
55934
+ | Array<{
55935
+ /** Unique key to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55936
+ climate_preset_key: string
55937
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited. */
55938
+ can_edit: boolean
55939
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted. */
55940
+ can_delete: boolean
55941
+ /** Indicates whether the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program. */
55942
+ can_program: boolean
55943
+ /** User-friendly name to identify the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55944
+ name?: (string | null) | undefined
55945
+ /** Display name for the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). */
55946
+ display_name: string
55947
+ /**
55948
+ The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
55949
+ */
55950
+ climate_preset_mode?:
55951
+ | (
55952
+ | 'home'
55953
+ | 'away'
55954
+ | 'wake'
55955
+ | 'sleep'
55956
+ | 'occupied'
55957
+ | 'unoccupied'
55958
+ )
55959
+ | undefined
55960
+ /** Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`. */
55961
+ fan_mode_setting?:
55962
+ | ('auto' | 'on' | 'circulate')
55963
+ | undefined
55964
+ /** Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`. */
55965
+ hvac_mode_setting?:
55966
+ | ('off' | 'heat' | 'cool' | 'heat_cool')
55967
+ | undefined
55968
+ /** Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55969
+ cooling_set_point_celsius?: number | undefined
55970
+ /** Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55971
+ heating_set_point_celsius?: number | undefined
55972
+ /** Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55973
+ cooling_set_point_fahrenheit?: number | undefined
55974
+ /** Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points). */
55975
+ heating_set_point_fahrenheit?: number | undefined
55976
+ /** Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
55977
+ * @deprecated Use 'thermostat_schedule.is_override_allowed' */
55978
+ manual_override_allowed: boolean
55979
+ /**
55980
+ Metadata specific to the Ecobee climate, if applicable.
55981
+ */
55982
+ ecobee_metadata?:
55983
+ | {
55984
+ /** Reference to the Ecobee climate, if applicable. */
55985
+ climate_ref: string
55986
+ /** Indicates if the climate preset is optimized by Ecobee. */
55987
+ is_optimized: boolean
55988
+ /** Indicates whether the climate preset is owned by the user or the system. */
55989
+ owner: 'user' | 'system'
55990
+ }
55991
+ | undefined
55992
+ }>
55993
+ | undefined
55994
+ /** Key of the [fallback climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset) for the thermostat. */
55995
+ fallback_climate_preset_key?: (string | null) | undefined
55996
+ /** Active [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
55997
+ * @deprecated Use `active_thermostat_schedule_id` with `/thermostats/schedules/get` instead. */
55998
+ active_thermostat_schedule?:
55999
+ | ({
56000
+ /** ID of the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */
56001
+ thermostat_schedule_id: string
56002
+ /** ID of the desired [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) device. */
56003
+ device_id: string
56004
+ /** User-friendly name to identify the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */
56005
+ name: string | null
56006
+ /** Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */
56007
+ climate_preset_key: string
56008
+ /** Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets). See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions). */
56009
+ max_override_period_minutes?:
56010
+ | (number | null)
56011
+ | undefined
56012
+ /** Date and time at which the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules) starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
56013
+ starts_at: string
56014
+ /** Indicates whether a person at the thermostat can change the thermostat's settings after the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules) starts. */
56015
+ is_override_allowed?: boolean | undefined
56016
+ /** Date and time at which the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules) ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
56017
+ ends_at: string
56018
+ /** ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) that contains the thermostat schedule. */
56019
+ workspace_id: string
56020
+ /** Date and time at which the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules) was created. */
56021
+ created_at: string
56022
+ /** Errors associated with the [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */
56023
+ errors: Array<{
56024
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56025
+ error_code: string
56026
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56027
+ message: string
56028
+ }>
56029
+ } | null)
56030
+ | undefined
56031
+ /** ID of the active [thermostat schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-schedules). */
56032
+ active_thermostat_schedule_id?: (string | null) | undefined
56033
+ /** Configured [daily programs](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-programs) for the thermostat. */
56034
+ thermostat_daily_programs?:
56035
+ | (
56036
+ | Array<{
56037
+ /** ID of the thermostat daily program. */
56038
+ thermostat_daily_program_id: string
56039
+ /** ID of the thermostat device on which the thermostat daily program is configured. */
56040
+ device_id: string
56041
+ /** User-friendly name to identify the thermostat daily program. */
56042
+ name: string | null
56043
+ /** Array of thermostat daily program periods. */
56044
+ periods: Array<{
56045
+ /** Time at which the thermostat daily program period starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. */
56046
+ starts_at_time: string
56047
+ /** Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to activate at the `starts_at_time`. */
56048
+ climate_preset_key: string
56049
+ }>
56050
+ /** ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) that contains the thermostat daily program. */
56051
+ workspace_id: string
56052
+ /** Date and time at which the thermostat daily program was created. */
56053
+ created_at: string
56054
+ }>
56055
+ | undefined
56056
+ )
56057
+ | undefined
56058
+ /** Current [weekly program](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-thermostat-programs) for the thermostat. */
56059
+ thermostat_weekly_program?:
56060
+ | (
56061
+ | ({
56062
+ /** ID of the thermostat daily program to run on Mondays. */
56063
+ monday_program_id: string | null
56064
+ /** ID of the thermostat daily program to run on Tuesdays. */
56065
+ tuesday_program_id: string | null
56066
+ /** ID of the thermostat daily program to run on Wednesdays. */
56067
+ wednesday_program_id: string | null
56068
+ /** ID of the thermostat daily program to run on Thursdays. */
56069
+ thursday_program_id: string | null
56070
+ /** ID of the thermostat daily program to run on Fridays. */
56071
+ friday_program_id: string | null
56072
+ /** ID of the thermostat daily program to run on Saturdays. */
56073
+ saturday_program_id: string | null
56074
+ /** ID of the thermostat daily program to run on Sundays. */
56075
+ sunday_program_id: string | null
56076
+ /** Date and time at which the thermostat weekly program was created. */
56077
+ created_at: string
56078
+ } | null)
56079
+ | undefined
56080
+ )
56081
+ | undefined
56082
+ /** Minimum [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °C. */
56083
+ min_cooling_set_point_celsius?: number | undefined
56084
+ /** Minimum [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °F. */
56085
+ min_cooling_set_point_fahrenheit?: number | undefined
56086
+ /** Maximum [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °C. */
56087
+ max_cooling_set_point_celsius?: number | undefined
56088
+ /** Maximum [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °F. */
56089
+ max_cooling_set_point_fahrenheit?: number | undefined
56090
+ /** Minimum [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °C. */
56091
+ min_heating_set_point_celsius?: number | undefined
56092
+ /** Minimum [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °F. */
56093
+ min_heating_set_point_fahrenheit?: number | undefined
56094
+ /** Maximum [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °C. */
56095
+ max_heating_set_point_celsius?: number | undefined
56096
+ /** Maximum [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °F. */
56097
+ max_heating_set_point_fahrenheit?: number | undefined
56098
+ /** Minimum [temperature difference](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#minimum-heating-cooling-temperature-delta) in °C between the cooling and heating set points when in heat-cool (auto) mode. */
56099
+ min_heating_cooling_delta_celsius?: number | undefined
56100
+ /** Minimum [temperature difference](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points#minimum-heating-cooling-temperature-delta) in °F between the cooling and heating set points when in heat-cool (auto) mode. */
56101
+ min_heating_cooling_delta_fahrenheit?: number | undefined
56102
+ /** Current [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat. */
56103
+ temperature_threshold?:
56104
+ | (
56105
+ | {
56106
+ /** Lower limit in °C within the current [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
56107
+ */
56108
+ lower_limit_celsius: number | null
56109
+ /** Lower limit in °F within the current [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
56110
+ */
56111
+ lower_limit_fahrenheit: number | null
56112
+ /** Upper limit in °C within the current [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
56113
+ */
56114
+ upper_limit_celsius: number | null
56115
+ /** Upper limit in °F within the current [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
56116
+ */
56117
+ upper_limit_fahrenheit: number | null
56118
+ }
56119
+ | undefined
56120
+ )
56121
+ | undefined
56122
+ })
56123
+ /** Location information for the device. */
56124
+ location: {
56125
+ /** Name of the device location.
56126
+ */
56127
+ location_name?: string | undefined
56128
+ /** Time zone of the device location.
56129
+ */
56130
+ timezone?: string | undefined
56131
+ } | null
56132
+ /** Unique identifier for the account associated with the device. */
56133
+ connected_account_id: string
56134
+ /** Unique identifier for the Seam workspace associated with the device. */
56135
+ workspace_id: string
56136
+ /** Array of errors associated with the device. Each error object within the array contains two fields: `error_code` and `message`. `error_code` is a string that uniquely identifies the type of error, enabling quick recognition and categorization of the issue. `message` provides a more detailed description of the error, offering insights into the issue and potentially how to rectify it. */
56137
+ errors: Array<
56138
+ | {
56139
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56140
+ message: string
56141
+ /** Indicates that the error is not a device error. */
56142
+ is_device_error: false
56143
+ /** Date and time at which Seam created the error. */
56144
+ created_at: string
56145
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56146
+ error_code: 'account_disconnected'
56147
+ /** Indicates that the error is a [connected account](https://docs.seam.co/latest/api/connected_accounts) error. */
56148
+ is_connected_account_error: true
56149
+ }
56150
+ | {
56151
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56152
+ message: string
56153
+ /** Indicates that the error is not a device error. */
56154
+ is_device_error: false
56155
+ /** Date and time at which Seam created the error. */
56156
+ created_at: string
56157
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56158
+ error_code: 'salto_ks_subscription_limit_exceeded'
56159
+ /** Indicates that the error is a [connected account](https://docs.seam.co/latest/api/connected_accounts) error. */
56160
+ is_connected_account_error: true
56161
+ }
56162
+ | {
56163
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56164
+ message: string
56165
+ /** Indicates that the error is a device error. */
56166
+ is_device_error: true
56167
+ /** Date and time at which Seam created the error. */
56168
+ created_at: string
56169
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56170
+ error_code: 'device_offline'
56171
+ }
56172
+ | {
56173
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56174
+ message: string
56175
+ /** Indicates that the error is a device error. */
56176
+ is_device_error: true
56177
+ /** Date and time at which Seam created the error. */
56178
+ created_at: string
56179
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56180
+ error_code: 'device_removed'
56181
+ }
56182
+ | {
56183
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56184
+ message: string
56185
+ /** Indicates that the error is a device error. */
56186
+ is_device_error: true
56187
+ /** Date and time at which Seam created the error. */
56188
+ created_at: string
56189
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56190
+ error_code: 'hub_disconnected'
56191
+ }
56192
+ | {
56193
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56194
+ message: string
56195
+ /** Indicates that the error is a device error. */
56196
+ is_device_error: true
56197
+ /** Date and time at which Seam created the error. */
56198
+ created_at: string
56199
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56200
+ error_code: 'device_disconnected'
56201
+ }
56202
+ | {
56203
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56204
+ message: string
56205
+ /** Indicates that the error is a device error. */
56206
+ is_device_error: true
56207
+ /** Date and time at which Seam created the error. */
56208
+ created_at: string
56209
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56210
+ error_code: 'empty_backup_access_code_pool'
56211
+ }
56212
+ | {
56213
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56214
+ message: string
56215
+ /** Indicates that the error is a device error. */
56216
+ is_device_error: true
56217
+ /** Date and time at which Seam created the error. */
56218
+ created_at: string
56219
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56220
+ error_code: 'august_lock_not_authorized'
56221
+ }
56222
+ | {
56223
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56224
+ message: string
56225
+ /** Indicates that the error is a device error. */
56226
+ is_device_error: true
56227
+ /** Date and time at which Seam created the error. */
56228
+ created_at: string
56229
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56230
+ error_code: 'august_lock_missing_bridge'
56231
+ }
56232
+ | {
56233
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56234
+ message: string
56235
+ /** Indicates that the error is a device error. */
56236
+ is_device_error: true
56237
+ /** Date and time at which Seam created the error. */
56238
+ created_at: string
56239
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56240
+ error_code: 'ttlock_lock_not_paired_to_gateway'
56241
+ }
56242
+ | {
56243
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56244
+ message: string
56245
+ /** Indicates that the error is a device error. */
56246
+ is_device_error: true
56247
+ /** Date and time at which Seam created the error. */
56248
+ created_at: string
56249
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56250
+ error_code: 'missing_device_credentials'
56251
+ }
56252
+ | {
56253
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56254
+ message: string
56255
+ /** Indicates that the error is a device error. */
56256
+ is_device_error: true
56257
+ /** Date and time at which Seam created the error. */
56258
+ created_at: string
56259
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56260
+ error_code: 'auxiliary_heat_running'
56261
+ }
56262
+ | {
56263
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56264
+ message: string
56265
+ /** Indicates that the error is a device error. */
56266
+ is_device_error: true
56267
+ /** Date and time at which Seam created the error. */
56268
+ created_at: string
56269
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56270
+ error_code: 'subscription_required'
56271
+ }
56272
+ | {
56273
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56274
+ message: string
56275
+ /** Indicates that the error is a device error. */
56276
+ is_device_error: true
56277
+ /** Date and time at which Seam created the error. */
56278
+ created_at: string
56279
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56280
+ error_code: 'lockly_missing_wifi_bridge'
56281
+ }
56282
+ | {
56283
+ /** Date and time at which Seam created the error. */
56284
+ created_at: string
56285
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56286
+ message: string
56287
+ /** Indicates whether the error is related specifically to the connected account. */
56288
+ is_connected_account_error?: boolean | undefined
56289
+ /** Indicates whether the error is related to [Seam Bridge](https://docs.seam.co/latest/capability-guides/seam-bridge). */
56290
+ is_bridge_error?: boolean | undefined
56291
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56292
+ error_code: 'invalid_credentials'
56293
+ }
56294
+ | {
56295
+ /** Date and time at which Seam created the error. */
56296
+ created_at: string
56297
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56298
+ message: string
56299
+ /** Indicates whether the error is related specifically to the connected account. */
56300
+ is_connected_account_error?: boolean | undefined
56301
+ /** Indicates whether the error is related to [Seam Bridge](https://docs.seam.co/latest/capability-guides/seam-bridge). */
56302
+ is_bridge_error?: boolean | undefined
56303
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56304
+ error_code: 'bridge_disconnected'
56305
+ }
56306
+ >
56307
+ /** Array of warnings associated with the device. Each warning object within the array contains two fields: `warning_code` and `message`. `warning_code` is a string that uniquely identifies the type of warning, enabling quick recognition and categorization of the issue. `message` provides a more detailed description of the warning, offering insights into the issue and potentially how to rectify it. */
56308
+ warnings: Array<
56309
+ | {
56310
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56311
+ message: string
56312
+ /** Date and time at which Seam created the warning. */
56313
+ created_at: string
56314
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56315
+ warning_code: 'partial_backup_access_code_pool'
56316
+ }
56317
+ | {
56318
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56319
+ message: string
56320
+ /** Date and time at which Seam created the warning. */
56321
+ created_at: string
56322
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56323
+ warning_code: 'many_active_backup_codes'
56324
+ }
56325
+ | {
56326
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56327
+ message: string
56328
+ /** Date and time at which Seam created the warning. */
56329
+ created_at: string
56330
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56331
+ warning_code: 'wyze_device_missing_gateway'
56332
+ }
56333
+ | {
56334
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56335
+ message: string
56336
+ /** Date and time at which Seam created the warning. */
56337
+ created_at: string
56338
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56339
+ warning_code: 'functional_offline_device'
56340
+ }
56341
+ | {
56342
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56343
+ message: string
56344
+ /** Date and time at which Seam created the warning. */
56345
+ created_at: string
56346
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56347
+ warning_code: 'third_party_integration_detected'
56348
+ }
56349
+ | {
56350
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56351
+ message: string
56352
+ /** Date and time at which Seam created the warning. */
56353
+ created_at: string
56354
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56355
+ warning_code: 'nest_thermostat_in_manual_eco_mode'
56356
+ }
56357
+ | {
56358
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56359
+ message: string
56360
+ /** Date and time at which Seam created the warning. */
56361
+ created_at: string
56362
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56363
+ warning_code: 'ttlock_lock_gateway_unlocking_not_enabled'
56364
+ }
56365
+ | {
56366
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56367
+ message: string
56368
+ /** Date and time at which Seam created the warning. */
56369
+ created_at: string
56370
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56371
+ warning_code: 'ttlock_weak_gateway_signal'
56372
+ }
56373
+ | {
56374
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56375
+ message: string
56376
+ /** Date and time at which Seam created the warning. */
56377
+ created_at: string
56378
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56379
+ warning_code: 'power_saving_mode'
56380
+ }
56381
+ | {
56382
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56383
+ message: string
56384
+ /** Date and time at which Seam created the warning. */
56385
+ created_at: string
56386
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56387
+ warning_code: 'temperature_threshold_exceeded'
56388
+ }
56389
+ | {
56390
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56391
+ message: string
56392
+ /** Date and time at which Seam created the warning. */
56393
+ created_at: string
56394
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56395
+ warning_code: 'device_communication_degraded'
56396
+ }
56397
+ | {
56398
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56399
+ message: string
56400
+ /** Date and time at which Seam created the warning. */
56401
+ created_at: string
56402
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56403
+ warning_code: 'scheduled_maintenance_window'
56404
+ }
56405
+ | {
56406
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56407
+ message: string
56408
+ /** Date and time at which Seam created the warning. */
56409
+ created_at: string
56410
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56411
+ warning_code: 'device_has_flaky_connection'
56412
+ }
56413
+ | {
56414
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56415
+ message: string
56416
+ /** Date and time at which Seam created the warning. */
56417
+ created_at: string
56418
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56419
+ warning_code: 'salto_ks_office_mode'
56420
+ }
56421
+ | {
56422
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56423
+ message: string
56424
+ /** Date and time at which Seam created the warning. */
56425
+ created_at: string
56426
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56427
+ warning_code: 'salto_ks_privacy_mode'
56428
+ }
56429
+ | {
56430
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56431
+ message: string
56432
+ /** Date and time at which Seam created the warning. */
56433
+ created_at: string
56434
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56435
+ warning_code: 'salto_ks_subscription_limit_almost_reached'
56436
+ }
56437
+ | {
56438
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56439
+ message: string
56440
+ /** Date and time at which Seam created the warning. */
56441
+ created_at: string
56442
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56443
+ warning_code: 'unknown_issue_with_phone'
56444
+ }
56445
+ | {
56446
+ /** Detailed description of the warning. Provides insights into the issue and potentially how to rectify it. */
56447
+ message: string
56448
+ /** Date and time at which Seam created the warning. */
56449
+ created_at: string
56450
+ /** Unique identifier of the type of warning. Enables quick recognition and categorization of the issue. */
56451
+ warning_code: 'lockly_time_zone_not_configured'
56452
+ }
56453
+ >
56454
+ /** Date and time at which the device object was created. */
56455
+ created_at: string
56456
+ /** Indicates whether Seam manages the device. See also [Managed and Unmanaged Devices](https://docs.seam.co/latest/core-concepts/devices/managed-and-unmanaged-devices). */
56457
+ is_managed: true
56458
+ /** Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/latest/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/latest/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application. */
56459
+ custom_metadata: Record<string, string | boolean>
56460
+ can_remotely_unlock?: boolean | undefined
56461
+ can_remotely_lock?: boolean | undefined
56462
+ can_program_offline_access_codes?: boolean | undefined
56463
+ can_program_online_access_codes?: boolean | undefined
56464
+ can_hvac_heat?: boolean | undefined
56465
+ can_hvac_cool?: boolean | undefined
56466
+ can_hvac_heat_cool?: boolean | undefined
56467
+ can_turn_off_hvac?: boolean | undefined
56468
+ can_simulate_removal?: boolean | undefined
56469
+ can_simulate_connection?: boolean | undefined
56470
+ can_simulate_disconnection?: boolean | undefined
56471
+ can_unlock_with_code?: boolean | undefined
56472
+ }>
56473
+ | undefined
56474
+ acs_entrances?:
56475
+ | Array<{
56476
+ /** ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56477
+ acs_system_id: string
56478
+ /** ID of the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56479
+ acs_entrance_id: string
56480
+ /** Date and time at which the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details) was created. */
56481
+ created_at: string
56482
+ /** Display name for the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56483
+ display_name: string
56484
+ /** ID of the [connected account](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details) associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56485
+ connected_account_id: string
56486
+ /** Errors associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56487
+ errors: Array<{
56488
+ /** Unique identifier of the type of error. Enables quick recognition and categorization of the issue. */
56489
+ error_code: string
56490
+ /** Detailed description of the error. Provides insights into the issue and potentially how to rectify it. */
56491
+ message: string
56492
+ }>
56493
+ /** Latch-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56494
+ latch_metadata?:
56495
+ | {
56496
+ /** Accessibility type in the Latch access system. */
56497
+ accessibility_type: string
56498
+ /** Name of the door in the Latch access system. */
56499
+ door_name: string
56500
+ /** Type of the door in the Latch access system. */
56501
+ door_type: string
56502
+ /** Indicates whether the entrance is connected. */
56503
+ is_connected: boolean
56504
+ }
56505
+ | undefined
56506
+ /** Visionline-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56507
+ visionline_metadata?:
56508
+ | {
56509
+ /** Name of the door in the Visionline access system. */
56510
+ door_name: string
56511
+ /** Category of the door in the Visionline access system. */
56512
+ door_category:
56513
+ | 'entrance'
56514
+ | 'guest'
56515
+ | 'elevator reader'
56516
+ | 'common'
56517
+ | 'common (PMS)'
56518
+ /** Profile for the door in the Visionline access system. */
56519
+ profiles?:
56520
+ | Array<{
56521
+ /** Door profile ID in the Visionline access system. */
56522
+ visionline_door_profile_id: string
56523
+ /** Door profile type in the Visionline access system. */
56524
+ visionline_door_profile_type:
56525
+ | 'BLE'
56526
+ | 'commonDoor'
56527
+ | 'touch'
56528
+ }>
56529
+ | undefined
56530
+ }
56531
+ | undefined
56532
+ /** Salto KS-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56533
+ salto_ks_metadata?:
56534
+ | {
56535
+ /** Name of the door in the Salto KS access system. */
56536
+ door_name: string
56537
+ /** Locked state of the door in the Salto KS access system. */
56538
+ locked_state: string
56539
+ /** Type of the lock in the Salto KS access system. */
56540
+ lock_type: string
56541
+ /** Indicates whether the door access device is online. */
56542
+ online?: boolean | undefined
56543
+ /** Battery level of the door access device. */
56544
+ battery_level: string
56545
+ /** Indicates whether the door is left open. */
56546
+ left_open_alarm?: boolean | undefined
56547
+ /** Indicates whether an intrusion alarm is active on the door. */
56548
+ intrusion_alarm?: boolean | undefined
56549
+ /** Indicates whether privacy mode is enabled for the lock. */
56550
+ privacy_mode?: boolean | undefined
56551
+ }
56552
+ | undefined
56553
+ /** dormakaba Community-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56554
+ dormakaba_community_metadata?:
56555
+ | {
56556
+ /** Name of the access point in the dormakaba Community access system. */
56557
+ access_point_name: string
56558
+ }
56559
+ | undefined
56560
+ /** ASSA ABLOY Vostio-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56561
+ assa_abloy_vostio_metadata?:
56562
+ | {
56563
+ /** Type of the door in the Vostio access system. */
56564
+ door_type:
56565
+ | 'CommonDoor'
56566
+ | 'EntranceDoor'
56567
+ | 'GuestDoor'
56568
+ | 'Elevator'
56569
+ /** Name of the door in the Vostio access system. */
56570
+ door_name: string
56571
+ /** Number of the door in the Vostio access system. */
56572
+ door_number?: number | undefined
56573
+ /** Indicates whether keys are allowed to set the door in stand open mode in the Vostio access system. */
56574
+ stand_open?: boolean | undefined
56575
+ /** PMS ID of the door in the Vostio access system. */
56576
+ pms_id?: string | undefined
56577
+ }
56578
+ | undefined
56579
+ /** Salto Space-specific metadata associated with the [entrance](https://docs.seam.co/latest/capability-guides/access-systems/retrieving-entrance-details). */
56580
+ salto_space_metadata?:
56581
+ | {
56582
+ /** Name of the door in the Salto Space access system. */
56583
+ door_name: string
56584
+ /** External door ID in the Salto Space access system. */
56585
+ ext_door_id: string
56586
+ /** Description of the door in the Salto Space access system. */
56587
+ door_description?: string | undefined
56588
+ }
56589
+ | undefined
56590
+ /** Indicates whether the ACS entrance can be unlocked with mobile key credentials. */
56591
+ can_unlock_with_mobile_key?: boolean | undefined
56592
+ /** Indicates whether the ACS entrance can be unlocked with card credentials. */
56593
+ can_unlock_with_card?: boolean | undefined
56594
+ /** Indicates whether the ACS entrance can be unlocked with pin codes. */
56595
+ can_unlock_with_code?: boolean | undefined
56596
+ }>
56597
+ | undefined
56598
+ }
56599
+ }
56600
+ }
54969
56601
  '/spaces/list': {
54970
56602
  route: '/spaces/list'
54971
56603
  method: 'GET' | 'POST'