@seamapi/http 2.0.0 → 2.2.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 (247) hide show
  1. package/README.md +0 -30
  2. package/lib/seam/connect/api-error-types.js +0 -1
  3. package/lib/seam/connect/api-error-types.js.map +1 -1
  4. package/lib/seam/connect/openapi.d.ts +1 -2
  5. package/lib/seam/connect/openapi.js.map +1 -1
  6. package/lib/seam/connect/resources/access-code.d.ts +743 -56
  7. package/lib/seam/connect/resources/access-grant.d.ts +279 -10
  8. package/lib/seam/connect/resources/access-method.d.ts +204 -8
  9. package/lib/seam/connect/resources/acs-access-group.d.ts +242 -9
  10. package/lib/seam/connect/resources/acs-credential.d.ts +212 -6
  11. package/lib/seam/connect/resources/acs-encoder.d.ts +46 -0
  12. package/lib/seam/connect/resources/acs-entrance.d.ts +298 -5
  13. package/lib/seam/connect/resources/acs-system.d.ts +227 -11
  14. package/lib/seam/connect/resources/acs-user.d.ts +388 -19
  15. package/lib/seam/connect/resources/action-attempt.d.ts +954 -0
  16. package/lib/seam/connect/resources/batch.d.ts +3 -0
  17. package/lib/seam/connect/resources/client-session.d.ts +48 -0
  18. package/lib/seam/connect/resources/connect-webview.d.ts +70 -0
  19. package/lib/seam/connect/resources/connected-account.d.ts +281 -12
  20. package/lib/seam/connect/resources/customer-portal.d.ts +22 -0
  21. package/lib/seam/connect/resources/device-provider.d.ts +72 -0
  22. package/lib/seam/connect/resources/device.d.ts +2063 -41
  23. package/lib/seam/connect/resources/event.d.ts +4014 -0
  24. package/lib/seam/connect/resources/instant-key.d.ts +41 -0
  25. package/lib/seam/connect/resources/noise-threshold.d.ts +24 -0
  26. package/lib/seam/connect/resources/phone.d.ts +72 -0
  27. package/lib/seam/connect/resources/space.d.ts +54 -0
  28. package/lib/seam/connect/resources/thermostat-daily-program.d.ts +27 -0
  29. package/lib/seam/connect/resources/thermostat-schedule.d.ts +45 -0
  30. package/lib/seam/connect/resources/unmanaged-access-code.d.ts +602 -50
  31. package/lib/seam/connect/resources/unmanaged-access-grant.d.ts +267 -10
  32. package/lib/seam/connect/resources/unmanaged-access-method.d.ts +195 -8
  33. package/lib/seam/connect/resources/unmanaged-device.d.ts +810 -120
  34. package/lib/seam/connect/resources/unmanaged-user-identity.d.ts +79 -3
  35. package/lib/seam/connect/resources/user-identity.d.ts +82 -3
  36. package/lib/seam/connect/resources/webhook.d.ts +15 -0
  37. package/lib/seam/connect/resources/workspace.d.ts +45 -0
  38. package/lib/seam/connect/routes/access-codes/access-codes.d.ts +288 -0
  39. package/lib/seam/connect/routes/access-codes/access-codes.js +60 -0
  40. package/lib/seam/connect/routes/access-codes/access-codes.js.map +1 -1
  41. package/lib/seam/connect/routes/access-codes/simulate/simulate.d.ts +12 -0
  42. package/lib/seam/connect/routes/access-codes/simulate/simulate.js +3 -0
  43. package/lib/seam/connect/routes/access-codes/simulate/simulate.js.map +1 -1
  44. package/lib/seam/connect/routes/access-codes/unmanaged/unmanaged.d.ts +72 -0
  45. package/lib/seam/connect/routes/access-codes/unmanaged/unmanaged.js +21 -0
  46. package/lib/seam/connect/routes/access-codes/unmanaged/unmanaged.js.map +1 -1
  47. package/lib/seam/connect/routes/access-grants/access-grants.d.ts +177 -0
  48. package/lib/seam/connect/routes/access-grants/access-grants.js +21 -0
  49. package/lib/seam/connect/routes/access-grants/access-grants.js.map +1 -1
  50. package/lib/seam/connect/routes/access-grants/unmanaged/unmanaged.d.ts +43 -0
  51. package/lib/seam/connect/routes/access-grants/unmanaged/unmanaged.js +13 -0
  52. package/lib/seam/connect/routes/access-grants/unmanaged/unmanaged.js.map +1 -1
  53. package/lib/seam/connect/routes/access-methods/access-methods.d.ts +78 -0
  54. package/lib/seam/connect/routes/access-methods/access-methods.js +21 -0
  55. package/lib/seam/connect/routes/access-methods/access-methods.js.map +1 -1
  56. package/lib/seam/connect/routes/access-methods/unmanaged/unmanaged.d.ts +21 -0
  57. package/lib/seam/connect/routes/access-methods/unmanaged/unmanaged.js +6 -0
  58. package/lib/seam/connect/routes/access-methods/unmanaged/unmanaged.js.map +1 -1
  59. package/lib/seam/connect/routes/acs/access-groups/access-groups.d.ts +63 -0
  60. package/lib/seam/connect/routes/acs/access-groups/access-groups.js +21 -0
  61. package/lib/seam/connect/routes/acs/access-groups/access-groups.js.map +1 -1
  62. package/lib/seam/connect/routes/acs/credentials/credentials.d.ts +126 -0
  63. package/lib/seam/connect/routes/acs/credentials/credentials.js +24 -0
  64. package/lib/seam/connect/routes/acs/credentials/credentials.js.map +1 -1
  65. package/lib/seam/connect/routes/acs/encoders/encoders.d.ts +66 -0
  66. package/lib/seam/connect/routes/acs/encoders/encoders.js +15 -0
  67. package/lib/seam/connect/routes/acs/encoders/encoders.js.map +1 -1
  68. package/lib/seam/connect/routes/acs/encoders/simulate/simulate.d.ts +39 -0
  69. package/lib/seam/connect/routes/acs/encoders/simulate/simulate.js +12 -0
  70. package/lib/seam/connect/routes/acs/encoders/simulate/simulate.js.map +1 -1
  71. package/lib/seam/connect/routes/acs/entrances/entrances.d.ts +72 -0
  72. package/lib/seam/connect/routes/acs/entrances/entrances.js +15 -0
  73. package/lib/seam/connect/routes/acs/entrances/entrances.js.map +1 -1
  74. package/lib/seam/connect/routes/acs/systems/systems.d.ts +64 -0
  75. package/lib/seam/connect/routes/acs/systems/systems.js +16 -0
  76. package/lib/seam/connect/routes/acs/systems/systems.js.map +1 -1
  77. package/lib/seam/connect/routes/acs/users/users.d.ts +189 -0
  78. package/lib/seam/connect/routes/acs/users/users.js +33 -0
  79. package/lib/seam/connect/routes/acs/users/users.js.map +1 -1
  80. package/lib/seam/connect/routes/action-attempts/action-attempts.d.ts +21 -0
  81. package/lib/seam/connect/routes/action-attempts/action-attempts.js +6 -0
  82. package/lib/seam/connect/routes/action-attempts/action-attempts.js.map +1 -1
  83. package/lib/seam/connect/routes/client-sessions/client-sessions.d.ts +113 -0
  84. package/lib/seam/connect/routes/client-sessions/client-sessions.js +23 -0
  85. package/lib/seam/connect/routes/client-sessions/client-sessions.js.map +1 -1
  86. package/lib/seam/connect/routes/connect-webviews/connect-webviews.d.ts +76 -0
  87. package/lib/seam/connect/routes/connect-webviews/connect-webviews.js +22 -0
  88. package/lib/seam/connect/routes/connect-webviews/connect-webviews.js.map +1 -1
  89. package/lib/seam/connect/routes/connected-accounts/connected-accounts.d.ts +70 -0
  90. package/lib/seam/connect/routes/connected-accounts/connected-accounts.js +19 -0
  91. package/lib/seam/connect/routes/connected-accounts/connected-accounts.js.map +1 -1
  92. package/lib/seam/connect/routes/connected-accounts/simulate/simulate.d.ts +6 -0
  93. package/lib/seam/connect/routes/connected-accounts/simulate/simulate.js +3 -0
  94. package/lib/seam/connect/routes/connected-accounts/simulate/simulate.js.map +1 -1
  95. package/lib/seam/connect/routes/customers/customers.d.ts +1042 -0
  96. package/lib/seam/connect/routes/customers/customers.js +10 -0
  97. package/lib/seam/connect/routes/customers/customers.js.map +1 -1
  98. package/lib/seam/connect/routes/devices/devices.d.ts +122 -0
  99. package/lib/seam/connect/routes/devices/devices.js +23 -0
  100. package/lib/seam/connect/routes/devices/devices.js.map +1 -1
  101. package/lib/seam/connect/routes/devices/simulate/simulate.d.ts +42 -0
  102. package/lib/seam/connect/routes/devices/simulate/simulate.js +27 -0
  103. package/lib/seam/connect/routes/devices/simulate/simulate.js.map +1 -1
  104. package/lib/seam/connect/routes/devices/unmanaged/unmanaged.d.ts +80 -0
  105. package/lib/seam/connect/routes/devices/unmanaged/unmanaged.js +17 -0
  106. package/lib/seam/connect/routes/devices/unmanaged/unmanaged.js.map +1 -1
  107. package/lib/seam/connect/routes/events/events.d.ts +99 -0
  108. package/lib/seam/connect/routes/events/events.js +6 -0
  109. package/lib/seam/connect/routes/events/events.js.map +1 -1
  110. package/lib/seam/connect/routes/instant-keys/instant-keys.d.ts +21 -0
  111. package/lib/seam/connect/routes/instant-keys/instant-keys.js +9 -0
  112. package/lib/seam/connect/routes/instant-keys/instant-keys.js.map +1 -1
  113. package/lib/seam/connect/routes/locks/locks.d.ts +85 -0
  114. package/lib/seam/connect/routes/locks/locks.js +16 -0
  115. package/lib/seam/connect/routes/locks/locks.js.map +1 -1
  116. package/lib/seam/connect/routes/locks/simulate/simulate.d.ts +15 -0
  117. package/lib/seam/connect/routes/locks/simulate/simulate.js +6 -0
  118. package/lib/seam/connect/routes/locks/simulate/simulate.js.map +1 -1
  119. package/lib/seam/connect/routes/noise-sensors/noise-sensors.d.ts +51 -0
  120. package/lib/seam/connect/routes/noise-sensors/noise-sensors.js +3 -0
  121. package/lib/seam/connect/routes/noise-sensors/noise-sensors.js.map +1 -1
  122. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/noise-thresholds.d.ts +66 -0
  123. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/noise-thresholds.js +15 -0
  124. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/noise-thresholds.js.map +1 -1
  125. package/lib/seam/connect/routes/noise-sensors/simulate/simulate.d.ts +6 -0
  126. package/lib/seam/connect/routes/noise-sensors/simulate/simulate.js +3 -0
  127. package/lib/seam/connect/routes/noise-sensors/simulate/simulate.js.map +1 -1
  128. package/lib/seam/connect/routes/phones/phones.d.ts +21 -0
  129. package/lib/seam/connect/routes/phones/phones.js +9 -0
  130. package/lib/seam/connect/routes/phones/phones.js.map +1 -1
  131. package/lib/seam/connect/routes/phones/simulate/simulate.d.ts +45 -0
  132. package/lib/seam/connect/routes/phones/simulate/simulate.js +3 -0
  133. package/lib/seam/connect/routes/phones/simulate/simulate.js.map +1 -1
  134. package/lib/seam/connect/routes/seam-http-endpoints-without-workspace.d.ts +6 -0
  135. package/lib/seam/connect/routes/seam-http-endpoints-without-workspace.js +6 -0
  136. package/lib/seam/connect/routes/seam-http-endpoints-without-workspace.js.map +1 -1
  137. package/lib/seam/connect/routes/seam-http-endpoints.d.ts +696 -0
  138. package/lib/seam/connect/routes/seam-http-endpoints.js +696 -0
  139. package/lib/seam/connect/routes/seam-http-endpoints.js.map +1 -1
  140. package/lib/seam/connect/routes/spaces/spaces.d.ts +165 -0
  141. package/lib/seam/connect/routes/spaces/spaces.js +36 -0
  142. package/lib/seam/connect/routes/spaces/spaces.js.map +1 -1
  143. package/lib/seam/connect/routes/thermostats/daily-programs/daily-programs.d.ts +42 -0
  144. package/lib/seam/connect/routes/thermostats/daily-programs/daily-programs.js +9 -0
  145. package/lib/seam/connect/routes/thermostats/daily-programs/daily-programs.js.map +1 -1
  146. package/lib/seam/connect/routes/thermostats/schedules/schedules.d.ts +69 -0
  147. package/lib/seam/connect/routes/thermostats/schedules/schedules.js +15 -0
  148. package/lib/seam/connect/routes/thermostats/schedules/schedules.js.map +1 -1
  149. package/lib/seam/connect/routes/thermostats/simulate/simulate.d.ts +33 -0
  150. package/lib/seam/connect/routes/thermostats/simulate/simulate.js +6 -0
  151. package/lib/seam/connect/routes/thermostats/simulate/simulate.js.map +1 -1
  152. package/lib/seam/connect/routes/thermostats/thermostats.d.ts +300 -0
  153. package/lib/seam/connect/routes/thermostats/thermostats.js +42 -0
  154. package/lib/seam/connect/routes/thermostats/thermostats.js.map +1 -1
  155. package/lib/seam/connect/routes/user-identities/unmanaged/unmanaged.d.ts +35 -0
  156. package/lib/seam/connect/routes/user-identities/unmanaged/unmanaged.js +11 -0
  157. package/lib/seam/connect/routes/user-identities/unmanaged/unmanaged.js.map +1 -1
  158. package/lib/seam/connect/routes/user-identities/user-identities.d.ts +145 -0
  159. package/lib/seam/connect/routes/user-identities/user-identities.js +46 -0
  160. package/lib/seam/connect/routes/user-identities/user-identities.js.map +1 -1
  161. package/lib/seam/connect/routes/webhooks/webhooks.d.ts +33 -0
  162. package/lib/seam/connect/routes/webhooks/webhooks.js +15 -0
  163. package/lib/seam/connect/routes/webhooks/webhooks.js.map +1 -1
  164. package/lib/seam/connect/routes/workspaces/workspaces.d.ts +88 -0
  165. package/lib/seam/connect/routes/workspaces/workspaces.js +15 -0
  166. package/lib/seam/connect/routes/workspaces/workspaces.js.map +1 -1
  167. package/lib/version.d.ts +1 -1
  168. package/lib/version.js +1 -1
  169. package/package.json +1 -9
  170. package/src/lib/seam/connect/api-error-types.ts +0 -2
  171. package/src/lib/seam/connect/openapi.ts +2 -4
  172. package/src/lib/seam/connect/resources/access-code.ts +719 -35
  173. package/src/lib/seam/connect/resources/access-grant.ts +284 -16
  174. package/src/lib/seam/connect/resources/access-method.ts +205 -10
  175. package/src/lib/seam/connect/resources/acs-access-group.ts +247 -14
  176. package/src/lib/seam/connect/resources/acs-credential.ts +210 -5
  177. package/src/lib/seam/connect/resources/acs-encoder.ts +46 -0
  178. package/src/lib/seam/connect/resources/acs-entrance.ts +296 -4
  179. package/src/lib/seam/connect/resources/acs-system.ts +223 -9
  180. package/src/lib/seam/connect/resources/acs-user.ts +382 -16
  181. package/src/lib/seam/connect/resources/action-attempt.ts +956 -0
  182. package/src/lib/seam/connect/resources/batch.ts +3 -0
  183. package/src/lib/seam/connect/resources/client-session.ts +48 -0
  184. package/src/lib/seam/connect/resources/connect-webview.ts +70 -0
  185. package/src/lib/seam/connect/resources/connected-account.ts +277 -10
  186. package/src/lib/seam/connect/resources/customer-portal.ts +22 -0
  187. package/src/lib/seam/connect/resources/device-provider.ts +72 -0
  188. package/src/lib/seam/connect/resources/device.ts +2059 -39
  189. package/src/lib/seam/connect/resources/event.ts +4015 -0
  190. package/src/lib/seam/connect/resources/instant-key.ts +41 -0
  191. package/src/lib/seam/connect/resources/noise-threshold.ts +24 -0
  192. package/src/lib/seam/connect/resources/phone.ts +72 -0
  193. package/src/lib/seam/connect/resources/space.ts +54 -0
  194. package/src/lib/seam/connect/resources/thermostat-daily-program.ts +27 -0
  195. package/src/lib/seam/connect/resources/thermostat-schedule.ts +45 -0
  196. package/src/lib/seam/connect/resources/unmanaged-access-code.ts +580 -30
  197. package/src/lib/seam/connect/resources/unmanaged-access-grant.ts +272 -16
  198. package/src/lib/seam/connect/resources/unmanaged-access-method.ts +196 -10
  199. package/src/lib/seam/connect/resources/unmanaged-device.ts +727 -39
  200. package/src/lib/seam/connect/resources/unmanaged-user-identity.ts +84 -8
  201. package/src/lib/seam/connect/resources/user-identity.ts +87 -8
  202. package/src/lib/seam/connect/resources/webhook.ts +15 -0
  203. package/src/lib/seam/connect/resources/workspace.ts +46 -0
  204. package/src/lib/seam/connect/routes/access-codes/access-codes.ts +291 -0
  205. package/src/lib/seam/connect/routes/access-codes/simulate/simulate.ts +12 -0
  206. package/src/lib/seam/connect/routes/access-codes/unmanaged/unmanaged.ts +73 -0
  207. package/src/lib/seam/connect/routes/access-grants/access-grants.ts +180 -0
  208. package/src/lib/seam/connect/routes/access-grants/unmanaged/unmanaged.ts +43 -0
  209. package/src/lib/seam/connect/routes/access-methods/access-methods.ts +79 -0
  210. package/src/lib/seam/connect/routes/access-methods/unmanaged/unmanaged.ts +21 -0
  211. package/src/lib/seam/connect/routes/acs/access-groups/access-groups.ts +63 -0
  212. package/src/lib/seam/connect/routes/acs/credentials/credentials.ts +133 -0
  213. package/src/lib/seam/connect/routes/acs/encoders/encoders.ts +66 -0
  214. package/src/lib/seam/connect/routes/acs/encoders/simulate/simulate.ts +40 -0
  215. package/src/lib/seam/connect/routes/acs/entrances/entrances.ts +72 -0
  216. package/src/lib/seam/connect/routes/acs/systems/systems.ts +64 -0
  217. package/src/lib/seam/connect/routes/acs/users/users.ts +189 -0
  218. package/src/lib/seam/connect/routes/action-attempts/action-attempts.ts +21 -0
  219. package/src/lib/seam/connect/routes/client-sessions/client-sessions.ts +113 -0
  220. package/src/lib/seam/connect/routes/connect-webviews/connect-webviews.ts +76 -0
  221. package/src/lib/seam/connect/routes/connected-accounts/connected-accounts.ts +70 -0
  222. package/src/lib/seam/connect/routes/connected-accounts/simulate/simulate.ts +6 -0
  223. package/src/lib/seam/connect/routes/customers/customers.ts +1058 -0
  224. package/src/lib/seam/connect/routes/devices/devices.ts +123 -0
  225. package/src/lib/seam/connect/routes/devices/simulate/simulate.ts +42 -0
  226. package/src/lib/seam/connect/routes/devices/unmanaged/unmanaged.ts +80 -0
  227. package/src/lib/seam/connect/routes/events/events.ts +99 -0
  228. package/src/lib/seam/connect/routes/instant-keys/instant-keys.ts +21 -0
  229. package/src/lib/seam/connect/routes/locks/locks.ts +85 -0
  230. package/src/lib/seam/connect/routes/locks/simulate/simulate.ts +15 -0
  231. package/src/lib/seam/connect/routes/noise-sensors/noise-sensors.ts +51 -0
  232. package/src/lib/seam/connect/routes/noise-sensors/noise-thresholds/noise-thresholds.ts +66 -0
  233. package/src/lib/seam/connect/routes/noise-sensors/simulate/simulate.ts +6 -0
  234. package/src/lib/seam/connect/routes/phones/phones.ts +21 -0
  235. package/src/lib/seam/connect/routes/phones/simulate/simulate.ts +45 -0
  236. package/src/lib/seam/connect/routes/seam-http-endpoints-without-workspace.ts +6 -0
  237. package/src/lib/seam/connect/routes/seam-http-endpoints.ts +696 -0
  238. package/src/lib/seam/connect/routes/spaces/spaces.ts +166 -0
  239. package/src/lib/seam/connect/routes/thermostats/daily-programs/daily-programs.ts +42 -0
  240. package/src/lib/seam/connect/routes/thermostats/schedules/schedules.ts +69 -0
  241. package/src/lib/seam/connect/routes/thermostats/simulate/simulate.ts +33 -0
  242. package/src/lib/seam/connect/routes/thermostats/thermostats.ts +300 -0
  243. package/src/lib/seam/connect/routes/user-identities/unmanaged/unmanaged.ts +35 -0
  244. package/src/lib/seam/connect/routes/user-identities/user-identities.ts +146 -0
  245. package/src/lib/seam/connect/routes/webhooks/webhooks.ts +33 -0
  246. package/src/lib/seam/connect/routes/workspaces/workspaces.ts +88 -0
  247. package/src/lib/version.ts +1 -1
@@ -3,27 +3,93 @@
3
3
  * Do not edit this file.
4
4
  */
5
5
 
6
+ /**
7
+ * Represents a [device](https://docs.seam.co/core-concepts/devices) that has been connected to Seam.
8
+ */
6
9
  export type Device = {
10
+ /**
11
+ * Indicates whether the lock supports configuring automatic locking.
12
+ */
7
13
  can_configure_auto_lock?: boolean | undefined
14
+ /**
15
+ * Indicates whether the thermostat supports cooling.
16
+ */
8
17
  can_hvac_cool?: boolean | undefined
18
+ /**
19
+ * Indicates whether the thermostat supports heating.
20
+ */
9
21
  can_hvac_heat?: boolean | undefined
22
+ /**
23
+ * Indicates whether the thermostat supports simultaneous heating and cooling.
24
+ */
10
25
  can_hvac_heat_cool?: boolean | undefined
26
+ /**
27
+ * Indicates whether the device supports programming offline access codes.
28
+ */
11
29
  can_program_offline_access_codes?: boolean | undefined
30
+ /**
31
+ * Indicates whether the device supports programming online access codes.
32
+ */
12
33
  can_program_online_access_codes?: boolean | undefined
34
+ /**
35
+ * Indicates whether the thermostat supports different climate programs for each day of the week.
36
+ */
13
37
  can_program_thermostat_programs_as_different_each_day?: boolean | undefined
38
+ /**
39
+ * Indicates whether the thermostat supports a single climate program applied to every day.
40
+ */
14
41
  can_program_thermostat_programs_as_same_each_day?: boolean | undefined
42
+ /**
43
+ * Indicates whether the thermostat supports weekday/weekend climate programs.
44
+ */
15
45
  can_program_thermostat_programs_as_weekday_weekend?: boolean | undefined
46
+ /**
47
+ * Indicates whether the device supports remote locking.
48
+ */
16
49
  can_remotely_lock?: boolean | undefined
50
+ /**
51
+ * Indicates whether the device supports remote unlocking.
52
+ */
17
53
  can_remotely_unlock?: boolean | undefined
54
+ /**
55
+ * Indicates whether the thermostat supports running climate programs.
56
+ */
18
57
  can_run_thermostat_programs?: boolean | undefined
58
+ /**
59
+ * Indicates whether the device supports simulating connection in a sandbox.
60
+ */
19
61
  can_simulate_connection?: boolean | undefined
62
+ /**
63
+ * Indicates whether the device supports simulating disconnection in a sandbox.
64
+ */
20
65
  can_simulate_disconnection?: boolean | undefined
66
+ /**
67
+ * Indicates whether the hub supports simulating connection in a sandbox.
68
+ */
21
69
  can_simulate_hub_connection?: boolean | undefined
70
+ /**
71
+ * Indicates whether the hub supports simulating disconnection in a sandbox.
72
+ */
22
73
  can_simulate_hub_disconnection?: boolean | undefined
74
+ /**
75
+ * Indicates whether the device supports simulating a paid subscription in a sandbox.
76
+ */
23
77
  can_simulate_paid_subscription?: boolean | undefined
78
+ /**
79
+ * Indicates whether the device supports simulating removal in a sandbox.
80
+ */
24
81
  can_simulate_removal?: boolean | undefined
82
+ /**
83
+ * Indicates whether the thermostat can be turned off.
84
+ */
25
85
  can_turn_off_hvac?: boolean | undefined
86
+ /**
87
+ * Indicates whether the lock supports unlocking with an access code.
88
+ */
26
89
  can_unlock_with_code?: boolean | undefined
90
+ /**
91
+ * 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/capability-guides/device-and-system-capabilities#capability-flags).
92
+ */
27
93
  capabilities_supported: Array<
28
94
  | 'access_code'
29
95
  | 'lock'
@@ -33,32 +99,74 @@ export type Device = {
33
99
  | 'phone'
34
100
  >
35
101
 
102
+ /**
103
+ * Unique identifier for the account associated with the device.
104
+ */
36
105
  connected_account_id: string
37
106
 
107
+ /**
108
+ * Date and time at which the device object was created.
109
+ */
38
110
  created_at: string
39
111
 
112
+ /**
113
+ * Set of key:value pairs. Adding custom metadata to a resource, such as a [Connect Webview](https://docs.seam.co/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview), [connected account](https://docs.seam.co/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account), or [device](https://docs.seam.co/core-concepts/devices/adding-custom-metadata-to-a-device), enables you to store custom information, like customer details or internal IDs from your application.
114
+ */
40
115
  custom_metadata: Record<string, unknown>
41
116
 
117
+ /**
118
+ * ID of the device.
119
+ */
42
120
  device_id: string
43
121
 
122
+ /**
123
+ * Manufacturer of the device. Represents the hardware brand, which may differ from the provider.
124
+ */
44
125
  device_manufacturer?:
45
126
  | {
127
+ /**
128
+ * Display name for the manufacturer, such as `August`, `Yale`, `Salto`, and so on.
129
+ */
46
130
  display_name: string
47
131
 
132
+ /**
133
+ * Image URL for the manufacturer logo.
134
+ */
48
135
  image_url?: string | undefined
136
+ /**
137
+ * Manufacturer identifier, such as `august`, `yale`, `salto`, and so on.
138
+ */
49
139
  manufacturer: string
50
140
  }
51
141
  | undefined
142
+ /**
143
+ * Provider of the device. Represents the third-party service through which the device is controlled.
144
+ */
52
145
  device_provider?:
53
146
  | {
147
+ /**
148
+ * Device provider name. Corresponds to the integration type, such as `august`, `schlage`, `yale_access`, and so on.
149
+ */
54
150
  device_provider_name: string
55
151
 
152
+ /**
153
+ * Display name for the device provider type.
154
+ */
56
155
  display_name: string
57
156
 
157
+ /**
158
+ * Image URL for the device provider.
159
+ */
58
160
  image_url?: string | undefined
161
+ /**
162
+ * Provider category. Indicates the third-party provider type, such as `stable`, for stable integrations, or `internal`, for internal integrations.
163
+ */
59
164
  provider_category: string
60
165
  }
61
166
  | undefined
167
+ /**
168
+ * Type of the device.
169
+ */
62
170
  device_type:
63
171
  | 'akuvox_lock'
64
172
  | 'august_lock'
@@ -103,428 +211,1198 @@ export type Device = {
103
211
  | 'android_phone'
104
212
  | 'ring_camera'
105
213
 
214
+ /**
215
+ * 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.
216
+ */
106
217
  display_name: string
107
218
 
219
+ /**
220
+ * 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.
221
+ */
108
222
  errors: Array<
223
+ /**
224
+ * Indicates that the account is disconnected.
225
+ */
109
226
  | {
227
+ /**
228
+ * Date and time at which Seam created the error.
229
+ */
110
230
  created_at: string
111
231
 
232
+ /**
233
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
234
+ */
112
235
  error_code: 'account_disconnected'
113
236
 
237
+ /**
238
+ * Indicates that the error is a [connected account](https://docs.seam.co/api/connected_accounts) error.
239
+ */
114
240
  is_connected_account_error: boolean
115
241
 
242
+ /**
243
+ * Indicates that the error is not a device error.
244
+ */
116
245
  is_device_error: boolean
117
246
 
247
+ /**
248
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
249
+ */
118
250
  message: string
119
- }
251
+ } /**
252
+ * Indicates that the Salto site user limit has been reached.
253
+ */
120
254
  | {
255
+ /**
256
+ * Date and time at which Seam created the error.
257
+ */
121
258
  created_at: string
122
259
 
260
+ /**
261
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
262
+ */
123
263
  error_code: 'salto_ks_subscription_limit_exceeded'
124
264
 
265
+ /**
266
+ * Indicates that the error is a [connected account](https://docs.seam.co/api/connected_accounts) error.
267
+ */
125
268
  is_connected_account_error: boolean
126
269
 
270
+ /**
271
+ * Indicates that the error is not a device error.
272
+ */
127
273
  is_device_error: boolean
128
274
 
275
+ /**
276
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
277
+ */
129
278
  message: string
130
- }
279
+ } /**
280
+ * Indicates that one or more dormakaba sites associated with the connected account could not be connected. Contact dormakaba support.
281
+ */
131
282
  | {
283
+ /**
284
+ * Date and time at which Seam created the error.
285
+ */
132
286
  created_at: string
133
287
 
288
+ /**
289
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
290
+ */
134
291
  error_code: 'dormakaba_sites_disconnected'
135
292
 
293
+ /**
294
+ * Indicates that the error is a [connected account](https://docs.seam.co/api/connected_accounts) error.
295
+ */
136
296
  is_connected_account_error: boolean
137
297
 
298
+ /**
299
+ * Indicates that the error is not a device error.
300
+ */
138
301
  is_device_error: boolean
139
302
 
303
+ /**
304
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
305
+ */
140
306
  message: string
141
- }
307
+ } /**
308
+ * Indicates that the device is offline.
309
+ */
142
310
  | {
311
+ /**
312
+ * Date and time at which Seam created the error.
313
+ */
143
314
  created_at: string
144
315
 
316
+ /**
317
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
318
+ */
145
319
  error_code: 'device_offline'
146
320
 
321
+ /**
322
+ * Indicates that the error is a device error.
323
+ */
147
324
  is_device_error: boolean
148
325
 
326
+ /**
327
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
328
+ */
149
329
  message: string
150
- }
330
+ } /**
331
+ * Indicates that the device has been removed.
332
+ */
151
333
  | {
334
+ /**
335
+ * Date and time at which Seam created the error.
336
+ */
152
337
  created_at: string
153
338
 
339
+ /**
340
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
341
+ */
154
342
  error_code: 'device_removed'
155
343
 
344
+ /**
345
+ * Indicates that the error is a device error.
346
+ */
156
347
  is_device_error: boolean
157
348
 
349
+ /**
350
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
351
+ */
158
352
  message: string
159
- }
353
+ } /**
354
+ * Indicates that the hub is disconnected.
355
+ */
160
356
  | {
357
+ /**
358
+ * Date and time at which Seam created the error.
359
+ */
161
360
  created_at: string
162
361
 
362
+ /**
363
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
364
+ */
163
365
  error_code: 'hub_disconnected'
164
366
 
367
+ /**
368
+ * Indicates that the error is a device error.
369
+ */
165
370
  is_device_error: boolean
166
371
 
372
+ /**
373
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
374
+ */
167
375
  message: string
168
- }
376
+ } /**
377
+ * Indicates that the device is disconnected.
378
+ */
169
379
  | {
380
+ /**
381
+ * Date and time at which Seam created the error.
382
+ */
170
383
  created_at: string
171
384
 
385
+ /**
386
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
387
+ */
172
388
  error_code: 'device_disconnected'
173
389
 
390
+ /**
391
+ * Indicates that the error is a device error.
392
+ */
174
393
  is_device_error: boolean
175
394
 
395
+ /**
396
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
397
+ */
176
398
  message: string
177
- }
399
+ } /**
400
+ * Indicates that the [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is empty.
401
+ */
178
402
  | {
403
+ /**
404
+ * Date and time at which Seam created the error.
405
+ */
179
406
  created_at: string
180
407
 
408
+ /**
409
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
410
+ */
181
411
  error_code: 'empty_backup_access_code_pool'
182
412
 
413
+ /**
414
+ * Indicates that the error is a device error.
415
+ */
183
416
  is_device_error: boolean
184
417
 
418
+ /**
419
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
420
+ */
185
421
  message: string
186
- }
422
+ } /**
423
+ * Indicates that the user is not authorized to use the August lock.
424
+ */
187
425
  | {
426
+ /**
427
+ * Date and time at which Seam created the error.
428
+ */
188
429
  created_at: string
189
430
 
431
+ /**
432
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
433
+ */
190
434
  error_code: 'august_lock_not_authorized'
191
435
 
436
+ /**
437
+ * Indicates that the error is a device error.
438
+ */
192
439
  is_device_error: boolean
193
440
 
441
+ /**
442
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
443
+ */
194
444
  message: string
195
- }
445
+ } /**
446
+ * Indicates that device credentials are missing.
447
+ */
196
448
  | {
449
+ /**
450
+ * Date and time at which Seam created the error.
451
+ */
197
452
  created_at: string
198
453
 
454
+ /**
455
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
456
+ */
199
457
  error_code: 'missing_device_credentials'
200
458
 
459
+ /**
460
+ * Indicates that the error is a device error.
461
+ */
201
462
  is_device_error: boolean
202
463
 
464
+ /**
465
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
466
+ */
203
467
  message: string
204
- }
468
+ } /**
469
+ * Indicates that the auxiliary heat is running.
470
+ */
205
471
  | {
472
+ /**
473
+ * Date and time at which Seam created the error.
474
+ */
206
475
  created_at: string
207
476
 
477
+ /**
478
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
479
+ */
208
480
  error_code: 'auxiliary_heat_running'
209
481
 
482
+ /**
483
+ * Indicates that the error is a device error.
484
+ */
210
485
  is_device_error: boolean
211
486
 
487
+ /**
488
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
489
+ */
212
490
  message: string
213
- }
491
+ } /**
492
+ * Indicates that a subscription is required to connect.
493
+ */
214
494
  | {
495
+ /**
496
+ * Date and time at which Seam created the error.
497
+ */
215
498
  created_at: string
216
499
 
500
+ /**
501
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
502
+ */
217
503
  error_code: 'subscription_required'
218
504
 
505
+ /**
506
+ * Indicates that the error is a device error.
507
+ */
219
508
  is_device_error: boolean
220
509
 
510
+ /**
511
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
512
+ */
221
513
  message: string
222
- }
514
+ } /**
515
+ * Indicates that the Seam API cannot communicate with [Seam Bridge](https://docs.seam.co/capability-guides/seam-bridge), for example, if the Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. See also [Troubleshooting Your Access Control System](https://docs.seam.co/low-level-apis/access-systems/troubleshooting-your-access-control-system#acs_system-errors-seam_bridge_disconnected).
516
+ */
223
517
  | {
518
+ /**
519
+ * Date and time at which Seam created the error.
520
+ */
224
521
  created_at: string
225
522
 
523
+ /**
524
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
525
+ */
226
526
  error_code: 'bridge_disconnected'
227
527
 
528
+ /**
529
+ * Indicates whether the error is related to [Seam Bridge](https://docs.seam.co/capability-guides/seam-bridge).
530
+ */
228
531
  is_bridge_error?: boolean | undefined
532
+ /**
533
+ * Indicates whether the error is related specifically to the connected account.
534
+ */
229
535
  is_connected_account_error?: boolean | undefined
536
+ /**
537
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
538
+ */
230
539
  message: string
231
540
  }
232
541
  >
233
542
 
543
+ /**
544
+ * Indicates whether Seam manages the device. See also [Managed and Unmanaged Devices](https://docs.seam.co/core-concepts/devices/managed-and-unmanaged-devices).
545
+ */
234
546
  is_managed: boolean
235
547
 
548
+ /**
549
+ * Location information for the device.
550
+ */
236
551
  location?:
237
552
  | {
553
+ /**
554
+ * Name of the device location.
555
+ */
238
556
  location_name?: string | undefined
557
+ /**
558
+ * Time zone of the device location.
559
+ */
239
560
  time_zone?: string | undefined
561
+ /**
562
+ * Time zone of the device location.
563
+ * @deprecated Use `time_zone` instead.
564
+ */
240
565
  timezone?: string | undefined
241
566
  }
242
567
  | undefined
568
+ /**
569
+ * Optional nickname to describe the device, settable through Seam.
570
+ */
243
571
  nickname?: string | undefined
572
+ /**
573
+ * Properties of the device.
574
+ */
244
575
  properties: {
576
+ /**
577
+ * Accessory keypad properties and state.
578
+ */
245
579
  accessory_keypad?:
246
580
  | {
581
+ /**
582
+ * Keypad battery properties.
583
+ */
247
584
  battery?:
248
585
  | {
249
586
  level: number
250
587
  }
251
588
  | undefined
589
+ /**
590
+ * Indicates if an accessory keypad is connected to the device.
591
+ */
252
592
  is_connected: boolean
253
593
  }
254
594
  | undefined
595
+ /**
596
+ * Appearance-related properties, as reported by the device.
597
+ */
255
598
  appearance: {
599
+ /**
600
+ * Name of the device as seen from the provider API and application, not settable through Seam.
601
+ */
256
602
  name: string
257
603
  }
258
604
 
605
+ /**
606
+ * Represents the current status of the battery charge level.
607
+ */
259
608
  battery?:
260
609
  | {
610
+ /**
611
+ * Battery charge level as a value between 0 and 1, inclusive.
612
+ */
261
613
  level: number
262
614
 
615
+ /**
616
+ * 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.
617
+ */
263
618
  status: 'critical' | 'low' | 'good' | 'full'
264
619
  }
265
620
  | undefined
621
+ /**
622
+ * Indicates the battery level of the device as a decimal value between 0 and 1, inclusive.
623
+ */
266
624
  battery_level?: number | undefined
625
+ /**
626
+ * Array of noise threshold IDs that are currently triggering.
627
+ */
267
628
  currently_triggering_noise_threshold_ids?: Array<string> | undefined
629
+ /**
630
+ * Indicates whether the device has direct power.
631
+ */
268
632
  has_direct_power?: boolean | undefined
633
+ /**
634
+ * Alt text for the device image.
635
+ */
269
636
  image_alt_text?: string | undefined
637
+ /**
638
+ * Image URL for the device.
639
+ */
270
640
  image_url?: string | undefined
641
+ /**
642
+ * 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.
643
+ */
271
644
  manufacturer?: string | undefined
645
+ /**
646
+ * Device model-related properties.
647
+ */
272
648
  model: {
649
+ /**
650
+ * @deprecated use device.properties.model.can_connect_accessory_keypad
651
+ */
273
652
  accessory_keypad_supported?: boolean | undefined
653
+ /**
654
+ * Indicates whether the device can connect a accessory keypad.
655
+ */
274
656
  can_connect_accessory_keypad?: boolean | undefined
657
+ /**
658
+ * Display name of the device model.
659
+ */
275
660
  display_name: string
276
661
 
662
+ /**
663
+ * Indicates whether the device has a built in accessory keypad.
664
+ */
277
665
  has_built_in_keypad?: boolean | undefined
666
+ /**
667
+ * Display name that corresponds to the manufacturer-specific terminology for the device.
668
+ */
278
669
  manufacturer_display_name: string
279
670
 
671
+ /**
672
+ * @deprecated use device.can_program_offline_access_codes.
673
+ */
280
674
  offline_access_codes_supported?: boolean | undefined
675
+ /**
676
+ * @deprecated use device.can_program_online_access_codes.
677
+ */
281
678
  online_access_codes_supported?: boolean | undefined
282
679
  }
283
680
 
681
+ /**
682
+ * Name of the device.
683
+ * @deprecated use device.display_name instead
684
+ */
284
685
  name: string
285
686
 
687
+ /**
688
+ * Indicates current noise level in decibels, if the device supports noise detection.
689
+ */
286
690
  noise_level_decibels?: number | undefined
691
+ /**
692
+ * Indicates whether it is currently possible to use offline access codes for the device.
693
+ * @deprecated use device.can_program_offline_access_codes
694
+ */
287
695
  offline_access_codes_enabled?: boolean | undefined
696
+ /**
697
+ * Indicates whether the device is online.
698
+ */
288
699
  online: boolean
289
700
 
701
+ /**
702
+ * Indicates whether it is currently possible to use online access codes for the device.
703
+ * @deprecated use device.can_program_online_access_codes
704
+ */
290
705
  online_access_codes_enabled?: boolean | undefined
706
+ /**
707
+ * Serial number of the device.
708
+ */
291
709
  serial_number?: string | undefined
710
+ /**
711
+ * @deprecated use device.properties.model.can_connect_accessory_keypad
712
+ */
292
713
  supports_accessory_keypad?: boolean | undefined
714
+ /**
715
+ * @deprecated use offline_access_codes_enabled
716
+ */
293
717
  supports_offline_access_codes?: boolean | undefined
718
+ /**
719
+ * ASSA ABLOY Credential Service metadata for the phone.
720
+ */
294
721
  assa_abloy_credential_service_metadata?:
295
722
  | {
723
+ /**
724
+ * Endpoints associated with the phone.
725
+ */
296
726
  endpoints?:
297
727
  | Array<{
728
+ /**
729
+ * ID of the associated endpoint.
730
+ */
298
731
  endpoint_id?: string | undefined
732
+ /**
733
+ * Indicated whether the endpoint is active.
734
+ */
299
735
  is_active?: boolean | undefined
300
736
  }>
301
737
  | undefined
738
+ /**
739
+ * Indicates whether the credential service has active endpoints associated with the phone.
740
+ */
302
741
  has_active_endpoint?: boolean | undefined
303
742
  }
304
743
  | undefined
744
+ /**
745
+ * Salto Space credential service metadata for the phone.
746
+ */
305
747
  salto_space_credential_service_metadata?:
306
748
  | {
749
+ /**
750
+ * Indicates whether the credential service has an active associated phone.
751
+ */
307
752
  has_active_phone?: boolean | undefined
308
753
  }
309
754
  | undefined
755
+ /**
756
+ * Metadata for an Akiles device.
757
+ */
310
758
  akiles_metadata?:
311
759
  | {
760
+ /**
761
+ * Group ID to which to add users for an Akiles device.
762
+ */
312
763
  _member_group_id?: string | undefined
764
+ /**
765
+ * Gadget ID for an Akiles device.
766
+ */
313
767
  gadget_id?: string | undefined
768
+ /**
769
+ * Gadget name for an Akiles device.
770
+ */
314
771
  gadget_name?: string | undefined
772
+ /**
773
+ * Product name for an Akiles device.
774
+ */
315
775
  product_name?: string | undefined
316
776
  }
317
777
  | undefined
778
+ /**
779
+ * Metadata for an Aqara device.
780
+ */
318
781
  aqara_metadata?:
319
782
  | {
783
+ /**
784
+ * Device name for an Aqara device.
785
+ */
320
786
  device_name?: string | undefined
787
+ /**
788
+ * Device ID (did) for an Aqara device.
789
+ */
321
790
  did?: string | undefined
791
+ /**
792
+ * Firmware version for an Aqara device.
793
+ */
322
794
  firmware_version?: string | null | undefined
795
+ /**
796
+ * Model identifier for an Aqara device.
797
+ */
323
798
  model?: string | undefined
799
+ /**
800
+ * Model type for an Aqara device.
801
+ */
324
802
  model_type?: number | undefined
803
+ /**
804
+ * Parent gateway device ID for an Aqara device.
805
+ */
325
806
  parent_did?: string | undefined
807
+ /**
808
+ * Position (room) ID for an Aqara device.
809
+ */
326
810
  position_id?: string | null | undefined
811
+ /**
812
+ * Time zone reported for an Aqara device (e.g. GMT-07:00).
813
+ */
327
814
  time_zone?: string | null | undefined
328
815
  }
329
816
  | undefined
817
+ /**
818
+ * Metadata for an ASSA ABLOY Vostio system.
819
+ */
330
820
  assa_abloy_vostio_metadata?:
331
821
  | {
822
+ /**
823
+ * Encoder name for an ASSA ABLOY Vostio system.
824
+ */
332
825
  encoder_name?: string | undefined
333
826
  }
334
827
  | undefined
828
+ /**
829
+ * Metadata for an August device.
830
+ */
335
831
  august_metadata?:
336
832
  | {
833
+ /**
834
+ * Indicates whether an August device has a keypad.
835
+ */
337
836
  has_keypad?: boolean | undefined
837
+ /**
838
+ * House ID for an August device.
839
+ */
338
840
  house_id?: string | undefined
841
+ /**
842
+ * House name for an August device.
843
+ */
339
844
  house_name?: string | undefined
845
+ /**
846
+ * Keypad battery level for an August device.
847
+ */
340
848
  keypad_battery_level?: string | undefined
849
+ /**
850
+ * Lock ID for an August device.
851
+ */
341
852
  lock_id?: string | undefined
853
+ /**
854
+ * Lock name for an August device.
855
+ */
342
856
  lock_name?: string | undefined
857
+ /**
858
+ * Model for an August device.
859
+ */
343
860
  model?: string | undefined
344
861
  }
345
862
  | undefined
863
+ /**
864
+ * Metadata for an Avigilon Alta system.
865
+ */
346
866
  avigilon_alta_metadata?:
347
867
  | {
868
+ /**
869
+ * Entry name for an Avigilon Alta system.
870
+ */
348
871
  entry_name?: string | undefined
872
+ /**
873
+ * Total count of entry relays for an Avigilon Alta system.
874
+ */
349
875
  entry_relays_total_count?: number | undefined
876
+ /**
877
+ * Organization name for an Avigilon Alta system.
878
+ */
350
879
  org_name?: string | undefined
880
+ /**
881
+ * Site ID for an Avigilon Alta system.
882
+ */
351
883
  site_id?: number | undefined
884
+ /**
885
+ * Site name for an Avigilon Alta system.
886
+ */
352
887
  site_name?: string | undefined
888
+ /**
889
+ * Zone ID for an Avigilon Alta system.
890
+ */
353
891
  zone_id?: number | undefined
892
+ /**
893
+ * Zone name for an Avigilon Alta system.
894
+ */
354
895
  zone_name?: string | undefined
355
896
  }
356
897
  | undefined
898
+ /**
899
+ * Metadata for a Brivo device.
900
+ */
357
901
  brivo_metadata?:
358
902
  | {
903
+ /**
904
+ * Indicates whether the Brivo access point has activation (remote unlock) enabled.
905
+ */
359
906
  activation_enabled?: boolean | undefined
907
+ /**
908
+ * Device name for a Brivo device.
909
+ */
360
910
  device_name?: string | undefined
361
911
  }
362
912
  | undefined
913
+ /**
914
+ * Metadata for a ControlByWeb device.
915
+ */
363
916
  controlbyweb_metadata?:
364
917
  | {
918
+ /**
919
+ * Device ID for a ControlByWeb device.
920
+ */
365
921
  device_id?: string | undefined
922
+ /**
923
+ * Device name for a ControlByWeb device.
924
+ */
366
925
  device_name?: string | undefined
926
+ /**
927
+ * Relay name for a ControlByWeb device.
928
+ */
367
929
  relay_name?: string | null | undefined
368
930
  }
369
931
  | undefined
932
+ /**
933
+ * Metadata for a dormakaba Oracode device.
934
+ */
370
935
  dormakaba_oracode_metadata?:
371
936
  | {
937
+ /**
938
+ * Device ID for a dormakaba Oracode device.
939
+ */
372
940
  device_id?: {} | undefined
941
+ /**
942
+ * Door ID for a dormakaba Oracode device.
943
+ */
373
944
  door_id?: number | undefined
945
+ /**
946
+ * Indicates whether a door is wireless for a dormakaba Oracode device.
947
+ */
374
948
  door_is_wireless?: boolean | undefined
949
+ /**
950
+ * Door name for a dormakaba Oracode device.
951
+ */
375
952
  door_name?: string | undefined
953
+ /**
954
+ * IANA time zone for a dormakaba Oracode device.
955
+ */
376
956
  iana_timezone?: string | undefined
957
+ /**
958
+ * Predefined time slots for a dormakaba Oracode device.
959
+ */
377
960
  predefined_time_slots?:
378
961
  | Array<{
962
+ /**
963
+ * Check in time for a time slot for a dormakaba Oracode device.
964
+ */
379
965
  check_in_time?: string | undefined
966
+ /**
967
+ * Checkout time for a time slot for a dormakaba Oracode device.
968
+ */
380
969
  check_out_time?: string | undefined
970
+ /**
971
+ * ID of a user level for a dormakaba Oracode device.
972
+ */
381
973
  dormakaba_oracode_user_level_id?: string | undefined
974
+ /**
975
+ * Prefix for a user level for a dormakaba Oracode device.
976
+ */
382
977
  dormakaba_oracode_user_level_prefix?: number | undefined
978
+ /**
979
+ * Indicates whether a time slot for a dormakaba Oracode device is a 24-hour time slot.
980
+ */
383
981
  is_24_hour?: boolean | undefined
982
+ /**
983
+ * Indicates whether a time slot for a dormakaba Oracode device is in biweekly mode.
984
+ */
384
985
  is_biweekly_mode?: boolean | undefined
986
+ /**
987
+ * Indicates whether a time slot for a dormakaba Oracode device is a master time slot.
988
+ */
385
989
  is_master?: boolean | undefined
990
+ /**
991
+ * Indicates whether a time slot for a dormakaba Oracode device is a one-shot time slot.
992
+ */
386
993
  is_one_shot?: boolean | undefined
994
+ /**
995
+ * Name of a time slot for a dormakaba Oracode device.
996
+ */
387
997
  name?: string | undefined
998
+ /**
999
+ * Prefix for a time slot for a dormakaba Oracode device.
1000
+ */
388
1001
  prefix?: number | undefined
389
1002
  }>
390
1003
  | undefined
1004
+ /**
1005
+ * Site ID for a dormakaba Oracode device.
1006
+ * @deprecated Previously marked as "@DEPRECATED."
1007
+ */
391
1008
  site_id?: number | null | undefined
1009
+ /**
1010
+ * Site name for a dormakaba Oracode device.
1011
+ */
392
1012
  site_name?: string | undefined
393
1013
  }
394
1014
  | undefined
1015
+ /**
1016
+ * Metadata for an ecobee device.
1017
+ */
395
1018
  ecobee_metadata?:
396
1019
  | {
1020
+ /**
1021
+ * Device name for an ecobee device.
1022
+ */
397
1023
  device_name?: string | undefined
1024
+ /**
1025
+ * Device ID for an ecobee device.
1026
+ */
398
1027
  ecobee_device_id?: string | undefined
399
1028
  }
400
1029
  | undefined
1030
+ /**
1031
+ * Metadata for a 4SUITES device.
1032
+ */
401
1033
  four_suites_metadata?:
402
1034
  | {
1035
+ /**
1036
+ * Device ID for a 4SUITES device.
1037
+ */
403
1038
  device_id?: number | undefined
1039
+ /**
1040
+ * Device name for a 4SUITES device.
1041
+ */
404
1042
  device_name?: string | undefined
1043
+ /**
1044
+ * Reclose delay, in seconds, for a 4SUITES device.
1045
+ */
405
1046
  reclose_delay_in_seconds?: number | undefined
406
1047
  }
407
1048
  | undefined
1049
+ /**
1050
+ * Metadata for a Genie device.
1051
+ */
408
1052
  genie_metadata?:
409
1053
  | {
1054
+ /**
1055
+ * Lock name for a Genie device.
1056
+ */
410
1057
  device_name?: string | undefined
1058
+ /**
1059
+ * Door name for a Genie device.
1060
+ */
411
1061
  door_name?: string | undefined
412
1062
  }
413
1063
  | undefined
1064
+ /**
1065
+ * Metadata for a Honeywell Resideo device.
1066
+ */
414
1067
  honeywell_resideo_metadata?:
415
1068
  | {
1069
+ /**
1070
+ * Device name for a Honeywell Resideo device.
1071
+ */
416
1072
  device_name?: string | undefined
1073
+ /**
1074
+ * Device ID for a Honeywell Resideo device.
1075
+ */
417
1076
  honeywell_resideo_device_id?: string | undefined
418
1077
  }
419
1078
  | undefined
1079
+ /**
1080
+ * Metadata for an igloo device.
1081
+ */
420
1082
  igloo_metadata?:
421
1083
  | {
1084
+ /**
1085
+ * Bridge ID for an igloo device.
1086
+ */
422
1087
  bridge_id?: string | undefined
1088
+ /**
1089
+ * Device ID for an igloo device.
1090
+ */
423
1091
  device_id?: string | undefined
1092
+ /**
1093
+ * Model for an igloo device.
1094
+ */
424
1095
  model?: string | undefined
425
1096
  }
426
1097
  | undefined
1098
+ /**
1099
+ * Metadata for an igloohome device.
1100
+ */
427
1101
  igloohome_metadata?:
428
1102
  | {
1103
+ /**
1104
+ * Bridge ID for an igloohome device.
1105
+ */
429
1106
  bridge_id?: string | undefined
1107
+ /**
1108
+ * Bridge name for an igloohome device.
1109
+ */
430
1110
  bridge_name?: string | undefined
1111
+ /**
1112
+ * Device ID for an igloohome device.
1113
+ */
431
1114
  device_id?: string | undefined
1115
+ /**
1116
+ * Device name for an igloohome device.
1117
+ */
432
1118
  device_name?: string | undefined
1119
+ /**
1120
+ * Indicates whether a keypad is linked to a bridge for an igloohome device.
1121
+ */
433
1122
  is_accessory_keypad_linked_to_bridge?: boolean | undefined
1123
+ /**
1124
+ * Keypad ID for an igloohome device.
1125
+ */
434
1126
  keypad_id?: string | undefined
435
1127
  }
436
1128
  | undefined
1129
+ /**
1130
+ * Metadata for a KeyNest device.
1131
+ */
437
1132
  keynest_metadata?:
438
1133
  | {
1134
+ /**
1135
+ * Address for a KeyNest device.
1136
+ */
439
1137
  address?: string | null | undefined
1138
+ /**
1139
+ * Current or last store ID for a KeyNest device.
1140
+ */
440
1141
  current_or_last_store_id?: number | undefined
1142
+ /**
1143
+ * Current status for a KeyNest device.
1144
+ */
441
1145
  current_status?: string | null | undefined
1146
+ /**
1147
+ * Current user company for a KeyNest device.
1148
+ */
442
1149
  current_user_company?: string | null | undefined
1150
+ /**
1151
+ * Current user email for a KeyNest device.
1152
+ */
443
1153
  current_user_email?: string | null | undefined
1154
+ /**
1155
+ * Current user name for a KeyNest device.
1156
+ */
444
1157
  current_user_name?: string | null | undefined
1158
+ /**
1159
+ * Current user phone number for a KeyNest device.
1160
+ */
445
1161
  current_user_phone_number?: string | null | undefined
1162
+ /**
1163
+ * Default office ID for a KeyNest device.
1164
+ */
446
1165
  default_office_id?: number | undefined
1166
+ /**
1167
+ * Device name for a KeyNest device.
1168
+ */
447
1169
  device_name?: string | undefined
1170
+ /**
1171
+ * Fob ID for a KeyNest device.
1172
+ */
448
1173
  fob_id?: number | undefined
1174
+ /**
1175
+ * Handover method for a KeyNest device.
1176
+ */
449
1177
  handover_method?: string | null | undefined
1178
+ /**
1179
+ * Whether the KeyNest device has a photo.
1180
+ */
450
1181
  has_photo?: boolean | undefined
1182
+ /**
1183
+ * Whether the key is in a locker that does not support the access codes API.
1184
+ */
451
1185
  is_quadient_locker?: boolean | undefined
1186
+ /**
1187
+ * Key ID for a KeyNest device.
1188
+ */
452
1189
  key_id?: string | undefined
1190
+ /**
1191
+ * Key notes for a KeyNest device.
1192
+ */
453
1193
  key_notes?: string | null | undefined
1194
+ /**
1195
+ * KeyNest app user for a KeyNest device.
1196
+ */
454
1197
  keynest_app_user?: string | null | undefined
1198
+ /**
1199
+ * Last movement timestamp for a KeyNest device.
1200
+ */
455
1201
  last_movement?: string | undefined
1202
+ /**
1203
+ * Property ID for a KeyNest device.
1204
+ */
456
1205
  property_id?: string | null | undefined
1206
+ /**
1207
+ * Property postcode for a KeyNest device.
1208
+ */
457
1209
  property_postcode?: string | null | undefined
1210
+ /**
1211
+ * Status type for a KeyNest device.
1212
+ */
458
1213
  status_type?: string | undefined
1214
+ /**
1215
+ * Subscription plan for a KeyNest device.
1216
+ */
459
1217
  subscription_plan?: string | undefined
460
1218
  }
461
1219
  | undefined
1220
+ /**
1221
+ * Metadata for a Kisi device.
1222
+ */
462
1223
  kisi_metadata?:
463
1224
  | {
1225
+ /**
1226
+ * Description for a Kisi device.
1227
+ */
464
1228
  description?: string | null | undefined
1229
+ /**
1230
+ * Lock ID for a Kisi device.
1231
+ */
465
1232
  lock_id?: number | undefined
1233
+ /**
1234
+ * Lock name for a Kisi device.
1235
+ */
466
1236
  lock_name?: string | undefined
1237
+ /**
1238
+ * Place name for a Kisi device.
1239
+ */
467
1240
  place_name?: string | null | undefined
468
1241
  }
469
1242
  | undefined
1243
+ /**
1244
+ * Metadata for a Korelock device.
1245
+ */
470
1246
  korelock_metadata?:
471
1247
  | {
1248
+ /**
1249
+ * Device ID for a Korelock device.
1250
+ */
472
1251
  device_id?: string | undefined
1252
+ /**
1253
+ * Device name for a Korelock device.
1254
+ */
473
1255
  device_name?: string | undefined
1256
+ /**
1257
+ * Firmware version for a Korelock device.
1258
+ */
474
1259
  firmware_version?: string | undefined
1260
+ /**
1261
+ * Location ID for a Korelock device. Required for timebound access codes.
1262
+ */
475
1263
  location_id?: string | null | undefined
1264
+ /**
1265
+ * Model code for a Korelock device.
1266
+ */
476
1267
  model_code?: string | undefined
1268
+ /**
1269
+ * Serial number for a Korelock device.
1270
+ */
477
1271
  serial_number?: string | undefined
1272
+ /**
1273
+ * WiFi signal strength (0-1) for a Korelock device.
1274
+ */
478
1275
  wifi_signal_strength?: number | undefined
479
1276
  }
480
1277
  | undefined
1278
+ /**
1279
+ * Metadata for a Kwikset device.
1280
+ */
481
1281
  kwikset_metadata?:
482
1282
  | {
1283
+ /**
1284
+ * Device ID for a Kwikset device.
1285
+ */
483
1286
  device_id?: string | undefined
1287
+ /**
1288
+ * Device name for a Kwikset device.
1289
+ */
484
1290
  device_name?: string | undefined
1291
+ /**
1292
+ * Model number for a Kwikset device.
1293
+ */
485
1294
  model_number?: string | undefined
486
1295
  }
487
1296
  | undefined
1297
+ /**
1298
+ * Metadata for a Lockly device.
1299
+ */
488
1300
  lockly_metadata?:
489
1301
  | {
1302
+ /**
1303
+ * Device ID for a Lockly device.
1304
+ */
490
1305
  device_id?: string | undefined
1306
+ /**
1307
+ * Device name for a Lockly device.
1308
+ */
491
1309
  device_name?: string | undefined
1310
+ /**
1311
+ * Model for a Lockly device.
1312
+ */
492
1313
  model?: string | undefined
493
1314
  }
494
1315
  | undefined
1316
+ /**
1317
+ * Metadata for a Minut device.
1318
+ */
495
1319
  minut_metadata?:
496
1320
  | {
1321
+ /**
1322
+ * Device ID for a Minut device.
1323
+ */
497
1324
  device_id?: string | undefined
1325
+ /**
1326
+ * Device name for a Minut device.
1327
+ */
498
1328
  device_name?: string | undefined
1329
+ /**
1330
+ * Latest sensor values for a Minut device.
1331
+ */
499
1332
  latest_sensor_values?:
500
1333
  | {
1334
+ /**
1335
+ * Latest accelerometer Z-axis reading for a Minut device.
1336
+ */
501
1337
  accelerometer_z?:
502
1338
  | {
1339
+ /**
1340
+ * Time of latest accelerometer Z-axis reading for a Minut device.
1341
+ */
503
1342
  time?: string | undefined
1343
+ /**
1344
+ * Value of latest accelerometer Z-axis reading for a Minut device.
1345
+ */
504
1346
  value?: number | undefined
505
1347
  }
506
1348
  | undefined
1349
+ /**
1350
+ * Latest humidity reading for a Minut device.
1351
+ */
507
1352
  humidity?:
508
1353
  | {
1354
+ /**
1355
+ * Time of latest humidity reading for a Minut device.
1356
+ */
509
1357
  time?: string | undefined
1358
+ /**
1359
+ * Value of latest humidity reading for a Minut device.
1360
+ */
510
1361
  value?: number | undefined
511
1362
  }
512
1363
  | undefined
1364
+ /**
1365
+ * Latest pressure reading for a Minut device.
1366
+ */
513
1367
  pressure?:
514
1368
  | {
1369
+ /**
1370
+ * Time of latest pressure reading for a Minut device.
1371
+ */
515
1372
  time?: string | undefined
1373
+ /**
1374
+ * Value of latest pressure reading for a Minut device.
1375
+ */
516
1376
  value?: number | undefined
517
1377
  }
518
1378
  | undefined
1379
+ /**
1380
+ * Latest sound reading for a Minut device.
1381
+ */
519
1382
  sound?:
520
1383
  | {
1384
+ /**
1385
+ * Time of latest sound reading for a Minut device.
1386
+ */
521
1387
  time?: string | undefined
1388
+ /**
1389
+ * Value of latest sound reading for a Minut device.
1390
+ */
522
1391
  value?: number | undefined
523
1392
  }
524
1393
  | undefined
1394
+ /**
1395
+ * Latest temperature reading for a Minut device.
1396
+ */
525
1397
  temperature?:
526
1398
  | {
1399
+ /**
1400
+ * Time of latest temperature reading for a Minut device.
1401
+ */
527
1402
  time?: string | undefined
1403
+ /**
1404
+ * Value of latest temperature reading for a Minut device.
1405
+ */
528
1406
  value?: number | undefined
529
1407
  }
530
1408
  | undefined
@@ -532,181 +1410,530 @@ export type Device = {
532
1410
  | undefined
533
1411
  }
534
1412
  | undefined
1413
+ /**
1414
+ * Metadata for a Google Nest device.
1415
+ */
535
1416
  nest_metadata?:
536
1417
  | {
1418
+ /**
1419
+ * Custom device name for a Google Nest device. The device owner sets this value.
1420
+ */
537
1421
  device_custom_name?: string | undefined
1422
+ /**
1423
+ * Device name for a Google Nest device. Google sets this value.
1424
+ */
538
1425
  device_name?: string | undefined
1426
+ /**
1427
+ * Display name for a Google Nest device.
1428
+ */
539
1429
  display_name?: string | undefined
1430
+ /**
1431
+ * Device ID for a Google Nest device.
1432
+ */
540
1433
  nest_device_id?: string | undefined
541
1434
  }
542
1435
  | undefined
1436
+ /**
1437
+ * Metadata for a NoiseAware device.
1438
+ */
543
1439
  noiseaware_metadata?:
544
1440
  | {
1441
+ /**
1442
+ * Device ID for a NoiseAware device.
1443
+ */
545
1444
  device_id?: string | undefined
1445
+ /**
1446
+ * Device model for a NoiseAware device.
1447
+ */
546
1448
  device_model?: 'indoor' | 'outdoor' | undefined
1449
+ /**
1450
+ * Device name for a NoiseAware device.
1451
+ */
547
1452
  device_name?: string | undefined
1453
+ /**
1454
+ * Noise level, in decibels, for a NoiseAware device.
1455
+ */
548
1456
  noise_level_decibel?: number | undefined
1457
+ /**
1458
+ * Noise level, expressed as a Noise Risk Score (NRS), for a NoiseAware device.
1459
+ */
549
1460
  noise_level_nrs?: number | undefined
550
1461
  }
551
1462
  | undefined
1463
+ /**
1464
+ * Metadata for a Nuki device.
1465
+ */
552
1466
  nuki_metadata?:
553
1467
  | {
1468
+ /**
1469
+ * Device ID for a Nuki device.
1470
+ */
554
1471
  device_id?: string | undefined
1472
+ /**
1473
+ * Device name for a Nuki device.
1474
+ */
555
1475
  device_name?: string | undefined
1476
+ /**
1477
+ * Indicates whether keypad 2 is paired for a Nuki device.
1478
+ */
556
1479
  keypad_2_paired?: boolean | undefined
1480
+ /**
1481
+ * Indicates whether the keypad battery is in a critical state for a Nuki device.
1482
+ */
557
1483
  keypad_battery_critical?: boolean | undefined
1484
+ /**
1485
+ * Indicates whether the keypad is paired for a Nuki device.
1486
+ */
558
1487
  keypad_paired?: boolean | undefined
559
1488
  }
560
1489
  | undefined
1490
+ /**
1491
+ * Metadata for an Omnitec device.
1492
+ */
561
1493
  omnitec_metadata?:
562
1494
  | {
1495
+ /**
1496
+ * Whether the Omnitec lock has a connected gateway for remote operations.
1497
+ */
563
1498
  has_gateway?: boolean | undefined
1499
+ /**
1500
+ * Operator-assigned alias for an Omnitec device.
1501
+ */
564
1502
  lock_alias?: string | undefined
1503
+ /**
1504
+ * Lock ID for an Omnitec device.
1505
+ */
565
1506
  lock_id?: number | undefined
1507
+ /**
1508
+ * Bluetooth MAC address for an Omnitec device.
1509
+ */
566
1510
  lock_mac?: string | undefined
1511
+ /**
1512
+ * Lock name for an Omnitec device.
1513
+ */
567
1514
  lock_name?: string | undefined
1515
+ /**
1516
+ * IANA time zone for the Omnitec device, used to schedule time-bound access codes at the correct local time (accounting for DST).
1517
+ */
568
1518
  time_zone?: string | null | undefined
1519
+ /**
1520
+ * Static UTC offset of the Omnitec lock in milliseconds. Does not account for DST.
1521
+ */
569
1522
  timezone_raw_offset_ms?: number | undefined
570
1523
  }
571
1524
  | undefined
1525
+ /**
1526
+ * Metadata for a Ring device.
1527
+ */
572
1528
  ring_metadata?:
573
1529
  | {
1530
+ /**
1531
+ * Device ID for a Ring device.
1532
+ */
574
1533
  device_id?: string | undefined
1534
+ /**
1535
+ * Device name for a Ring device.
1536
+ */
575
1537
  device_name?: string | undefined
576
1538
  }
577
1539
  | undefined
1540
+ /**
1541
+ * Metadata for a Salto KS device.
1542
+ */
578
1543
  salto_ks_metadata?:
579
1544
  | {
1545
+ /**
1546
+ * Battery level for a Salto KS device.
1547
+ */
580
1548
  battery_level?: string | undefined
1549
+ /**
1550
+ * Customer reference for a Salto KS device.
1551
+ */
581
1552
  customer_reference?: string | undefined
1553
+ /**
1554
+ * Indicates whether the site has a Salto KS subscription that supports custom PINs.
1555
+ */
582
1556
  has_custom_pin_subscription?: boolean | undefined
1557
+ /**
1558
+ * Lock ID for a Salto KS device.
1559
+ */
583
1560
  lock_id?: string | undefined
1561
+ /**
1562
+ * Lock type for a Salto KS device.
1563
+ */
584
1564
  lock_type?: string | undefined
1565
+ /**
1566
+ * Locked state for a Salto KS device.
1567
+ */
585
1568
  locked_state?: string | undefined
1569
+ /**
1570
+ * Model for a Salto KS device.
1571
+ */
586
1572
  model?: string | undefined
1573
+ /**
1574
+ * Site ID for the Salto KS site to which the device belongs.
1575
+ */
587
1576
  site_id?: string | undefined
1577
+ /**
1578
+ * Site name for the Salto KS site to which the device belongs.
1579
+ */
588
1580
  site_name?: string | undefined
589
1581
  }
590
1582
  | undefined
1583
+ /**
1584
+ * Metada for a Salto device.
1585
+ * @deprecated Use `salto_ks_metadata ` instead.
1586
+ */
591
1587
  salto_metadata?:
592
1588
  | {
1589
+ /**
1590
+ * Battery level for a Salto device.
1591
+ */
593
1592
  battery_level?: string | undefined
1593
+ /**
1594
+ * Customer reference for a Salto device.
1595
+ */
594
1596
  customer_reference?: string | undefined
1597
+ /**
1598
+ * Lock ID for a Salto device.
1599
+ */
595
1600
  lock_id?: string | undefined
1601
+ /**
1602
+ * Lock type for a Salto device.
1603
+ */
596
1604
  lock_type?: string | undefined
1605
+ /**
1606
+ * Locked state for a Salto device.
1607
+ */
597
1608
  locked_state?: string | undefined
1609
+ /**
1610
+ * Model for a Salto device.
1611
+ */
598
1612
  model?: string | undefined
1613
+ /**
1614
+ * Site ID for the Salto KS site to which the device belongs.
1615
+ */
599
1616
  site_id?: string | undefined
1617
+ /**
1618
+ * Site name for the Salto KS site to which the device belongs.
1619
+ */
600
1620
  site_name?: string | undefined
601
1621
  }
602
1622
  | undefined
1623
+ /**
1624
+ * Metadata for a Schlage device.
1625
+ */
603
1626
  schlage_metadata?:
604
1627
  | {
1628
+ /**
1629
+ * Device ID for a Schlage device.
1630
+ */
605
1631
  device_id?: string | undefined
1632
+ /**
1633
+ * Device name for a Schlage device.
1634
+ */
606
1635
  device_name?: string | undefined
1636
+ /**
1637
+ * Model for a Schlage device.
1638
+ */
607
1639
  model?: string | undefined
608
1640
  }
609
1641
  | undefined
1642
+ /**
1643
+ * Metadata for Seam Bridge.
1644
+ */
610
1645
  seam_bridge_metadata?:
611
1646
  | {
1647
+ /**
1648
+ * Device number for Seam Bridge.
1649
+ */
612
1650
  device_num?: number | undefined
1651
+ /**
1652
+ * Name for Seam Bridge.
1653
+ */
613
1654
  name?: string | undefined
1655
+ /**
1656
+ * Unlock method for Seam Bridge.
1657
+ */
614
1658
  unlock_method?: 'bridge' | 'doorking' | undefined
615
1659
  }
616
1660
  | undefined
1661
+ /**
1662
+ * Metadata for a Sensi device.
1663
+ */
617
1664
  sensi_metadata?:
618
1665
  | {
1666
+ /**
1667
+ * Device ID for a Sensi device.
1668
+ */
619
1669
  device_id?: string | undefined
1670
+ /**
1671
+ * Device name for a Sensi device.
1672
+ */
620
1673
  device_name?: string | undefined
1674
+ /**
1675
+ * Set to true when the device does not support the /dual-setpoints API endpoint.
1676
+ */
621
1677
  dual_setpoints_not_supported?: boolean | undefined
1678
+ /**
1679
+ * Product type for a Sensi device.
1680
+ */
622
1681
  product_type?: string | undefined
623
1682
  }
624
1683
  | undefined
1684
+ /**
1685
+ * Metadata for a SmartThings device.
1686
+ */
625
1687
  smartthings_metadata?:
626
1688
  | {
1689
+ /**
1690
+ * Device ID for a SmartThings device.
1691
+ */
627
1692
  device_id?: string | undefined
1693
+ /**
1694
+ * Device name for a SmartThings device.
1695
+ */
628
1696
  device_name?: string | undefined
1697
+ /**
1698
+ * Location ID for a SmartThings device.
1699
+ */
629
1700
  location_id?: string | undefined
1701
+ /**
1702
+ * Model for a SmartThings device.
1703
+ */
630
1704
  model?: string | undefined
631
1705
  }
632
1706
  | undefined
1707
+ /**
1708
+ * Metadata for a tado° device.
1709
+ */
633
1710
  tado_metadata?:
634
1711
  | {
1712
+ /**
1713
+ * Device type for a tado° device.
1714
+ */
635
1715
  device_type?: string | undefined
1716
+ /**
1717
+ * Serial number for a tado° device.
1718
+ */
636
1719
  serial_no?: string | undefined
637
1720
  }
638
1721
  | undefined
1722
+ /**
1723
+ * Metadata for a Tedee device.
1724
+ */
639
1725
  tedee_metadata?:
640
1726
  | {
1727
+ /**
1728
+ * Bridge ID for a Tedee device.
1729
+ */
641
1730
  bridge_id?: number | undefined
1731
+ /**
1732
+ * Bridge name for a Tedee device.
1733
+ */
642
1734
  bridge_name?: string | undefined
1735
+ /**
1736
+ * Device ID for a Tedee device.
1737
+ */
643
1738
  device_id?: number | undefined
1739
+ /**
1740
+ * Device model for a Tedee device.
1741
+ */
644
1742
  device_model?: string | undefined
1743
+ /**
1744
+ * Device name for a Tedee device.
1745
+ */
645
1746
  device_name?: string | undefined
1747
+ /**
1748
+ * Keypad ID for a Tedee device.
1749
+ */
646
1750
  keypad_id?: number | undefined
1751
+ /**
1752
+ * Serial number for a Tedee device.
1753
+ */
647
1754
  serial_number?: string | undefined
648
1755
  }
649
1756
  | undefined
1757
+ /**
1758
+ * Metadata for a TTLock device.
1759
+ */
650
1760
  ttlock_metadata?:
651
1761
  | {
1762
+ /**
1763
+ * Feature value for a TTLock device.
1764
+ */
652
1765
  feature_value?: string | undefined
1766
+ /**
1767
+ * Features for a TTLock device.
1768
+ */
653
1769
  features?:
654
1770
  | {
1771
+ /**
1772
+ * Indicates whether a TTLock device supports auto-lock time configuration.
1773
+ */
655
1774
  auto_lock_time_config?: boolean | undefined
1775
+ /**
1776
+ * Indicates whether a TTLock device supports an incomplete keyboard passcode.
1777
+ */
656
1778
  incomplete_keyboard_passcode?: boolean | undefined
1779
+ /**
1780
+ * Indicates whether a TTLock device supports the lock command.
1781
+ */
657
1782
  lock_command?: boolean | undefined
1783
+ /**
1784
+ * Indicates whether a TTLock device supports a passcode.
1785
+ */
658
1786
  passcode?: boolean | undefined
1787
+ /**
1788
+ * Indicates whether a TTLock device supports passcode management.
1789
+ */
659
1790
  passcode_management?: boolean | undefined
1791
+ /**
1792
+ * Indicates whether a TTLock device supports unlock via gateway.
1793
+ */
660
1794
  unlock_via_gateway?: boolean | undefined
1795
+ /**
1796
+ * Indicates whether a TTLock device supports Wi-Fi.
1797
+ */
661
1798
  wifi?: boolean | undefined
662
1799
  }
663
1800
  | undefined
1801
+ /**
1802
+ * Indicates whether a TTLock device has a gateway.
1803
+ */
664
1804
  has_gateway?: boolean | undefined
1805
+ /**
1806
+ * Lock alias for a TTLock device.
1807
+ */
665
1808
  lock_alias?: string | undefined
1809
+ /**
1810
+ * Lock ID for a TTLock device.
1811
+ */
666
1812
  lock_id?: number | undefined
1813
+ /**
1814
+ * Lock-side timezone offset in milliseconds east of UTC, as configured in the TTLock app. Source of truth for the lock's wall-clock interpretation of access code start/end times — a misconfigured value here is the typical cause of customer "codes offset by N hours" reports. Diagnostic only; Seam does not convert times based on this value.
1815
+ */
667
1816
  timezone_raw_offset_ms?: number | null | undefined
1817
+ /**
1818
+ * Wireless keypads for a TTLock device.
1819
+ */
668
1820
  wireless_keypads?:
669
1821
  | Array<{
1822
+ /**
1823
+ * ID for a wireless keypad for a TTLock device.
1824
+ */
670
1825
  wireless_keypad_id?: number | undefined
1826
+ /**
1827
+ * Name for a wireless keypad for a TTLock device.
1828
+ */
671
1829
  wireless_keypad_name?: string | undefined
672
1830
  }>
673
1831
  | undefined
674
1832
  }
675
1833
  | undefined
1834
+ /**
1835
+ * Metadata for a 2N device.
1836
+ */
676
1837
  two_n_metadata?:
677
1838
  | {
1839
+ /**
1840
+ * Device ID for a 2N device.
1841
+ */
678
1842
  device_id?: number | undefined
1843
+ /**
1844
+ * Device name for a 2N device.
1845
+ */
679
1846
  device_name?: string | undefined
680
1847
  }
681
1848
  | undefined
1849
+ /**
1850
+ * Metadata for an Ultraloq device.
1851
+ */
682
1852
  ultraloq_metadata?:
683
1853
  | {
1854
+ /**
1855
+ * Device ID for an Ultraloq device.
1856
+ */
684
1857
  device_id?: string | undefined
1858
+ /**
1859
+ * Device name for an Ultraloq device.
1860
+ */
685
1861
  device_name?: string | undefined
1862
+ /**
1863
+ * Device type for an Ultraloq device.
1864
+ */
686
1865
  device_type?: string | undefined
1866
+ /**
1867
+ * IANA timezone for the Ultraloq device.
1868
+ */
687
1869
  time_zone?: string | null | undefined
688
1870
  }
689
1871
  | undefined
1872
+ /**
1873
+ * Metadata for an ASSA ABLOY Visionline system.
1874
+ */
690
1875
  visionline_metadata?:
691
1876
  | {
1877
+ /**
1878
+ * Encoder ID for an ASSA ABLOY Visionline system.
1879
+ */
692
1880
  encoder_id?: string | undefined
693
1881
  }
694
1882
  | undefined
1883
+ /**
1884
+ * Metadata for a Wyze device.
1885
+ */
695
1886
  wyze_metadata?:
696
1887
  | {
1888
+ /**
1889
+ * Device ID for a Wyze device.
1890
+ */
697
1891
  device_id?: string | undefined
1892
+ /**
1893
+ * Device information model for a Wyze device.
1894
+ */
698
1895
  device_info_model?: string | undefined
1896
+ /**
1897
+ * Device name for a Wyze device.
1898
+ */
699
1899
  device_name?: string | undefined
1900
+ /**
1901
+ * Keypad UUID for a Wyze device.
1902
+ */
700
1903
  keypad_uuid?: string | undefined
1904
+ /**
1905
+ * Locker status (hardlock) for a Wyze device.
1906
+ */
701
1907
  locker_status_hardlock?: number | undefined
1908
+ /**
1909
+ * Product model for a Wyze device.
1910
+ */
702
1911
  product_model?: string | undefined
1912
+ /**
1913
+ * Product name for a Wyze device.
1914
+ */
703
1915
  product_name?: string | undefined
1916
+ /**
1917
+ * Product type for a Wyze device.
1918
+ */
704
1919
  product_type?: string | undefined
705
1920
  }
706
1921
  | undefined
1922
+ /**
1923
+ * The delay in seconds before the lock automatically locks after being unlocked.
1924
+ */
707
1925
  auto_lock_delay_seconds?: number | undefined
1926
+ /**
1927
+ * Indicates whether automatic locking is enabled.
1928
+ */
708
1929
  auto_lock_enabled?: boolean | undefined
1930
+ /**
1931
+ * Indicates whether the [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes) is currently enabled for the device. To disable it, set this to `false` using [/devices/update](https://docs.seam.co/api/devices/update).
1932
+ */
709
1933
  backup_access_code_pool_enabled?: boolean | undefined
1934
+ /**
1935
+ * 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.
1936
+ */
710
1937
  code_constraints?:
711
1938
  | Array<{
712
1939
  constraint_type:
@@ -725,106 +1952,278 @@ export type Device = {
725
1952
  | 'name_length'
726
1953
  | 'name_must_be_unique'
727
1954
 
1955
+ /**
1956
+ * Maximum name length constraint for access codes.
1957
+ */
728
1958
  max_length?: number | undefined
1959
+ /**
1960
+ * Minimum name length constraint for access codes.
1961
+ */
729
1962
  min_length?: number | undefined
730
1963
  }>
731
1964
  | undefined
1965
+ /**
1966
+ * Indicates whether the door is open.
1967
+ */
732
1968
  door_open?: boolean | undefined
1969
+ /**
1970
+ * Indicates whether the device supports native entry events.
1971
+ */
733
1972
  has_native_entry_events?: boolean | undefined
1973
+ /**
1974
+ * Keypad battery status.
1975
+ */
734
1976
  keypad_battery?:
735
1977
  | {
1978
+ /**
1979
+ * Keypad battery charge level.
1980
+ */
736
1981
  level: number
737
1982
  }
738
1983
  | undefined
1984
+ /**
1985
+ * Indicates whether the lock is locked.
1986
+ */
739
1987
  locked?: boolean | undefined
1988
+ /**
1989
+ * Maximum number of active access codes that the device supports.
1990
+ */
740
1991
  max_active_codes_supported?: number | undefined
1992
+ /**
1993
+ * Time frames that may be requested when creating an offline access code, expressed as a list of options. The caller picks one option (by matching the requested duration when the options' duration ranges do not overlap, or by `display_name` when they do) and satisfies that one option's rules. When `undefined`, any time frame works.
1994
+ */
741
1995
  offline_time_frame_options?:
742
1996
  | Array<{
1997
+ /**
1998
+ * Label for this option. For a single-option device, the product name (for example, `algoPIN` or `SmartPIN`); for a multi-option device, a label that distinguishes it (for example, `Hourly` or `Fixed start times`).
1999
+ */
743
2000
  display_name: string
744
2001
 
2002
+ /**
2003
+ * iCalendar recurrence rule (RRULE) that the end date must fall on. Constrains which calendar dates are selectable, independent of the time-of-day rules.
2004
+ */
745
2005
  end_date_recurrence_rule?: string | undefined
2006
+ /**
2007
+ * When `true`, the start and end must fall at the same time of day (the caller picks which). Mutually exclusive with `time_pairs`.
2008
+ */
746
2009
  matching_start_end_time?: boolean | undefined
2010
+ /**
2011
+ * Maximum duration this option covers, as an ISO 8601 duration (for example, `PT672H` or `P367D`). Omitted when there is no maximum.
2012
+ */
747
2013
  max_duration?: string | undefined
2014
+ /**
2015
+ * Minimum duration this option covers, as an ISO 8601 duration (for example, `PT1H` or `P29D`). Omitted when there is no minimum.
2016
+ */
748
2017
  min_duration?: string | undefined
2018
+ /**
2019
+ * iCalendar recurrence rule (RRULE) that the start date must fall on (for example, `FREQ=MONTHLY;BYDAY=1MO,3MO`). Constrains which calendar dates are selectable, independent of the time-of-day rules.
2020
+ */
749
2021
  start_date_recurrence_rule?: string | undefined
2022
+ /**
2023
+ * Fixed start/end time pairings the caller chooses from. Mutually exclusive with `matching_start_end_time`.
2024
+ */
750
2025
  time_pairs?:
751
2026
  | Array<{
2027
+ /**
2028
+ * Label for the start/end time pairing.
2029
+ */
752
2030
  display_name: string
753
2031
 
2032
+ /**
2033
+ * End time of day as a 24-hour `HH:MM` value, interpreted in the option's `time_zone`. An `end_time` earlier on the clock than `start_time` means the end falls on a later date.
2034
+ */
754
2035
  end_time: string
755
2036
 
2037
+ /**
2038
+ * Start time of day as a 24-hour `HH:MM` value, interpreted in the option's `time_zone`.
2039
+ */
756
2040
  start_time: string
757
2041
  }>
758
2042
  | undefined
2043
+ /**
2044
+ * IANA time zone for interpreting `time_pairs` and the date recurrence rules. Present only when the option fixes times or dates.
2045
+ */
759
2046
  time_zone?: string | undefined
760
2047
  }>
761
2048
  | undefined
2049
+ /**
2050
+ * Time frames that may be requested when creating an online access code, expressed as a list of options. The caller picks one option (by matching the requested duration when the options' duration ranges do not overlap, or by `display_name` when they do) and satisfies that one option's rules. When `undefined`, any time frame works.
2051
+ */
762
2052
  online_time_frame_options?:
763
2053
  | Array<{
2054
+ /**
2055
+ * Label for this option. For a single-option device, the product name (for example, `algoPIN` or `SmartPIN`); for a multi-option device, a label that distinguishes it (for example, `Hourly` or `Fixed start times`).
2056
+ */
764
2057
  display_name: string
765
2058
 
2059
+ /**
2060
+ * iCalendar recurrence rule (RRULE) that the end date must fall on. Constrains which calendar dates are selectable, independent of the time-of-day rules.
2061
+ */
766
2062
  end_date_recurrence_rule?: string | undefined
2063
+ /**
2064
+ * When `true`, the start and end must fall at the same time of day (the caller picks which). Mutually exclusive with `time_pairs`.
2065
+ */
767
2066
  matching_start_end_time?: boolean | undefined
2067
+ /**
2068
+ * Maximum duration this option covers, as an ISO 8601 duration (for example, `PT672H` or `P367D`). Omitted when there is no maximum.
2069
+ */
768
2070
  max_duration?: string | undefined
2071
+ /**
2072
+ * Minimum duration this option covers, as an ISO 8601 duration (for example, `PT1H` or `P29D`). Omitted when there is no minimum.
2073
+ */
769
2074
  min_duration?: string | undefined
2075
+ /**
2076
+ * iCalendar recurrence rule (RRULE) that the start date must fall on (for example, `FREQ=MONTHLY;BYDAY=1MO,3MO`). Constrains which calendar dates are selectable, independent of the time-of-day rules.
2077
+ */
770
2078
  start_date_recurrence_rule?: string | undefined
2079
+ /**
2080
+ * Fixed start/end time pairings the caller chooses from. Mutually exclusive with `matching_start_end_time`.
2081
+ */
771
2082
  time_pairs?:
772
2083
  | Array<{
2084
+ /**
2085
+ * Label for the start/end time pairing.
2086
+ */
773
2087
  display_name: string
774
2088
 
2089
+ /**
2090
+ * End time of day as a 24-hour `HH:MM` value, interpreted in the option's `time_zone`. An `end_time` earlier on the clock than `start_time` means the end falls on a later date.
2091
+ */
775
2092
  end_time: string
776
2093
 
2094
+ /**
2095
+ * Start time of day as a 24-hour `HH:MM` value, interpreted in the option's `time_zone`.
2096
+ */
777
2097
  start_time: string
778
2098
  }>
779
2099
  | undefined
2100
+ /**
2101
+ * IANA time zone for interpreting `time_pairs` and the date recurrence rules. Present only when the option fixes times or dates.
2102
+ */
780
2103
  time_zone?: string | undefined
781
2104
  }>
782
2105
  | undefined
2106
+ /**
2107
+ * Supported code lengths for access codes.
2108
+ */
783
2109
  supported_code_lengths?: Array<number> | undefined
2110
+ /**
2111
+ * Indicates whether the device supports a [backup access code pool](https://docs.seam.co/low-level-apis/smart-locks/access-codes/backup-access-codes).
2112
+ */
784
2113
  supports_backup_access_code_pool?: boolean | undefined
2114
+ /**
2115
+ * Active [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2116
+ * @deprecated Use `active_thermostat_schedule_id` with `/thermostats/schedules/get` instead.
2117
+ */
785
2118
  active_thermostat_schedule?:
786
2119
  | {
2120
+ /**
2121
+ * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2122
+ */
787
2123
  climate_preset_key: string
788
2124
 
2125
+ /**
2126
+ * Date and time at which the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) was created.
2127
+ */
789
2128
  created_at: string
790
2129
 
2130
+ /**
2131
+ * ID of the desired [thermostat](https://docs.seam.co/capability-guides/thermostats) device.
2132
+ */
791
2133
  device_id: string
792
2134
 
2135
+ /**
2136
+ * Date and time at which the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
2137
+ */
793
2138
  ends_at: string
794
2139
 
2140
+ /**
2141
+ * Errors associated with the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2142
+ */
795
2143
  errors: Array<{
2144
+ /**
2145
+ * Date and time at which Seam created the error.
2146
+ */
796
2147
  created_at: string
797
2148
 
2149
+ /**
2150
+ * Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
2151
+ */
798
2152
  error_code: string
799
2153
 
2154
+ /**
2155
+ * Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
2156
+ */
800
2157
  message: string
801
2158
  }>
802
2159
 
2160
+ /**
2161
+ * Indicates whether a person at the thermostat can change the thermostat's settings after the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) starts.
2162
+ */
803
2163
  is_override_allowed?: boolean | undefined
2164
+ /**
2165
+ * 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/capability-guides/thermostats/creating-and-managing-climate-presets). See also [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
2166
+ */
804
2167
  max_override_period_minutes?: number | null | undefined
2168
+ /**
2169
+ * User-friendly name to identify the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2170
+ */
805
2171
  name: string | null
2172
+ /**
2173
+ * Date and time at which the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules) starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
2174
+ */
806
2175
  starts_at: string
807
2176
 
2177
+ /**
2178
+ * ID of the [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2179
+ */
808
2180
  thermostat_schedule_id: string
809
2181
 
2182
+ /**
2183
+ * ID of the workspace that contains the thermostat schedule.
2184
+ */
810
2185
  workspace_id: string
811
2186
  }
812
2187
  | null
813
2188
  | undefined
2189
+ /**
2190
+ * ID of the active [thermostat schedule](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
2191
+ */
814
2192
  active_thermostat_schedule_id?: string | null | undefined
2193
+ /**
2194
+ * Climate preset modes that the thermostat supports, such as "home", "away", "wake", "sleep", "occupied", and "unoccupied".
2195
+ */
815
2196
  available_climate_preset_modes?:
816
2197
  | Array<'home' | 'away' | 'wake' | 'sleep' | 'occupied' | 'unoccupied'>
817
2198
  | undefined
2199
+ /**
2200
+ * Available [climate presets](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) for the thermostat.
2201
+ */
818
2202
  available_climate_presets?:
819
2203
  | Array<{
2204
+ /**
2205
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted.
2206
+ */
820
2207
  can_delete: boolean
821
2208
 
2209
+ /**
2210
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited.
2211
+ */
822
2212
  can_edit: boolean
823
2213
 
2214
+ /**
2215
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program.
2216
+ */
824
2217
  can_use_with_thermostat_daily_programs: boolean
825
2218
 
2219
+ /**
2220
+ * Unique key to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2221
+ */
826
2222
  climate_preset_key: string
827
2223
 
2224
+ /**
2225
+ * The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
2226
+ */
828
2227
  climate_preset_mode?:
829
2228
  | 'home'
830
2229
  | 'away'
@@ -833,36 +2232,100 @@ export type Device = {
833
2232
  | 'occupied'
834
2233
  | 'unoccupied'
835
2234
  | undefined
2235
+ /**
2236
+ * Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2237
+ */
836
2238
  cooling_set_point_celsius?: number | undefined
2239
+ /**
2240
+ * Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2241
+ */
837
2242
  cooling_set_point_fahrenheit?: number | undefined
2243
+ /**
2244
+ * Display name for the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2245
+ */
838
2246
  display_name: string
839
2247
 
2248
+ /**
2249
+ * Metadata specific to the Ecobee climate, if applicable.
2250
+ */
840
2251
  ecobee_metadata?:
841
2252
  | {
2253
+ /**
2254
+ * Reference to the Ecobee climate, if applicable.
2255
+ */
842
2256
  climate_ref?: string | undefined
2257
+ /**
2258
+ * Indicates if the climate preset is optimized by Ecobee.
2259
+ */
843
2260
  is_optimized?: boolean | undefined
2261
+ /**
2262
+ * Indicates whether the climate preset is owned by the user or the system.
2263
+ */
844
2264
  owner?: 'user' | 'system' | undefined
845
2265
  }
846
2266
  | undefined
2267
+ /**
2268
+ * Desired [fan mode setting](https://docs.seam.co/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`.
2269
+ */
847
2270
  fan_mode_setting?: 'auto' | 'on' | 'circulate' | undefined
2271
+ /**
2272
+ * Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2273
+ */
848
2274
  heating_set_point_celsius?: number | undefined
2275
+ /**
2276
+ * Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2277
+ */
849
2278
  heating_set_point_fahrenheit?: number | undefined
2279
+ /**
2280
+ * Desired [HVAC mode](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.
2281
+ */
850
2282
  hvac_mode_setting?:
851
2283
  'off' | 'heat' | 'cool' | 'heat_cool' | 'eco' | undefined
2284
+ /**
2285
+ * Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
2286
+ * @deprecated Use 'thermostat_schedule.is_override_allowed'
2287
+ */
852
2288
  manual_override_allowed: boolean
853
2289
 
2290
+ /**
2291
+ * User-friendly name to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2292
+ */
854
2293
  name?: string | null | undefined
855
2294
  }>
856
2295
  | undefined
2296
+ /**
2297
+ * Fan mode settings that the thermostat supports.
2298
+ */
857
2299
  available_fan_mode_settings?: Array<'auto' | 'on' | 'circulate'> | undefined
2300
+ /**
2301
+ * HVAC mode settings that the thermostat supports.
2302
+ */
858
2303
  available_hvac_mode_settings?:
859
2304
  Array<'off' | 'heat' | 'cool' | 'heat_cool' | 'eco'> | undefined
2305
+ /**
2306
+ * Current climate setting.
2307
+ */
860
2308
  current_climate_setting?:
861
2309
  | {
2310
+ /**
2311
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted.
2312
+ */
862
2313
  can_delete?: boolean | undefined
2314
+ /**
2315
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited.
2316
+ */
863
2317
  can_edit?: boolean | undefined
2318
+ /**
2319
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program.
2320
+ */
864
2321
  can_use_with_thermostat_daily_programs?: boolean | undefined
2322
+ /**
2323
+ * Unique key to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2324
+ */
865
2325
  climate_preset_key?: string | undefined
2326
+ /**
2327
+ * The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
2328
+ */
866
2329
  climate_preset_mode?:
867
2330
  | 'home'
868
2331
  | 'away'
@@ -871,31 +2334,89 @@ export type Device = {
871
2334
  | 'occupied'
872
2335
  | 'unoccupied'
873
2336
  | undefined
2337
+ /**
2338
+ * Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2339
+ */
874
2340
  cooling_set_point_celsius?: number | undefined
2341
+ /**
2342
+ * Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2343
+ */
875
2344
  cooling_set_point_fahrenheit?: number | undefined
2345
+ /**
2346
+ * Display name for the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2347
+ */
876
2348
  display_name?: string | undefined
2349
+ /**
2350
+ * Metadata specific to the Ecobee climate, if applicable.
2351
+ */
877
2352
  ecobee_metadata?:
878
2353
  | {
2354
+ /**
2355
+ * Reference to the Ecobee climate, if applicable.
2356
+ */
879
2357
  climate_ref?: string | undefined
2358
+ /**
2359
+ * Indicates if the climate preset is optimized by Ecobee.
2360
+ */
880
2361
  is_optimized?: boolean | undefined
2362
+ /**
2363
+ * Indicates whether the climate preset is owned by the user or the system.
2364
+ */
881
2365
  owner?: 'user' | 'system' | undefined
882
2366
  }
883
2367
  | undefined
2368
+ /**
2369
+ * Desired [fan mode setting](https://docs.seam.co/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`.
2370
+ */
884
2371
  fan_mode_setting?: 'auto' | 'on' | 'circulate' | undefined
2372
+ /**
2373
+ * Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2374
+ */
885
2375
  heating_set_point_celsius?: number | undefined
2376
+ /**
2377
+ * Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2378
+ */
886
2379
  heating_set_point_fahrenheit?: number | undefined
2380
+ /**
2381
+ * Desired [HVAC mode](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.
2382
+ */
887
2383
  hvac_mode_setting?:
888
2384
  'off' | 'heat' | 'cool' | 'heat_cool' | 'eco' | undefined
2385
+ /**
2386
+ * Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
2387
+ * @deprecated Use 'thermostat_schedule.is_override_allowed'
2388
+ */
889
2389
  manual_override_allowed?: boolean | undefined
2390
+ /**
2391
+ * User-friendly name to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2392
+ */
890
2393
  name?: string | null | undefined
891
2394
  }
892
2395
  | undefined
2396
+ /**
2397
+ * @deprecated use fallback_climate_preset_key to specify a fallback climate preset instead.
2398
+ */
893
2399
  default_climate_setting?:
894
2400
  | {
2401
+ /**
2402
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be deleted.
2403
+ */
895
2404
  can_delete?: boolean | undefined
2405
+ /**
2406
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be edited.
2407
+ */
896
2408
  can_edit?: boolean | undefined
2409
+ /**
2410
+ * Indicates whether the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) key can be programmed in a thermostat daily program.
2411
+ */
897
2412
  can_use_with_thermostat_daily_programs?: boolean | undefined
2413
+ /**
2414
+ * Unique key to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2415
+ */
898
2416
  climate_preset_key?: string | undefined
2417
+ /**
2418
+ * The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
2419
+ */
899
2420
  climate_preset_mode?:
900
2421
  | 'home'
901
2422
  | 'away'
@@ -904,294 +2425,793 @@ export type Device = {
904
2425
  | 'occupied'
905
2426
  | 'unoccupied'
906
2427
  | undefined
2428
+ /**
2429
+ * Temperature to which the thermostat should cool (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2430
+ */
907
2431
  cooling_set_point_celsius?: number | undefined
2432
+ /**
2433
+ * Temperature to which the thermostat should cool (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2434
+ */
908
2435
  cooling_set_point_fahrenheit?: number | undefined
2436
+ /**
2437
+ * Display name for the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2438
+ */
909
2439
  display_name?: string | undefined
2440
+ /**
2441
+ * Metadata specific to the Ecobee climate, if applicable.
2442
+ */
910
2443
  ecobee_metadata?:
911
2444
  | {
2445
+ /**
2446
+ * Reference to the Ecobee climate, if applicable.
2447
+ */
912
2448
  climate_ref?: string | undefined
2449
+ /**
2450
+ * Indicates if the climate preset is optimized by Ecobee.
2451
+ */
913
2452
  is_optimized?: boolean | undefined
2453
+ /**
2454
+ * Indicates whether the climate preset is owned by the user or the system.
2455
+ */
914
2456
  owner?: 'user' | 'system' | undefined
915
2457
  }
916
2458
  | undefined
2459
+ /**
2460
+ * Desired [fan mode setting](https://docs.seam.co/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings), such as `on`, `auto`, or `circulate`.
2461
+ */
917
2462
  fan_mode_setting?: 'auto' | 'on' | 'circulate' | undefined
2463
+ /**
2464
+ * Temperature to which the thermostat should heat (in °C). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2465
+ */
918
2466
  heating_set_point_celsius?: number | undefined
2467
+ /**
2468
+ * Temperature to which the thermostat should heat (in °F). See also [Set Points](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
2469
+ */
919
2470
  heating_set_point_fahrenheit?: number | undefined
2471
+ /**
2472
+ * Desired [HVAC mode](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.
2473
+ */
920
2474
  hvac_mode_setting?:
921
2475
  'off' | 'heat' | 'cool' | 'heat_cool' | 'eco' | undefined
2476
+ /**
2477
+ * Indicates whether a person at the thermostat can change the thermostat's settings. See [Specifying Manual Override Permissions](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
2478
+ * @deprecated Use 'thermostat_schedule.is_override_allowed'
2479
+ */
922
2480
  manual_override_allowed?: boolean | undefined
2481
+ /**
2482
+ * User-friendly name to identify the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets).
2483
+ */
923
2484
  name?: string | null | undefined
924
2485
  }
925
2486
  | undefined
2487
+ /**
2488
+ * Key of the [fallback climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset) for the thermostat.
2489
+ */
926
2490
  fallback_climate_preset_key?: string | null | undefined
2491
+ /**
2492
+ * @deprecated Use `current_climate_setting.fan_mode_setting` instead.
2493
+ */
927
2494
  fan_mode_setting?: 'auto' | 'on' | 'circulate' | undefined
2495
+ /**
2496
+ * Indicates whether the connected HVAC system is currently cooling, as reported by the thermostat.
2497
+ */
928
2498
  is_cooling?: boolean | undefined
2499
+ /**
2500
+ * Indicates whether the fan in the connected HVAC system is currently running, as reported by the thermostat.
2501
+ */
929
2502
  is_fan_running?: boolean | undefined
2503
+ /**
2504
+ * Indicates whether the connected HVAC system is currently heating, as reported by the thermostat.
2505
+ */
930
2506
  is_heating?: boolean | undefined
2507
+ /**
2508
+ * 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`.
2509
+ */
931
2510
  is_temporary_manual_override_active?: boolean | undefined
2511
+ /**
2512
+ * Maximum [cooling set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °C.
2513
+ */
932
2514
  max_cooling_set_point_celsius?: number | undefined
2515
+ /**
2516
+ * Maximum [cooling set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °F.
2517
+ */
933
2518
  max_cooling_set_point_fahrenheit?: number | undefined
2519
+ /**
2520
+ * Maximum [heating set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °C.
2521
+ */
934
2522
  max_heating_set_point_celsius?: number | undefined
2523
+ /**
2524
+ * Maximum [heating set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °F.
2525
+ */
935
2526
  max_heating_set_point_fahrenheit?: number | undefined
2527
+ /**
2528
+ * Maximum number of periods that the thermostat can support per day. For example, if the thermostat supports 4 periods per day, this value is 4.
2529
+ */
936
2530
  max_thermostat_daily_program_periods_per_day?: number | undefined
2531
+ /**
2532
+ * Maximum number of climate presets that the thermostat can support for weekly programming.
2533
+ */
937
2534
  max_unique_climate_presets_per_thermostat_weekly_program?:
938
2535
  number | undefined
2536
+ /**
2537
+ * Minimum [cooling set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °C.
2538
+ */
939
2539
  min_cooling_set_point_celsius?: number | undefined
2540
+ /**
2541
+ * Minimum [cooling set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point) in °F.
2542
+ */
940
2543
  min_cooling_set_point_fahrenheit?: number | undefined
2544
+ /**
2545
+ * Minimum [temperature difference](https://docs.seam.co/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.
2546
+ */
941
2547
  min_heating_cooling_delta_celsius?: number | undefined
2548
+ /**
2549
+ * Minimum [temperature difference](https://docs.seam.co/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.
2550
+ */
942
2551
  min_heating_cooling_delta_fahrenheit?: number | undefined
2552
+ /**
2553
+ * Minimum [heating set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °C.
2554
+ */
943
2555
  min_heating_set_point_celsius?: number | undefined
2556
+ /**
2557
+ * Minimum [heating set point](https://docs.seam.co/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point) in °F.
2558
+ */
944
2559
  min_heating_set_point_fahrenheit?: number | undefined
2560
+ /**
2561
+ * Reported relative humidity, as a value between 0 and 1, inclusive.
2562
+ */
945
2563
  relative_humidity?: number | undefined
2564
+ /**
2565
+ * Reported temperature in °C.
2566
+ */
946
2567
  temperature_celsius?: number | undefined
2568
+ /**
2569
+ * Reported temperature in °F.
2570
+ */
947
2571
  temperature_fahrenheit?: number | undefined
2572
+ /**
2573
+ * Current [temperature threshold](https://docs.seam.co/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
2574
+ */
948
2575
  temperature_threshold?:
949
2576
  | {
2577
+ /**
2578
+ * Lower limit in °C within the current [temperature threshold](https://docs.seam.co/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
2579
+ */
950
2580
  lower_limit_celsius: number | null
2581
+ /**
2582
+ * Lower limit in °F within the current [temperature threshold](https://docs.seam.co/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
2583
+ */
951
2584
  lower_limit_fahrenheit: number | null
2585
+ /**
2586
+ * Upper limit in °C within the current [temperature threshold](https://docs.seam.co/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
2587
+ */
952
2588
  upper_limit_celsius: number | null
2589
+ /**
2590
+ * Upper limit in °F within the current [temperature threshold](https://docs.seam.co/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) set for the thermostat.
2591
+ */
953
2592
  upper_limit_fahrenheit: number | null
954
2593
  }
955
2594
  | undefined
2595
+ /**
2596
+ * Precision of the thermostat's period in minutes. For example, if the thermostat supports 15-minute periods, this value is 15. All values are relative to the top of the hour, so for 15 minutes, the periods would be 0, 15, 30, and 45 minutes past the hour.
2597
+ */
956
2598
  thermostat_daily_program_period_precision_minutes?: number | undefined
2599
+ /**
2600
+ * Configured [daily programs](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-programs) for the thermostat.
2601
+ */
957
2602
  thermostat_daily_programs?:
958
2603
  | Array<{
2604
+ /**
2605
+ * Date and time at which the thermostat daily program was created.
2606
+ */
959
2607
  created_at: string
960
2608
 
2609
+ /**
2610
+ * ID of the thermostat device on which the thermostat daily program is configured.
2611
+ */
961
2612
  device_id: string
962
2613
 
2614
+ /**
2615
+ * User-friendly name to identify the thermostat daily program.
2616
+ */
963
2617
  name: string | null
2618
+ /**
2619
+ * Array of thermostat daily program periods.
2620
+ */
964
2621
  periods: Array<{
2622
+ /**
2623
+ * Key of the [climate preset](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-climate-presets) to activate at the `starts_at_time`.
2624
+ */
965
2625
  climate_preset_key: string
966
2626
 
2627
+ /**
2628
+ * Time at which the thermostat daily program period starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
2629
+ */
967
2630
  starts_at_time: string
968
2631
  }>
969
2632
 
2633
+ /**
2634
+ * ID of the thermostat daily program.
2635
+ */
970
2636
  thermostat_daily_program_id: string
971
2637
 
2638
+ /**
2639
+ * ID of the workspace that contains the thermostat daily program.
2640
+ */
972
2641
  workspace_id: string
973
2642
  }>
974
2643
  | undefined
2644
+ /**
2645
+ * Current [weekly program](https://docs.seam.co/capability-guides/thermostats/creating-and-managing-thermostat-programs) for the thermostat.
2646
+ */
975
2647
  thermostat_weekly_program?:
976
2648
  | {
2649
+ /**
2650
+ * Date and time at which the thermostat weekly program was created.
2651
+ */
977
2652
  created_at: string
978
2653
 
2654
+ /**
2655
+ * ID of the thermostat daily program to run on Fridays.
2656
+ */
979
2657
  friday_program_id: string | null
2658
+ /**
2659
+ * ID of the thermostat daily program to run on Mondays.
2660
+ */
980
2661
  monday_program_id: string | null
2662
+ /**
2663
+ * ID of the thermostat daily program to run on Saturdays.
2664
+ */
981
2665
  saturday_program_id: string | null
2666
+ /**
2667
+ * ID of the thermostat daily program to run on Sundays.
2668
+ */
982
2669
  sunday_program_id: string | null
2670
+ /**
2671
+ * ID of the thermostat daily program to run on Thursdays.
2672
+ */
983
2673
  thursday_program_id: string | null
2674
+ /**
2675
+ * ID of the thermostat daily program to run on Tuesdays.
2676
+ */
984
2677
  tuesday_program_id: string | null
2678
+ /**
2679
+ * ID of the thermostat daily program to run on Wednesdays.
2680
+ */
985
2681
  wednesday_program_id: string | null
986
2682
  }
987
2683
  | null
988
2684
  | undefined
989
2685
  }
990
2686
 
2687
+ /**
2688
+ * IDs of the spaces the device is in.
2689
+ */
991
2690
  space_ids: Array<string>
992
2691
 
2692
+ /**
2693
+ * 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.
2694
+ */
993
2695
  warnings: Array<
2696
+ /**
2697
+ * Indicates that the backup access code is unhealthy.
2698
+ */
994
2699
  | {
2700
+ /**
2701
+ * Date and time at which Seam created the warning.
2702
+ */
995
2703
  created_at: string
996
2704
 
2705
+ /**
2706
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2707
+ */
997
2708
  message: string
998
2709
 
2710
+ /**
2711
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2712
+ */
999
2713
  warning_code: 'partial_backup_access_code_pool'
1000
- }
2714
+ } /**
2715
+ * Indicates that there are too many backup codes.
2716
+ */
1001
2717
  | {
2718
+ /**
2719
+ * Date and time at which Seam created the warning.
2720
+ */
1002
2721
  created_at: string
1003
2722
 
2723
+ /**
2724
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2725
+ */
1004
2726
  message: string
1005
2727
 
2728
+ /**
2729
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2730
+ */
1006
2731
  warning_code: 'many_active_backup_codes'
1007
- }
2732
+ } /**
2733
+ * Indicates that a third-party integration has been detected.
2734
+ */
1008
2735
  | {
2736
+ /**
2737
+ * Date and time at which Seam created the warning.
2738
+ */
1009
2739
  created_at: string
1010
2740
 
2741
+ /**
2742
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2743
+ */
1011
2744
  message: string
1012
2745
 
2746
+ /**
2747
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2748
+ */
1013
2749
  warning_code: 'third_party_integration_detected'
1014
- }
2750
+ } /**
2751
+ * Indicates that the Remote Unlock feature is not enabled in the settings."
2752
+ */
1015
2753
  | {
2754
+ /**
2755
+ * Date and time at which Seam created the warning.
2756
+ */
1016
2757
  created_at: string
1017
2758
 
2759
+ /**
2760
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2761
+ */
1018
2762
  message: string
1019
2763
 
2764
+ /**
2765
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2766
+ */
1020
2767
  warning_code: 'ttlock_lock_gateway_unlocking_not_enabled'
1021
- }
2768
+ } /**
2769
+ * Indicates that the gateway signal is weak.
2770
+ */
1022
2771
  | {
2772
+ /**
2773
+ * Date and time at which Seam created the warning.
2774
+ */
1023
2775
  created_at: string
1024
2776
 
2777
+ /**
2778
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2779
+ */
1025
2780
  message: string
1026
2781
 
2782
+ /**
2783
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2784
+ */
1027
2785
  warning_code: 'ttlock_weak_gateway_signal'
1028
- }
2786
+ } /**
2787
+ * Indicates that the device is in power saving mode and may have limited functionality.
2788
+ */
1029
2789
  | {
2790
+ /**
2791
+ * Date and time at which Seam created the warning.
2792
+ */
1030
2793
  created_at: string
1031
2794
 
2795
+ /**
2796
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2797
+ */
1032
2798
  message: string
1033
2799
 
2800
+ /**
2801
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2802
+ */
1034
2803
  warning_code: 'power_saving_mode'
1035
- }
2804
+ } /**
2805
+ * Indicates that the temperature threshold has been exceeded.
2806
+ */
1036
2807
  | {
2808
+ /**
2809
+ * Date and time at which Seam created the warning.
2810
+ */
1037
2811
  created_at: string
1038
2812
 
2813
+ /**
2814
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2815
+ */
1039
2816
  message: string
1040
2817
 
2818
+ /**
2819
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2820
+ */
1041
2821
  warning_code: 'temperature_threshold_exceeded'
1042
- }
2822
+ } /**
2823
+ * Indicates that the device appears to be unresponsive.
2824
+ */
1043
2825
  | {
2826
+ /**
2827
+ * Date and time at which Seam created the warning.
2828
+ */
1044
2829
  created_at: string
1045
2830
 
2831
+ /**
2832
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2833
+ */
1046
2834
  message: string
1047
2835
 
2836
+ /**
2837
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2838
+ */
1048
2839
  warning_code: 'device_communication_degraded'
1049
- }
2840
+ } /**
2841
+ * Indicates that a scheduled maintenance window has been detected.
2842
+ */
1050
2843
  | {
2844
+ /**
2845
+ * Date and time at which Seam created the warning.
2846
+ */
1051
2847
  created_at: string
1052
2848
 
2849
+ /**
2850
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2851
+ */
1053
2852
  message: string
1054
2853
 
2854
+ /**
2855
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2856
+ */
1055
2857
  warning_code: 'scheduled_maintenance_window'
1056
- }
2858
+ } /**
2859
+ * Indicates that the device has a flaky connection.
2860
+ */
1057
2861
  | {
2862
+ /**
2863
+ * Date and time at which Seam created the warning.
2864
+ */
1058
2865
  created_at: string
1059
2866
 
2867
+ /**
2868
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2869
+ */
1060
2870
  message: string
1061
2871
 
2872
+ /**
2873
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2874
+ */
1062
2875
  warning_code: 'device_has_flaky_connection'
1063
- }
2876
+ } /**
2877
+ * Indicates that the Salto KS lock is in Office Mode. Access Codes will not unlock doors.
2878
+ */
1064
2879
  | {
2880
+ /**
2881
+ * Date and time at which Seam created the warning.
2882
+ */
1065
2883
  created_at: string
1066
2884
 
2885
+ /**
2886
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2887
+ */
1067
2888
  message: string
1068
2889
 
2890
+ /**
2891
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2892
+ */
1069
2893
  warning_code: 'salto_ks_office_mode'
1070
- }
2894
+ } /**
2895
+ * Indicates that the Salto KS lock is in Privacy Mode. Access Codes will not unlock doors.
2896
+ */
1071
2897
  | {
2898
+ /**
2899
+ * Date and time at which Seam created the warning.
2900
+ */
1072
2901
  created_at: string
1073
2902
 
2903
+ /**
2904
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2905
+ */
1074
2906
  message: string
1075
2907
 
2908
+ /**
2909
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2910
+ */
1076
2911
  warning_code: 'salto_ks_privacy_mode'
1077
- }
2912
+ } /**
2913
+ * Indicates that the lock is in Privacy Mode. Access codes and remote unlock are blocked until Privacy Mode is disabled.
2914
+ */
1078
2915
  | {
2916
+ /**
2917
+ * Date and time at which Seam created the warning.
2918
+ */
1079
2919
  created_at: string
1080
2920
 
2921
+ /**
2922
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2923
+ */
1081
2924
  message: string
1082
2925
 
2926
+ /**
2927
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2928
+ */
1083
2929
  warning_code: 'privacy_mode'
1084
- }
2930
+ } /**
2931
+ * Indicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site.
2932
+ */
1085
2933
  | {
2934
+ /**
2935
+ * Date and time at which Seam created the warning.
2936
+ */
1086
2937
  created_at: string
1087
2938
 
2939
+ /**
2940
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2941
+ */
1088
2942
  message: string
1089
2943
 
2944
+ /**
2945
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2946
+ */
1090
2947
  warning_code: 'salto_ks_subscription_limit_almost_reached'
1091
- }
2948
+ } /**
2949
+ * Indicates that a change in the reported device model has been detected for this Salto KS lock, which may occur after an IQ hub reset. Access code support may be affected. See https://help.getseam.com/articles/5098842588-salto-ks-lock-loses-access-code-support for troubleshooting steps.
2950
+ */
1092
2951
  | {
2952
+ /**
2953
+ * Date and time at which Seam created the warning.
2954
+ */
1093
2955
  created_at: string
1094
2956
 
2957
+ /**
2958
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2959
+ */
1095
2960
  message: string
1096
2961
 
2962
+ /**
2963
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2964
+ */
1097
2965
  warning_code: 'salto_ks_lock_access_code_support_removed'
1098
- }
2966
+ } /**
2967
+ * Indicates that an unknown issue occurred while syncing the state of the phone with the provider. This issue may affect the proper functioning of the phone.
2968
+ */
1099
2969
  | {
2970
+ /**
2971
+ * Date and time at which Seam created the warning.
2972
+ */
1100
2973
  created_at: string
1101
2974
 
2975
+ /**
2976
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2977
+ */
1102
2978
  message: string
1103
2979
 
2980
+ /**
2981
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
2982
+ */
1104
2983
  warning_code: 'unknown_issue_with_phone'
1105
- }
2984
+ } /**
2985
+ * Indicates that Seam detected that the Lockly device does not have a time zone configured. Time-bound codes may not work as expected.
2986
+ */
1106
2987
  | {
2988
+ /**
2989
+ * Date and time at which Seam created the warning.
2990
+ */
1107
2991
  created_at: string
1108
2992
 
2993
+ /**
2994
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
2995
+ */
1109
2996
  message: string
1110
2997
 
2998
+ /**
2999
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3000
+ */
1111
3001
  warning_code: 'lockly_time_zone_not_configured'
1112
- }
3002
+ } /**
3003
+ * Indicates that Seam does not know the time zone of the Ultraloq device. Set a time zone to enable time-bound access codes.
3004
+ */
1113
3005
  | {
3006
+ /**
3007
+ * Date and time at which Seam created the warning.
3008
+ */
1114
3009
  created_at: string
1115
3010
 
3011
+ /**
3012
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3013
+ */
1116
3014
  message: string
1117
3015
 
3016
+ /**
3017
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3018
+ */
1118
3019
  warning_code: 'ultraloq_time_zone_unknown'
1119
- }
3020
+ } /**
3021
+ * Indicates that Seam does not know the device's time zone. Set a time zone to enable time-bound access codes.
3022
+ */
1120
3023
  | {
3024
+ /**
3025
+ * Date and time at which Seam created the warning.
3026
+ */
1121
3027
  created_at: string
1122
3028
 
3029
+ /**
3030
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3031
+ */
1123
3032
  message: string
1124
3033
 
3034
+ /**
3035
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3036
+ */
1125
3037
  warning_code: 'time_zone_unknown'
1126
- }
3038
+ } /**
3039
+ * Indicates that the device's configured time zone does not match its hardware UTC offset. Time-bound access codes may activate at the wrong local time.
3040
+ */
1127
3041
  | {
3042
+ /**
3043
+ * Date and time at which Seam created the warning.
3044
+ */
1128
3045
  created_at: string
1129
3046
 
3047
+ /**
3048
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3049
+ */
1130
3050
  message: string
1131
3051
 
3052
+ /**
3053
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3054
+ */
1132
3055
  warning_code: 'time_zone_mismatch'
1133
- }
3056
+ } /**
3057
+ * Indicates that the 2N device does not have a time zone configured. Configure a time zone on the device to enable access codes.
3058
+ */
1134
3059
  | {
3060
+ /**
3061
+ * Date and time at which Seam created the warning.
3062
+ */
1135
3063
  created_at: string
1136
3064
 
3065
+ /**
3066
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3067
+ */
1137
3068
  message: string
1138
3069
 
3070
+ /**
3071
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3072
+ */
1139
3073
  warning_code: 'two_n_device_missing_timezone'
1140
- }
3074
+ } /**
3075
+ * Indicates that a hub or relay must be connected to unlock additional capabilities such as remote unlock.
3076
+ */
1141
3077
  | {
3078
+ /**
3079
+ * Date and time at which Seam created the warning.
3080
+ */
1142
3081
  created_at: string
1143
3082
 
3083
+ /**
3084
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3085
+ */
1144
3086
  message: string
1145
3087
 
3088
+ /**
3089
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3090
+ */
1146
3091
  warning_code: 'hub_required_for_additional_capabilities'
1147
- }
3092
+ } /**
3093
+ * Indicates a provider-specific issue that may affect device functionality.
3094
+ */
1148
3095
  | {
3096
+ /**
3097
+ * Date and time at which Seam created the warning.
3098
+ */
1149
3099
  created_at: string
1150
3100
 
3101
+ /**
3102
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3103
+ */
1151
3104
  message: string
1152
3105
 
3106
+ /**
3107
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3108
+ */
1153
3109
  warning_code: 'provider_issue'
1154
- }
3110
+ } /**
3111
+ * Indicates that the key is in a locker that does not support the access codes API.
3112
+ */
1155
3113
  | {
3114
+ /**
3115
+ * Date and time at which Seam created the warning.
3116
+ */
1156
3117
  created_at: string
1157
3118
 
3119
+ /**
3120
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3121
+ */
1158
3122
  message: string
1159
3123
 
3124
+ /**
3125
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3126
+ */
1160
3127
  warning_code: 'keynest_unsupported_locker'
1161
- }
3128
+ } /**
3129
+ * Indicates that the accessory keypad exists, but is not linked to the Igloohome Bridge. Online access code programming will fail until the keypad is linked to the Igloohome Bridge in the Igloohome app.
3130
+ */
1162
3131
  | {
3132
+ /**
3133
+ * Date and time at which Seam created the warning.
3134
+ */
1163
3135
  created_at: string
1164
3136
 
3137
+ /**
3138
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3139
+ */
1165
3140
  message: string
1166
3141
 
3142
+ /**
3143
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3144
+ */
1167
3145
  warning_code: 'accessory_keypad_setup_required'
1168
- }
3146
+ } /**
3147
+ * Indicates that the device may optimistically be reported as online because the provider does not reliably report its online status.
3148
+ */
1169
3149
  | {
3150
+ /**
3151
+ * Date and time at which Seam created the warning.
3152
+ */
1170
3153
  created_at: string
1171
3154
 
3155
+ /**
3156
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3157
+ */
1172
3158
  message: string
1173
3159
 
3160
+ /**
3161
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3162
+ */
1174
3163
  warning_code: 'unreliable_online_status'
1175
- }
3164
+ } /**
3165
+ * Indicates that the device has reached its maximum number of active access codes. Delete existing codes before creating new ones.
3166
+ */
1176
3167
  | {
3168
+ /**
3169
+ * Number of active access codes on the device when the warning was set.
3170
+ */
1177
3171
  active_access_code_count: number
1178
3172
 
3173
+ /**
3174
+ * Date and time at which Seam created the warning.
3175
+ */
1179
3176
  created_at: string
1180
3177
 
3178
+ /**
3179
+ * Maximum number of active access codes supported by the device.
3180
+ */
1181
3181
  max_active_access_code_count: number
1182
3182
 
3183
+ /**
3184
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3185
+ */
1183
3186
  message: string
1184
3187
 
3188
+ /**
3189
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3190
+ */
1185
3191
  warning_code: 'max_access_codes_reached'
1186
- }
3192
+ } /**
3193
+ * Indicates that the connected Kwikset account has member-level access to this lock's home. Admin or owner access is required to manage access codes and control the lock remotely.
3194
+ */
1187
3195
  | {
3196
+ /**
3197
+ * Date and time at which Seam created the warning.
3198
+ */
1188
3199
  created_at: string
1189
3200
 
3201
+ /**
3202
+ * Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
3203
+ */
1190
3204
  message: string
1191
3205
 
3206
+ /**
3207
+ * Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
3208
+ */
1192
3209
  warning_code: 'insufficient_permissions'
1193
3210
  }
1194
3211
  >
1195
3212
 
3213
+ /**
3214
+ * Unique identifier for the Seam workspace associated with the device.
3215
+ */
1196
3216
  workspace_id: string
1197
3217
  }