@seamapi/types 1.290.0 → 1.292.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 (32) hide show
  1. package/dist/connect.cjs +688 -193
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +1099 -82
  4. package/lib/seam/connect/models/acs/acs-encoder.d.ts +52 -7
  5. package/lib/seam/connect/models/acs/acs-encoder.js +28 -4
  6. package/lib/seam/connect/models/acs/acs-encoder.js.map +1 -1
  7. package/lib/seam/connect/models/acs/acs-system.js +15 -9
  8. package/lib/seam/connect/models/acs/acs-system.js.map +1 -1
  9. package/lib/seam/connect/models/events/acs/encoders.d.ts +126 -0
  10. package/lib/seam/connect/models/events/acs/encoders.js +20 -0
  11. package/lib/seam/connect/models/events/acs/encoders.js.map +1 -0
  12. package/lib/seam/connect/models/events/acs/index.d.ts +60 -0
  13. package/lib/seam/connect/models/events/acs/index.js +2 -0
  14. package/lib/seam/connect/models/events/acs/index.js.map +1 -1
  15. package/lib/seam/connect/models/events/seam-event.d.ts +60 -0
  16. package/lib/seam/connect/models/thermostats/climate-preset.js +41 -12
  17. package/lib/seam/connect/models/thermostats/climate-preset.js.map +1 -1
  18. package/lib/seam/connect/models/thermostats/thermostat-schedule.js +30 -9
  19. package/lib/seam/connect/models/thermostats/thermostat-schedule.js.map +1 -1
  20. package/lib/seam/connect/openapi.d.ts +218 -23
  21. package/lib/seam/connect/openapi.js +598 -133
  22. package/lib/seam/connect/openapi.js.map +1 -1
  23. package/lib/seam/connect/route-types.d.ts +803 -52
  24. package/package.json +1 -1
  25. package/src/lib/seam/connect/models/acs/acs-encoder.ts +40 -6
  26. package/src/lib/seam/connect/models/acs/acs-system.ts +29 -21
  27. package/src/lib/seam/connect/models/events/acs/encoders.ts +28 -0
  28. package/src/lib/seam/connect/models/events/acs/index.ts +2 -0
  29. package/src/lib/seam/connect/models/thermostats/climate-preset.ts +49 -12
  30. package/src/lib/seam/connect/models/thermostats/thermostat-schedule.ts +38 -9
  31. package/src/lib/seam/connect/openapi.ts +754 -133
  32. package/src/lib/seam/connect/route-types.ts +805 -50
package/dist/connect.cjs CHANGED
@@ -144,31 +144,47 @@ zod.z.array(fan_mode_setting);
144
144
 
145
145
  // src/lib/seam/connect/models/thermostats/climate-preset.ts
146
146
  var climate_preset = zod.z.object({
147
- climate_preset_key: zod.z.string(),
148
- can_edit: zod.z.boolean(),
149
- can_delete: zod.z.boolean(),
150
- name: zod.z.string().nullable().default(null).optional(),
151
- display_name: zod.z.string(),
152
- fan_mode_setting: fan_mode_setting.optional(),
153
- hvac_mode_setting: hvac_mode_setting.optional(),
154
- cooling_set_point_celsius: zod.z.number().optional(),
155
- heating_set_point_celsius: zod.z.number().optional(),
156
- cooling_set_point_fahrenheit: zod.z.number().optional(),
157
- heating_set_point_fahrenheit: zod.z.number().optional(),
158
- manual_override_allowed: zod.z.boolean()
147
+ climate_preset_key: zod.z.string().describe("Unique key to identify the climate preset."),
148
+ can_edit: zod.z.boolean().describe("Indicates whether this climate preset key can be edited."),
149
+ can_delete: zod.z.boolean().describe("Indicates whether this climate preset key can be deleted."),
150
+ name: zod.z.string().nullable().default(null).optional().describe("User-friendly name to identify the climate preset."),
151
+ display_name: zod.z.string().describe("Display name for the climate preset."),
152
+ fan_mode_setting: fan_mode_setting.optional().describe(
153
+ "Desired fan mode setting, such as `on`, `auto`, or `circulate`."
154
+ ),
155
+ hvac_mode_setting: hvac_mode_setting.optional().describe(
156
+ "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`."
157
+ ),
158
+ cooling_set_point_celsius: zod.z.number().optional().describe(
159
+ "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points)."
160
+ ),
161
+ heating_set_point_celsius: zod.z.number().optional().describe("Temperature to which the thermostat should heat (in \xB0C)."),
162
+ cooling_set_point_fahrenheit: zod.z.number().optional().describe("Temperature to which the thermostat should cool (in \xB0F)."),
163
+ heating_set_point_fahrenheit: zod.z.number().optional().describe("Temperature to which the thermostat should heat (in \xB0F)."),
164
+ manual_override_allowed: zod.z.boolean().describe(
165
+ "Indicates whether a person at the thermostat can change the thermostat's settings."
166
+ )
159
167
  });
160
168
  var climate_setting = climate_preset.partial();
161
169
  var thermostat_schedule = zod.z.object({
162
- thermostat_schedule_id: zod.z.string().uuid(),
163
- device_id: zod.z.string().uuid(),
164
- name: zod.z.string().optional(),
165
- climate_preset_key: zod.z.string(),
166
- max_override_period_minutes: zod.z.number().int().nonnegative(),
167
- starts_at: zod.z.string().datetime(),
168
- ends_at: zod.z.string().datetime(),
169
- created_at: zod.z.string().datetime(),
170
+ thermostat_schedule_id: zod.z.string().uuid().describe("ID of the climate schedule."),
171
+ device_id: zod.z.string().uuid().describe("ID of the desired thermostat device."),
172
+ name: zod.z.string().optional().describe("User-friendly name to identify the climate schedule."),
173
+ climate_preset_key: zod.z.string().describe(
174
+ "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule."
175
+ ),
176
+ max_override_period_minutes: zod.z.number().int().nonnegative().describe(
177
+ "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions)."
178
+ ),
179
+ starts_at: zod.z.string().datetime().describe(
180
+ "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format."
181
+ ),
182
+ ends_at: zod.z.string().datetime().describe(
183
+ "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format."
184
+ ),
185
+ created_at: zod.z.string().datetime().describe("Date and time at which the climate schedule was created."),
170
186
  errors: zod.z.any().describe(
171
- 'Collection of errors associated with the thermostat schedule, structured in a dictionary format. A unique "error_code" keys each error. Each error entry is an object containing two fields: "message" and "created_at." "message" is a string that describes the error. "created_at" is a date that indicates when the error was generated. This structure enables detailed tracking and timely response to critical issues.'
187
+ "Array of errors associated with the climate schedule. 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."
172
188
  )
173
189
  });
174
190
 
@@ -1381,20 +1397,20 @@ var visionline_instance_unreachable = common_acs_system_error.extend({
1381
1397
  For example, the IP address of the on-premises access control system may be set incorrectly within the Seam [workspace](https://docs.seam.co/latest/core-concepts/workspaces).
1382
1398
  See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.visionline_instance_unreachable).`);
1383
1399
  var salto_ks_subscription_limit_exceeded = common_acs_system_error.extend({
1384
- error_code: zod.z.literal("salto_ks_subscription_limit_exceeded").describe(
1385
- "Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit."
1386
- )
1387
- });
1400
+ error_code: zod.z.literal("salto_ks_subscription_limit_exceeded").describe(error_code_description)
1401
+ }).describe(
1402
+ "Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit."
1403
+ );
1388
1404
  var acs_system_disconnected = common_acs_system_error.extend({
1389
- error_code: zod.z.literal("acs_system_disconnected").describe(
1390
- "Indicates that the access system has been disconnected. Please refer to [this guide](https://docs.seam.co/latest/capability-guides/access-systems/troubleshooting-your-access-control-system guide) to resolve the issue."
1391
- )
1392
- });
1405
+ error_code: zod.z.literal("acs_system_disconnected").describe(error_code_description)
1406
+ }).describe(
1407
+ "Indicates that the access system has been disconnected. See [this guide](https://docs.seam.co/latest/capability-guides/access-systems/troubleshooting-your-access-control-system guide) to resolve the issue."
1408
+ );
1393
1409
  var account_disconnected = common_acs_system_error.extend({
1394
- error_code: zod.z.literal("account_disconnected").describe(
1395
- "Indicates that the login credentials are invalid. Please reconnect the account using the Connect Webview to restore access."
1396
- )
1397
- });
1410
+ error_code: zod.z.literal("account_disconnected").describe(error_code_description)
1411
+ }).describe(
1412
+ "Indicates that the login credentials are invalid. Reconnect the account using the Connect Webview to restore access."
1413
+ );
1398
1414
  var acs_system_error = zod.z.union([
1399
1415
  seam_bridge_disconnected,
1400
1416
  visionline_instance_unreachable,
@@ -2237,6 +2253,19 @@ var acs_credential_events = [
2237
2253
  acs_credential_deleted_event,
2238
2254
  acs_credential_issued
2239
2255
  ];
2256
+ var acs_encoder_event = common_acs_event.extend({
2257
+ acs_encoder_id: zod.z.string().uuid().describe("ID of the ACS encoder.")
2258
+ });
2259
+ var acs_encoder_added_event = acs_encoder_event.extend({
2260
+ event_type: zod.z.literal("acs_encoder.added")
2261
+ }).describe("An ACS encoder was added.");
2262
+ var acs_encoder_removed_event = acs_encoder_event.extend({
2263
+ event_type: zod.z.literal("acs_encoder.removed")
2264
+ }).describe("An ACS encoder was removed.");
2265
+ var acs_encoder_events = [
2266
+ acs_encoder_added_event,
2267
+ acs_encoder_removed_event
2268
+ ];
2240
2269
  var acs_system_event = common_acs_event.extend({});
2241
2270
  var acs_system_connected_event = acs_system_event.extend({
2242
2271
  event_type: zod.z.literal("acs_system.connected")
@@ -2260,7 +2289,8 @@ var acs_user_events = [acs_user_deleted_event];
2260
2289
  var acs_events = [
2261
2290
  ...acs_system_events,
2262
2291
  ...acs_credential_events,
2263
- ...acs_user_events
2292
+ ...acs_user_events,
2293
+ ...acs_encoder_events
2264
2294
  ];
2265
2295
  var action_attempt_event = common_event.extend({
2266
2296
  action_attempt_id: zod.z.string().uuid().describe(`
@@ -3379,6 +3409,7 @@ var openapi_default = {
3379
3409
  type: "object"
3380
3410
  },
3381
3411
  {
3412
+ description: "Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit.",
3382
3413
  properties: {
3383
3414
  created_at: {
3384
3415
  description: "Date and time at which Seam created the error.",
@@ -3386,7 +3417,7 @@ var openapi_default = {
3386
3417
  type: "string"
3387
3418
  },
3388
3419
  error_code: {
3389
- description: "Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit.",
3420
+ description: "Unique identifier of the type of error. Enables quick recognition and categorization of the issue.",
3390
3421
  enum: ["salto_ks_subscription_limit_exceeded"],
3391
3422
  type: "string"
3392
3423
  },
@@ -3399,6 +3430,7 @@ var openapi_default = {
3399
3430
  type: "object"
3400
3431
  },
3401
3432
  {
3433
+ description: "Indicates that the access system has been disconnected. See [this guide](https://docs.seam.co/latest/capability-guides/access-systems/troubleshooting-your-access-control-system guide) to resolve the issue.",
3402
3434
  properties: {
3403
3435
  created_at: {
3404
3436
  description: "Date and time at which Seam created the error.",
@@ -3406,7 +3438,7 @@ var openapi_default = {
3406
3438
  type: "string"
3407
3439
  },
3408
3440
  error_code: {
3409
- description: "Indicates that the access system has been disconnected. Please refer to [this guide](https://docs.seam.co/latest/capability-guides/access-systems/troubleshooting-your-access-control-system guide) to resolve the issue.",
3441
+ description: "Unique identifier of the type of error. Enables quick recognition and categorization of the issue.",
3410
3442
  enum: ["acs_system_disconnected"],
3411
3443
  type: "string"
3412
3444
  },
@@ -3419,6 +3451,7 @@ var openapi_default = {
3419
3451
  type: "object"
3420
3452
  },
3421
3453
  {
3454
+ description: "Indicates that the login credentials are invalid. Reconnect the account using the Connect Webview to restore access.",
3422
3455
  properties: {
3423
3456
  created_at: {
3424
3457
  description: "Date and time at which Seam created the error.",
@@ -3426,7 +3459,7 @@ var openapi_default = {
3426
3459
  type: "string"
3427
3460
  },
3428
3461
  error_code: {
3429
- description: "Indicates that the login credentials are invalid. Please reconnect the account using the Connect Webview to restore access.",
3462
+ description: "Unique identifier of the type of error. Enables quick recognition and categorization of the issue.",
3430
3463
  enum: ["account_disconnected"],
3431
3464
  type: "string"
3432
3465
  },
@@ -7142,20 +7175,44 @@ var openapi_default = {
7142
7175
  default: null,
7143
7176
  nullable: true,
7144
7177
  properties: {
7145
- climate_preset_key: { type: "string" },
7146
- created_at: { format: "date-time", type: "string" },
7147
- device_id: { format: "uuid", type: "string" },
7148
- ends_at: { format: "date-time", type: "string" },
7178
+ climate_preset_key: {
7179
+ description: "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule.",
7180
+ type: "string"
7181
+ },
7182
+ created_at: {
7183
+ description: "Date and time at which the climate schedule was created.",
7184
+ format: "date-time",
7185
+ type: "string"
7186
+ },
7187
+ device_id: {
7188
+ description: "ID of the desired thermostat device.",
7189
+ format: "uuid",
7190
+ type: "string"
7191
+ },
7192
+ ends_at: {
7193
+ description: "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
7194
+ format: "date-time",
7195
+ type: "string"
7196
+ },
7149
7197
  errors: {
7150
- description: 'Collection of errors associated with the thermostat schedule, structured in a dictionary format. A unique "error_code" keys each error. Each error entry is an object containing two fields: "message" and "created_at." "message" is a string that describes the error. "created_at" is a date that indicates when the error was generated. This structure enables detailed tracking and timely response to critical issues.'
7198
+ description: "Array of errors associated with the climate schedule. 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."
7151
7199
  },
7152
7200
  max_override_period_minutes: {
7201
+ description: "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions).",
7153
7202
  minimum: 0,
7154
7203
  type: "integer"
7155
7204
  },
7156
- name: { type: "string" },
7157
- starts_at: { format: "date-time", type: "string" },
7205
+ name: {
7206
+ description: "User-friendly name to identify the climate schedule.",
7207
+ type: "string"
7208
+ },
7209
+ starts_at: {
7210
+ description: "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
7211
+ format: "date-time",
7212
+ type: "string"
7213
+ },
7158
7214
  thermostat_schedule_id: {
7215
+ description: "ID of the climate schedule.",
7159
7216
  format: "uuid",
7160
7217
  type: "string"
7161
7218
  }
@@ -7174,37 +7231,59 @@ var openapi_default = {
7174
7231
  available_climate_presets: {
7175
7232
  items: {
7176
7233
  properties: {
7177
- can_delete: { type: "boolean" },
7178
- can_edit: { type: "boolean" },
7179
- climate_preset_key: { type: "string" },
7234
+ can_delete: {
7235
+ description: "Indicates whether this climate preset key can be deleted.",
7236
+ type: "boolean"
7237
+ },
7238
+ can_edit: {
7239
+ description: "Indicates whether this climate preset key can be edited.",
7240
+ type: "boolean"
7241
+ },
7242
+ climate_preset_key: {
7243
+ description: "Unique key to identify the climate preset.",
7244
+ type: "string"
7245
+ },
7180
7246
  cooling_set_point_celsius: {
7247
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
7181
7248
  format: "float",
7182
7249
  type: "number"
7183
7250
  },
7184
7251
  cooling_set_point_fahrenheit: {
7252
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
7185
7253
  format: "float",
7186
7254
  type: "number"
7187
7255
  },
7188
- display_name: { type: "string" },
7256
+ display_name: {
7257
+ description: "Display name for the climate preset.",
7258
+ type: "string"
7259
+ },
7189
7260
  fan_mode_setting: {
7261
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
7190
7262
  enum: ["auto", "on", "circulate"],
7191
7263
  type: "string"
7192
7264
  },
7193
7265
  heating_set_point_celsius: {
7266
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
7194
7267
  format: "float",
7195
7268
  type: "number"
7196
7269
  },
7197
7270
  heating_set_point_fahrenheit: {
7271
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
7198
7272
  format: "float",
7199
7273
  type: "number"
7200
7274
  },
7201
7275
  hvac_mode_setting: {
7276
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
7202
7277
  enum: ["off", "heat", "cool", "heat_cool"],
7203
7278
  type: "string"
7204
7279
  },
7205
- manual_override_allowed: { type: "boolean" },
7280
+ manual_override_allowed: {
7281
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
7282
+ type: "boolean"
7283
+ },
7206
7284
  name: {
7207
7285
  default: null,
7286
+ description: "User-friendly name to identify the climate preset.",
7208
7287
  nullable: true,
7209
7288
  type: "string"
7210
7289
  }
@@ -7236,37 +7315,59 @@ var openapi_default = {
7236
7315
  },
7237
7316
  current_climate_setting: {
7238
7317
  properties: {
7239
- can_delete: { type: "boolean" },
7240
- can_edit: { type: "boolean" },
7241
- climate_preset_key: { type: "string" },
7318
+ can_delete: {
7319
+ description: "Indicates whether this climate preset key can be deleted.",
7320
+ type: "boolean"
7321
+ },
7322
+ can_edit: {
7323
+ description: "Indicates whether this climate preset key can be edited.",
7324
+ type: "boolean"
7325
+ },
7326
+ climate_preset_key: {
7327
+ description: "Unique key to identify the climate preset.",
7328
+ type: "string"
7329
+ },
7242
7330
  cooling_set_point_celsius: {
7331
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
7243
7332
  format: "float",
7244
7333
  type: "number"
7245
7334
  },
7246
7335
  cooling_set_point_fahrenheit: {
7336
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
7247
7337
  format: "float",
7248
7338
  type: "number"
7249
7339
  },
7250
- display_name: { type: "string" },
7340
+ display_name: {
7341
+ description: "Display name for the climate preset.",
7342
+ type: "string"
7343
+ },
7251
7344
  fan_mode_setting: {
7345
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
7252
7346
  enum: ["auto", "on", "circulate"],
7253
7347
  type: "string"
7254
7348
  },
7255
7349
  heating_set_point_celsius: {
7350
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
7256
7351
  format: "float",
7257
7352
  type: "number"
7258
7353
  },
7259
7354
  heating_set_point_fahrenheit: {
7355
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
7260
7356
  format: "float",
7261
7357
  type: "number"
7262
7358
  },
7263
7359
  hvac_mode_setting: {
7360
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
7264
7361
  enum: ["off", "heat", "cool", "heat_cool"],
7265
7362
  type: "string"
7266
7363
  },
7267
- manual_override_allowed: { type: "boolean" },
7364
+ manual_override_allowed: {
7365
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
7366
+ type: "boolean"
7367
+ },
7268
7368
  name: {
7269
7369
  default: null,
7370
+ description: "User-friendly name to identify the climate preset.",
7270
7371
  nullable: true,
7271
7372
  type: "string"
7272
7373
  }
@@ -7276,37 +7377,59 @@ var openapi_default = {
7276
7377
  default_climate_setting: {
7277
7378
  deprecated: true,
7278
7379
  properties: {
7279
- can_delete: { type: "boolean" },
7280
- can_edit: { type: "boolean" },
7281
- climate_preset_key: { type: "string" },
7380
+ can_delete: {
7381
+ description: "Indicates whether this climate preset key can be deleted.",
7382
+ type: "boolean"
7383
+ },
7384
+ can_edit: {
7385
+ description: "Indicates whether this climate preset key can be edited.",
7386
+ type: "boolean"
7387
+ },
7388
+ climate_preset_key: {
7389
+ description: "Unique key to identify the climate preset.",
7390
+ type: "string"
7391
+ },
7282
7392
  cooling_set_point_celsius: {
7393
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
7283
7394
  format: "float",
7284
7395
  type: "number"
7285
7396
  },
7286
7397
  cooling_set_point_fahrenheit: {
7398
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
7287
7399
  format: "float",
7288
7400
  type: "number"
7289
7401
  },
7290
- display_name: { type: "string" },
7402
+ display_name: {
7403
+ description: "Display name for the climate preset.",
7404
+ type: "string"
7405
+ },
7291
7406
  fan_mode_setting: {
7407
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
7292
7408
  enum: ["auto", "on", "circulate"],
7293
7409
  type: "string"
7294
7410
  },
7295
7411
  heating_set_point_celsius: {
7412
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
7296
7413
  format: "float",
7297
7414
  type: "number"
7298
7415
  },
7299
7416
  heating_set_point_fahrenheit: {
7417
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
7300
7418
  format: "float",
7301
7419
  type: "number"
7302
7420
  },
7303
7421
  hvac_mode_setting: {
7422
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
7304
7423
  enum: ["off", "heat", "cool", "heat_cool"],
7305
7424
  type: "string"
7306
7425
  },
7307
- manual_override_allowed: { type: "boolean" },
7426
+ manual_override_allowed: {
7427
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
7428
+ type: "boolean"
7429
+ },
7308
7430
  name: {
7309
7431
  default: null,
7432
+ description: "User-friendly name to identify the climate preset.",
7310
7433
  nullable: true,
7311
7434
  type: "string"
7312
7435
  }
@@ -7800,17 +7923,47 @@ var openapi_default = {
7800
7923
  },
7801
7924
  thermostat_schedule: {
7802
7925
  properties: {
7803
- climate_preset_key: { type: "string" },
7804
- created_at: { format: "date-time", type: "string" },
7805
- device_id: { format: "uuid", type: "string" },
7806
- ends_at: { format: "date-time", type: "string" },
7926
+ climate_preset_key: {
7927
+ description: "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule.",
7928
+ type: "string"
7929
+ },
7930
+ created_at: {
7931
+ description: "Date and time at which the climate schedule was created.",
7932
+ format: "date-time",
7933
+ type: "string"
7934
+ },
7935
+ device_id: {
7936
+ description: "ID of the desired thermostat device.",
7937
+ format: "uuid",
7938
+ type: "string"
7939
+ },
7940
+ ends_at: {
7941
+ description: "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
7942
+ format: "date-time",
7943
+ type: "string"
7944
+ },
7807
7945
  errors: {
7808
- description: 'Collection of errors associated with the thermostat schedule, structured in a dictionary format. A unique "error_code" keys each error. Each error entry is an object containing two fields: "message" and "created_at." "message" is a string that describes the error. "created_at" is a date that indicates when the error was generated. This structure enables detailed tracking and timely response to critical issues.'
7946
+ description: "Array of errors associated with the climate schedule. 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."
7809
7947
  },
7810
- max_override_period_minutes: { minimum: 0, type: "integer" },
7811
- name: { type: "string" },
7812
- starts_at: { format: "date-time", type: "string" },
7813
- thermostat_schedule_id: { format: "uuid", type: "string" }
7948
+ max_override_period_minutes: {
7949
+ description: "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions).",
7950
+ minimum: 0,
7951
+ type: "integer"
7952
+ },
7953
+ name: {
7954
+ description: "User-friendly name to identify the climate schedule.",
7955
+ type: "string"
7956
+ },
7957
+ starts_at: {
7958
+ description: "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
7959
+ format: "date-time",
7960
+ type: "string"
7961
+ },
7962
+ thermostat_schedule_id: {
7963
+ description: "ID of the climate schedule.",
7964
+ format: "uuid",
7965
+ type: "string"
7966
+ }
7814
7967
  },
7815
7968
  required: [
7816
7969
  "thermostat_schedule_id",
@@ -14949,34 +15102,47 @@ var openapi_default = {
14949
15102
  },
14950
15103
  "/devices/list": {
14951
15104
  post: {
15105
+ description: "Returns a list of all [devices](https://docs.seam.co/latest/core-concepts/devices).",
14952
15106
  operationId: "devicesListPost",
14953
15107
  requestBody: {
14954
15108
  content: {
14955
15109
  "application/json": {
14956
15110
  schema: {
14957
15111
  properties: {
14958
- connect_webview_id: { format: "uuid", type: "string" },
15112
+ connect_webview_id: {
15113
+ description: "ID of the Connect Webview by which to filter devices.",
15114
+ format: "uuid",
15115
+ type: "string"
15116
+ },
14959
15117
  connected_account_id: {
14960
- description: "List all devices owned by this connected account",
15118
+ description: "ID of the connected account by which to filter.",
14961
15119
  format: "uuid",
14962
15120
  type: "string"
14963
15121
  },
14964
15122
  connected_account_ids: {
15123
+ description: "Array of IDs of the connected accounts by which to filter devices.",
14965
15124
  items: { format: "uuid", type: "string" },
14966
15125
  type: "array"
14967
15126
  },
14968
- created_before: { format: "date-time", type: "string" },
15127
+ created_before: {
15128
+ description: "Date threshold for devices to return. If specified, returns only devices created before the specified date.",
15129
+ format: "date-time",
15130
+ type: "string"
15131
+ },
14969
15132
  custom_metadata_has: {
14970
15133
  additionalProperties: {
14971
15134
  oneOf: [{ type: "string" }, { type: "boolean" }]
14972
15135
  },
15136
+ description: "Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices.",
14973
15137
  type: "object"
14974
15138
  },
14975
15139
  device_ids: {
15140
+ description: "Array of device IDs by which to filter devices.",
14976
15141
  items: { format: "uuid", type: "string" },
14977
15142
  type: "array"
14978
15143
  },
14979
15144
  device_type: {
15145
+ description: "Device type by which to filter devices.",
14980
15146
  oneOf: [
14981
15147
  {
14982
15148
  enum: [
@@ -15033,6 +15199,7 @@ var openapi_default = {
15033
15199
  ]
15034
15200
  },
15035
15201
  device_types: {
15202
+ description: "Array of device types by which to filter devices.",
15036
15203
  items: {
15037
15204
  oneOf: [
15038
15205
  {
@@ -15111,7 +15278,8 @@ var openapi_default = {
15111
15278
  ],
15112
15279
  type: "string"
15113
15280
  },
15114
- type: "array"
15281
+ type: "array",
15282
+ "x-undocumented": "Only used internally."
15115
15283
  },
15116
15284
  include_if: {
15117
15285
  items: {
@@ -15130,10 +15298,17 @@ var openapi_default = {
15130
15298
  ],
15131
15299
  type: "string"
15132
15300
  },
15133
- type: "array"
15301
+ type: "array",
15302
+ "x-undocumented": "Only used internally."
15303
+ },
15304
+ limit: {
15305
+ default: 500,
15306
+ description: "Numerical limit on the number of devices to return.",
15307
+ format: "float",
15308
+ type: "number"
15134
15309
  },
15135
- limit: { default: 500, format: "float", type: "number" },
15136
15310
  manufacturer: {
15311
+ description: "Manufacturer by which to filter devices.",
15137
15312
  enum: [
15138
15313
  "akuvox",
15139
15314
  "august",
@@ -15173,7 +15348,10 @@ var openapi_default = {
15173
15348
  ],
15174
15349
  type: "string"
15175
15350
  },
15176
- user_identifier_key: { type: "string" }
15351
+ user_identifier_key: {
15352
+ description: "Your own internal user ID for the user by which to filter devices.",
15353
+ type: "string"
15354
+ }
15177
15355
  },
15178
15356
  type: "object"
15179
15357
  }
@@ -15213,7 +15391,8 @@ var openapi_default = {
15213
15391
  "x-fern-sdk-group-name": ["devices"],
15214
15392
  "x-fern-sdk-method-name": "list",
15215
15393
  "x-fern-sdk-return-value": "devices",
15216
- "x-response-key": "devices"
15394
+ "x-response-key": "devices",
15395
+ "x-title": "List Devices"
15217
15396
  }
15218
15397
  },
15219
15398
  "/devices/list_device_providers": {
@@ -15459,28 +15638,40 @@ var openapi_default = {
15459
15638
  "application/json": {
15460
15639
  schema: {
15461
15640
  properties: {
15462
- connect_webview_id: { format: "uuid", type: "string" },
15641
+ connect_webview_id: {
15642
+ description: "ID of the Connect Webview by which to filter devices.",
15643
+ format: "uuid",
15644
+ type: "string"
15645
+ },
15463
15646
  connected_account_id: {
15464
- description: "List all devices owned by this connected account",
15647
+ description: "ID of the connected account by which to filter.",
15465
15648
  format: "uuid",
15466
15649
  type: "string"
15467
15650
  },
15468
15651
  connected_account_ids: {
15652
+ description: "Array of IDs of the connected accounts by which to filter devices.",
15469
15653
  items: { format: "uuid", type: "string" },
15470
15654
  type: "array"
15471
15655
  },
15472
- created_before: { format: "date-time", type: "string" },
15656
+ created_before: {
15657
+ description: "Date threshold for devices to return. If specified, returns only devices created before the specified date.",
15658
+ format: "date-time",
15659
+ type: "string"
15660
+ },
15473
15661
  custom_metadata_has: {
15474
15662
  additionalProperties: {
15475
15663
  oneOf: [{ type: "string" }, { type: "boolean" }]
15476
15664
  },
15665
+ description: "Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices.",
15477
15666
  type: "object"
15478
15667
  },
15479
15668
  device_ids: {
15669
+ description: "Array of device IDs by which to filter devices.",
15480
15670
  items: { format: "uuid", type: "string" },
15481
15671
  type: "array"
15482
15672
  },
15483
15673
  device_type: {
15674
+ description: "Device type by which to filter devices.",
15484
15675
  oneOf: [
15485
15676
  {
15486
15677
  enum: [
@@ -15537,6 +15728,7 @@ var openapi_default = {
15537
15728
  ]
15538
15729
  },
15539
15730
  device_types: {
15731
+ description: "Array of device types by which to filter devices.",
15540
15732
  items: {
15541
15733
  oneOf: [
15542
15734
  {
@@ -15615,7 +15807,8 @@ var openapi_default = {
15615
15807
  ],
15616
15808
  type: "string"
15617
15809
  },
15618
- type: "array"
15810
+ type: "array",
15811
+ "x-undocumented": "Only used internally."
15619
15812
  },
15620
15813
  include_if: {
15621
15814
  items: {
@@ -15634,10 +15827,17 @@ var openapi_default = {
15634
15827
  ],
15635
15828
  type: "string"
15636
15829
  },
15637
- type: "array"
15830
+ type: "array",
15831
+ "x-undocumented": "Only used internally."
15832
+ },
15833
+ limit: {
15834
+ default: 500,
15835
+ description: "Numerical limit on the number of devices to return.",
15836
+ format: "float",
15837
+ type: "number"
15638
15838
  },
15639
- limit: { default: 500, format: "float", type: "number" },
15640
15839
  manufacturer: {
15840
+ description: "Manufacturer by which to filter devices.",
15641
15841
  enum: [
15642
15842
  "akuvox",
15643
15843
  "august",
@@ -15677,7 +15877,10 @@ var openapi_default = {
15677
15877
  ],
15678
15878
  type: "string"
15679
15879
  },
15680
- user_identifier_key: { type: "string" }
15880
+ user_identifier_key: {
15881
+ description: "Your own internal user ID for the user by which to filter devices.",
15882
+ type: "string"
15883
+ }
15681
15884
  },
15682
15885
  type: "object"
15683
15886
  }
@@ -16070,6 +16273,8 @@ var openapi_default = {
16070
16273
  "acs_user.deleted",
16071
16274
  "acs_credential.deleted",
16072
16275
  "acs_credential.issued",
16276
+ "acs_encoder.added",
16277
+ "acs_encoder.removed",
16073
16278
  "enrollment_automation.deleted",
16074
16279
  "client_session.deleted",
16075
16280
  "action_attempt.lock_door.succeeded",
@@ -16144,6 +16349,8 @@ var openapi_default = {
16144
16349
  "acs_user.deleted",
16145
16350
  "acs_credential.deleted",
16146
16351
  "acs_credential.issued",
16352
+ "acs_encoder.added",
16353
+ "acs_encoder.removed",
16147
16354
  "enrollment_automation.deleted",
16148
16355
  "client_session.deleted",
16149
16356
  "action_attempt.lock_door.succeeded",
@@ -16263,28 +16470,40 @@ var openapi_default = {
16263
16470
  "application/json": {
16264
16471
  schema: {
16265
16472
  properties: {
16266
- connect_webview_id: { format: "uuid", type: "string" },
16473
+ connect_webview_id: {
16474
+ description: "ID of the Connect Webview by which to filter devices.",
16475
+ format: "uuid",
16476
+ type: "string"
16477
+ },
16267
16478
  connected_account_id: {
16268
- description: "List all devices owned by this connected account",
16479
+ description: "ID of the connected account by which to filter.",
16269
16480
  format: "uuid",
16270
16481
  type: "string"
16271
16482
  },
16272
16483
  connected_account_ids: {
16484
+ description: "Array of IDs of the connected accounts by which to filter devices.",
16273
16485
  items: { format: "uuid", type: "string" },
16274
16486
  type: "array"
16275
16487
  },
16276
- created_before: { format: "date-time", type: "string" },
16488
+ created_before: {
16489
+ description: "Date threshold for devices to return. If specified, returns only devices created before the specified date.",
16490
+ format: "date-time",
16491
+ type: "string"
16492
+ },
16277
16493
  custom_metadata_has: {
16278
16494
  additionalProperties: {
16279
16495
  oneOf: [{ type: "string" }, { type: "boolean" }]
16280
16496
  },
16497
+ description: "Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices.",
16281
16498
  type: "object"
16282
16499
  },
16283
16500
  device_ids: {
16501
+ description: "Array of device IDs by which to filter devices.",
16284
16502
  items: { format: "uuid", type: "string" },
16285
16503
  type: "array"
16286
16504
  },
16287
16505
  device_type: {
16506
+ description: "Device type by which to filter devices.",
16288
16507
  oneOf: [
16289
16508
  {
16290
16509
  enum: [
@@ -16341,6 +16560,7 @@ var openapi_default = {
16341
16560
  ]
16342
16561
  },
16343
16562
  device_types: {
16563
+ description: "Array of device types by which to filter devices.",
16344
16564
  items: {
16345
16565
  oneOf: [
16346
16566
  {
@@ -16419,7 +16639,8 @@ var openapi_default = {
16419
16639
  ],
16420
16640
  type: "string"
16421
16641
  },
16422
- type: "array"
16642
+ type: "array",
16643
+ "x-undocumented": "Only used internally."
16423
16644
  },
16424
16645
  include_if: {
16425
16646
  items: {
@@ -16438,10 +16659,17 @@ var openapi_default = {
16438
16659
  ],
16439
16660
  type: "string"
16440
16661
  },
16441
- type: "array"
16662
+ type: "array",
16663
+ "x-undocumented": "Only used internally."
16664
+ },
16665
+ limit: {
16666
+ default: 500,
16667
+ description: "Numerical limit on the number of devices to return.",
16668
+ format: "float",
16669
+ type: "number"
16442
16670
  },
16443
- limit: { default: 500, format: "float", type: "number" },
16444
16671
  manufacturer: {
16672
+ description: "Manufacturer by which to filter devices.",
16445
16673
  enum: [
16446
16674
  "akuvox",
16447
16675
  "august",
@@ -16481,7 +16709,10 @@ var openapi_default = {
16481
16709
  ],
16482
16710
  type: "string"
16483
16711
  },
16484
- user_identifier_key: { type: "string" }
16712
+ user_identifier_key: {
16713
+ description: "Your own internal user ID for the user by which to filter devices.",
16714
+ type: "string"
16715
+ }
16485
16716
  },
16486
16717
  type: "object"
16487
16718
  }
@@ -16729,28 +16960,40 @@ var openapi_default = {
16729
16960
  "application/json": {
16730
16961
  schema: {
16731
16962
  properties: {
16732
- connect_webview_id: { format: "uuid", type: "string" },
16963
+ connect_webview_id: {
16964
+ description: "ID of the Connect Webview by which to filter devices.",
16965
+ format: "uuid",
16966
+ type: "string"
16967
+ },
16733
16968
  connected_account_id: {
16734
- description: "List all devices owned by this connected account",
16969
+ description: "ID of the connected account by which to filter.",
16735
16970
  format: "uuid",
16736
16971
  type: "string"
16737
16972
  },
16738
16973
  connected_account_ids: {
16974
+ description: "Array of IDs of the connected accounts by which to filter devices.",
16739
16975
  items: { format: "uuid", type: "string" },
16740
16976
  type: "array"
16741
16977
  },
16742
- created_before: { format: "date-time", type: "string" },
16978
+ created_before: {
16979
+ description: "Date threshold for devices to return. If specified, returns only devices created before the specified date.",
16980
+ format: "date-time",
16981
+ type: "string"
16982
+ },
16743
16983
  custom_metadata_has: {
16744
16984
  additionalProperties: {
16745
16985
  oneOf: [{ type: "string" }, { type: "boolean" }]
16746
16986
  },
16987
+ description: "Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices.",
16747
16988
  type: "object"
16748
16989
  },
16749
16990
  device_ids: {
16991
+ description: "Array of device IDs by which to filter devices.",
16750
16992
  items: { format: "uuid", type: "string" },
16751
16993
  type: "array"
16752
16994
  },
16753
16995
  device_type: {
16996
+ description: "Device type by which to filter devices.",
16754
16997
  oneOf: [
16755
16998
  {
16756
16999
  enum: [
@@ -16807,6 +17050,7 @@ var openapi_default = {
16807
17050
  ]
16808
17051
  },
16809
17052
  device_types: {
17053
+ description: "Array of device types by which to filter devices.",
16810
17054
  items: {
16811
17055
  oneOf: [
16812
17056
  {
@@ -16885,7 +17129,8 @@ var openapi_default = {
16885
17129
  ],
16886
17130
  type: "string"
16887
17131
  },
16888
- type: "array"
17132
+ type: "array",
17133
+ "x-undocumented": "Only used internally."
16889
17134
  },
16890
17135
  include_if: {
16891
17136
  items: {
@@ -16904,10 +17149,17 @@ var openapi_default = {
16904
17149
  ],
16905
17150
  type: "string"
16906
17151
  },
16907
- type: "array"
17152
+ type: "array",
17153
+ "x-undocumented": "Only used internally."
17154
+ },
17155
+ limit: {
17156
+ default: 500,
17157
+ description: "Numerical limit on the number of devices to return.",
17158
+ format: "float",
17159
+ type: "number"
16908
17160
  },
16909
- limit: { default: 500, format: "float", type: "number" },
16910
17161
  manufacturer: {
17162
+ description: "Manufacturer by which to filter devices.",
16911
17163
  enum: [
16912
17164
  "akuvox",
16913
17165
  "august",
@@ -16947,7 +17199,10 @@ var openapi_default = {
16947
17199
  ],
16948
17200
  type: "string"
16949
17201
  },
16950
- user_identifier_key: { type: "string" }
17202
+ user_identifier_key: {
17203
+ description: "Your own internal user ID for the user by which to filter devices.",
17204
+ type: "string"
17205
+ }
16951
17206
  },
16952
17207
  type: "object"
16953
17208
  }
@@ -17592,14 +17847,22 @@ var openapi_default = {
17592
17847
  },
17593
17848
  "/thermostats/activate_climate_preset": {
17594
17849
  post: {
17850
+ description: "Activates a specified [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
17595
17851
  operationId: "thermostatsActivateClimatePresetPost",
17596
17852
  requestBody: {
17597
17853
  content: {
17598
17854
  "application/json": {
17599
17855
  schema: {
17600
17856
  properties: {
17601
- climate_preset_key: { type: "string" },
17602
- device_id: { format: "uuid", type: "string" }
17857
+ climate_preset_key: {
17858
+ description: "Climate preset key of the desired climate preset.",
17859
+ type: "string"
17860
+ },
17861
+ device_id: {
17862
+ description: "ID of the desired thermostat device.",
17863
+ format: "uuid",
17864
+ type: "string"
17865
+ }
17603
17866
  },
17604
17867
  required: ["device_id", "climate_preset_key"],
17605
17868
  type: "object"
@@ -17638,12 +17901,13 @@ var openapi_default = {
17638
17901
  "x-fern-sdk-group-name": ["thermostats"],
17639
17902
  "x-fern-sdk-method-name": "activate_climate_preset",
17640
17903
  "x-fern-sdk-return-value": "action_attempt",
17641
- "x-response-key": "action_attempt"
17904
+ "x-response-key": "action_attempt",
17905
+ "x-title": "Activate a Climate Preset"
17642
17906
  }
17643
17907
  },
17644
17908
  "/thermostats/cool": {
17645
17909
  post: {
17646
- description: "Sets a thermostat to cooling mode. You must include a cooling set point in Celsius or Fahrenheit. See also [Setting the Current HVAC and Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).",
17910
+ description: "Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [cool mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).",
17647
17911
  operationId: "thermostatsCoolPost",
17648
17912
  requestBody: {
17649
17913
  content: {
@@ -17651,21 +17915,25 @@ var openapi_default = {
17651
17915
  schema: {
17652
17916
  properties: {
17653
17917
  cooling_set_point_celsius: {
17654
- description: "Temperature to which the HVAC system connected to the thermostat should cool (in \xB0C). You must set one of the `cooling_set_point` parameters.",
17918
+ description: "Desired [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0C. You must set one of the `cooling_set_point` parameters.",
17655
17919
  format: "float",
17656
17920
  type: "number"
17657
17921
  },
17658
17922
  cooling_set_point_fahrenheit: {
17659
- description: "Temperature to which the HVAC system connected to the thermostat should cool (in \xB0F). You must set one of the `cooling_set_point` parameters.",
17923
+ description: "Desired [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0F. You must set one of the `cooling_set_point` parameters.",
17660
17924
  format: "float",
17661
17925
  type: "number"
17662
17926
  },
17663
17927
  device_id: {
17664
- description: "ID of the thermostat device.",
17928
+ description: "ID of the desired thermostat device.",
17665
17929
  format: "uuid",
17666
17930
  type: "string"
17667
17931
  },
17668
- sync: { default: false, type: "boolean" }
17932
+ sync: {
17933
+ default: false,
17934
+ type: "boolean",
17935
+ "x-undocumented": "Only used internally."
17936
+ }
17669
17937
  },
17670
17938
  required: ["device_id"],
17671
17939
  type: "object"
@@ -17711,40 +17979,62 @@ var openapi_default = {
17711
17979
  },
17712
17980
  "/thermostats/create_climate_preset": {
17713
17981
  post: {
17982
+ description: "Creates a [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
17714
17983
  operationId: "thermostatsCreateClimatePresetPost",
17715
17984
  requestBody: {
17716
17985
  content: {
17717
17986
  "application/json": {
17718
17987
  schema: {
17719
17988
  properties: {
17720
- climate_preset_key: { type: "string" },
17989
+ climate_preset_key: {
17990
+ description: "Unique key to identify the climate preset.",
17991
+ type: "string"
17992
+ },
17721
17993
  cooling_set_point_celsius: {
17994
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
17722
17995
  format: "float",
17723
17996
  type: "number"
17724
17997
  },
17725
17998
  cooling_set_point_fahrenheit: {
17999
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
17726
18000
  format: "float",
17727
18001
  type: "number"
17728
18002
  },
17729
- device_id: { format: "uuid", type: "string" },
18003
+ device_id: {
18004
+ description: "ID of the desired thermostat device.",
18005
+ format: "uuid",
18006
+ type: "string"
18007
+ },
17730
18008
  fan_mode_setting: {
18009
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
17731
18010
  enum: ["auto", "on", "circulate"],
17732
18011
  type: "string"
17733
18012
  },
17734
18013
  heating_set_point_celsius: {
18014
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
17735
18015
  format: "float",
17736
18016
  type: "number"
17737
18017
  },
17738
18018
  heating_set_point_fahrenheit: {
18019
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
17739
18020
  format: "float",
17740
18021
  type: "number"
17741
18022
  },
17742
18023
  hvac_mode_setting: {
18024
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
17743
18025
  enum: ["off", "heat", "cool", "heat_cool"],
17744
18026
  type: "string"
17745
18027
  },
17746
- manual_override_allowed: { type: "boolean" },
17747
- name: { default: null, nullable: true, type: "string" }
18028
+ manual_override_allowed: {
18029
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
18030
+ type: "boolean"
18031
+ },
18032
+ name: {
18033
+ default: null,
18034
+ description: "User-friendly name to identify the climate preset.",
18035
+ nullable: true,
18036
+ type: "string"
18037
+ }
17748
18038
  },
17749
18039
  required: [
17750
18040
  "device_id",
@@ -17781,19 +18071,28 @@ var openapi_default = {
17781
18071
  tags: ["/thermostats"],
17782
18072
  "x-fern-sdk-group-name": ["thermostats"],
17783
18073
  "x-fern-sdk-method-name": "create_climate_preset",
17784
- "x-response-key": null
18074
+ "x-response-key": null,
18075
+ "x-title": "Create a Climate Preset"
17785
18076
  }
17786
18077
  },
17787
18078
  "/thermostats/delete_climate_preset": {
17788
18079
  post: {
18080
+ description: "Deletes a specified [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
17789
18081
  operationId: "thermostatsDeleteClimatePresetPost",
17790
18082
  requestBody: {
17791
18083
  content: {
17792
18084
  "application/json": {
17793
18085
  schema: {
17794
18086
  properties: {
17795
- climate_preset_key: { type: "string" },
17796
- device_id: { format: "uuid", type: "string" }
18087
+ climate_preset_key: {
18088
+ description: "Climate preset key of the desired climate preset.",
18089
+ type: "string"
18090
+ },
18091
+ device_id: {
18092
+ description: "ID of the desired thermostat device.",
18093
+ format: "uuid",
18094
+ type: "string"
18095
+ }
17797
18096
  },
17798
18097
  required: ["device_id", "climate_preset_key"],
17799
18098
  type: "object"
@@ -17826,12 +18125,13 @@ var openapi_default = {
17826
18125
  tags: ["/thermostats"],
17827
18126
  "x-fern-sdk-group-name": ["thermostats"],
17828
18127
  "x-fern-sdk-method-name": "delete_climate_preset",
17829
- "x-response-key": null
18128
+ "x-response-key": null,
18129
+ "x-title": "Delete a Climate Preset"
17830
18130
  }
17831
18131
  },
17832
18132
  "/thermostats/get": {
17833
18133
  post: {
17834
- description: "Returns a specific thermostat.",
18134
+ description: "Returns a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
17835
18135
  operationId: "thermostatsGetPost",
17836
18136
  requestBody: {
17837
18137
  content: {
@@ -17839,12 +18139,12 @@ var openapi_default = {
17839
18139
  schema: {
17840
18140
  properties: {
17841
18141
  device_id: {
17842
- description: "ID of the thermostat device.",
18142
+ description: "ID of the desired thermostat device.",
17843
18143
  format: "uuid",
17844
18144
  type: "string"
17845
18145
  },
17846
18146
  name: {
17847
- description: "Name of the thermostat.",
18147
+ description: "User-friendly name of the desired thermostat device.",
17848
18148
  type: "string"
17849
18149
  }
17850
18150
  },
@@ -17885,12 +18185,13 @@ var openapi_default = {
17885
18185
  "x-fern-sdk-method-name": "get",
17886
18186
  "x-fern-sdk-return-value": "thermostat",
17887
18187
  "x-response-key": "thermostat",
17888
- "x-title": "Get a Thermostat"
18188
+ "x-title": "Get a Thermostat",
18189
+ "x-undocumented": "Will be removed."
17889
18190
  }
17890
18191
  },
17891
18192
  "/thermostats/heat": {
17892
18193
  post: {
17893
- description: "Sets a thermostat to heating mode. You must include a heating set point in Celsius or Fahrenheit. See also [Setting the Current HVAC and Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).",
18194
+ description: "Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).",
17894
18195
  operationId: "thermostatsHeatPost",
17895
18196
  requestBody: {
17896
18197
  content: {
@@ -17898,21 +18199,25 @@ var openapi_default = {
17898
18199
  schema: {
17899
18200
  properties: {
17900
18201
  device_id: {
17901
- description: "ID of the thermostat device.",
18202
+ description: "ID of the desired thermostat device.",
17902
18203
  format: "uuid",
17903
18204
  type: "string"
17904
18205
  },
17905
18206
  heating_set_point_celsius: {
17906
- description: "Temperature to which the HVAC system connected to the thermostat should heat (in \xB0C). You must set one of the `heating_set_point` parameters.",
18207
+ description: "Desired [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0C. You must set one of the `heating_set_point` parameters.",
17907
18208
  format: "float",
17908
18209
  type: "number"
17909
18210
  },
17910
18211
  heating_set_point_fahrenheit: {
17911
- description: "Temperature to which the HVAC system connected to the thermostat should heat (in \xB0F). You must set one of the `heating_set_point` parameters.",
18212
+ description: "Desired [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0F. You must set one of the `heating_set_point` parameters.",
17912
18213
  format: "float",
17913
18214
  type: "number"
17914
18215
  },
17915
- sync: { default: false, type: "boolean" }
18216
+ sync: {
18217
+ default: false,
18218
+ type: "boolean",
18219
+ "x-undocumented": "Only used internally."
18220
+ }
17916
18221
  },
17917
18222
  required: ["device_id"],
17918
18223
  type: "object"
@@ -17958,7 +18263,7 @@ var openapi_default = {
17958
18263
  },
17959
18264
  "/thermostats/heat_cool": {
17960
18265
  post: {
17961
- description: 'Set a thermostat to heat-cool mode, also known as "auto" mode. To do so, you must include both cooling and heating set points in the payload, either in Celsius or Fahrenheit. For information about verifying the heating and cooling availability of the thermostat and validating the correct set points, see [HVAC Mode Constraints](https://docs.seam.co/latest/capability-guides/thermostats/hvac-mode#hvac-mode-constraints) and [Set Point Constraints](https://docs.seam.co/latest/capability-guides/thermostats/set-points#set-point-constraints).',
18266
+ description: 'Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to [heat-cool ("auto") mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).',
17962
18267
  operationId: "thermostatsHeatCoolPost",
17963
18268
  requestBody: {
17964
18269
  content: {
@@ -17966,31 +18271,35 @@ var openapi_default = {
17966
18271
  schema: {
17967
18272
  properties: {
17968
18273
  cooling_set_point_celsius: {
17969
- description: "Temperature to which the HVAC system connected to the thermostat should cool (in \xB0C). You must set one of the `cooling_set_point` parameters.",
18274
+ description: "Desired [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0C. You must set one of the `cooling_set_point` parameters.",
17970
18275
  format: "float",
17971
18276
  type: "number"
17972
18277
  },
17973
18278
  cooling_set_point_fahrenheit: {
17974
- description: "Temperature the thermostat should cool to (in \xB0F). You must set one of the cooling_set_point parameters.",
18279
+ description: "Desired [cooling set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0F. You must set one of the `cooling_set_point` parameters.",
17975
18280
  format: "float",
17976
18281
  type: "number"
17977
18282
  },
17978
18283
  device_id: {
17979
- description: "ID of the thermostat device.",
18284
+ description: "ID of the desired thermostat device.",
17980
18285
  format: "uuid",
17981
18286
  type: "string"
17982
18287
  },
17983
18288
  heating_set_point_celsius: {
17984
- description: "Temperature to which the HVAC system connected to the thermostat should heat (in \xB0C). You must set one of the `heating_set_point` parameters.",
18289
+ description: "Desired [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0C. You must set one of the `heating_set_point` parameters.",
17985
18290
  format: "float",
17986
18291
  type: "number"
17987
18292
  },
17988
18293
  heating_set_point_fahrenheit: {
17989
- description: "Temperature the thermostat should heat to (in \xB0F). You must set one of the heating_set_point parameters.",
18294
+ description: "Desired [heating set point](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points) in \xB0F. You must set one of the `heating_set_point` parameters.",
17990
18295
  format: "float",
17991
18296
  type: "number"
17992
18297
  },
17993
- sync: { default: false, type: "boolean" }
18298
+ sync: {
18299
+ default: false,
18300
+ type: "boolean",
18301
+ "x-undocumented": "Only used internally."
18302
+ }
17994
18303
  },
17995
18304
  required: ["device_id"],
17996
18305
  type: "object"
@@ -18036,35 +18345,47 @@ var openapi_default = {
18036
18345
  },
18037
18346
  "/thermostats/list": {
18038
18347
  post: {
18039
- description: "Returns a list of thermostats connected to your workspace. If no thermostats are connected, the list will be empty.",
18348
+ description: "Returns a list of all [thermostats](https://docs.seam.co/latest/capability-guides/thermostats).",
18040
18349
  operationId: "thermostatsListPost",
18041
18350
  requestBody: {
18042
18351
  content: {
18043
18352
  "application/json": {
18044
18353
  schema: {
18045
18354
  properties: {
18046
- connect_webview_id: { format: "uuid", type: "string" },
18355
+ connect_webview_id: {
18356
+ description: "ID of the Connect Webview by which to filter devices.",
18357
+ format: "uuid",
18358
+ type: "string"
18359
+ },
18047
18360
  connected_account_id: {
18048
- description: "List all devices owned by this connected account",
18361
+ description: "ID of the connected account by which to filter.",
18049
18362
  format: "uuid",
18050
18363
  type: "string"
18051
18364
  },
18052
18365
  connected_account_ids: {
18366
+ description: "Array of IDs of the connected accounts by which to filter devices.",
18053
18367
  items: { format: "uuid", type: "string" },
18054
18368
  type: "array"
18055
18369
  },
18056
- created_before: { format: "date-time", type: "string" },
18370
+ created_before: {
18371
+ description: "Date threshold for devices to return. If specified, returns only devices created before the specified date.",
18372
+ format: "date-time",
18373
+ type: "string"
18374
+ },
18057
18375
  custom_metadata_has: {
18058
18376
  additionalProperties: {
18059
18377
  oneOf: [{ type: "string" }, { type: "boolean" }]
18060
18378
  },
18379
+ description: "Set of key:value [custom metadata](https://docs.seam.co/latest/core-concepts/devices/adding-custom-metadata-to-a-device) pairs by which you want to filter devices.",
18061
18380
  type: "object"
18062
18381
  },
18063
18382
  device_ids: {
18383
+ description: "Array of device IDs by which to filter devices.",
18064
18384
  items: { format: "uuid", type: "string" },
18065
18385
  type: "array"
18066
18386
  },
18067
18387
  device_type: {
18388
+ description: "Device type by which to filter devices.",
18068
18389
  oneOf: [
18069
18390
  {
18070
18391
  enum: [
@@ -18121,6 +18442,7 @@ var openapi_default = {
18121
18442
  ]
18122
18443
  },
18123
18444
  device_types: {
18445
+ description: "Array of device types by which to filter devices.",
18124
18446
  items: {
18125
18447
  oneOf: [
18126
18448
  {
@@ -18199,7 +18521,8 @@ var openapi_default = {
18199
18521
  ],
18200
18522
  type: "string"
18201
18523
  },
18202
- type: "array"
18524
+ type: "array",
18525
+ "x-undocumented": "Only used internally."
18203
18526
  },
18204
18527
  include_if: {
18205
18528
  items: {
@@ -18218,10 +18541,17 @@ var openapi_default = {
18218
18541
  ],
18219
18542
  type: "string"
18220
18543
  },
18221
- type: "array"
18544
+ type: "array",
18545
+ "x-undocumented": "Only used internally."
18546
+ },
18547
+ limit: {
18548
+ default: 500,
18549
+ description: "Numerical limit on the number of devices to return.",
18550
+ format: "float",
18551
+ type: "number"
18222
18552
  },
18223
- limit: { default: 500, format: "float", type: "number" },
18224
18553
  manufacturer: {
18554
+ description: "Manufacturer by which to filter devices.",
18225
18555
  enum: [
18226
18556
  "akuvox",
18227
18557
  "august",
@@ -18261,7 +18591,10 @@ var openapi_default = {
18261
18591
  ],
18262
18592
  type: "string"
18263
18593
  },
18264
- user_identifier_key: { type: "string" }
18594
+ user_identifier_key: {
18595
+ description: "Your own internal user ID for the user by which to filter devices.",
18596
+ type: "string"
18597
+ }
18265
18598
  },
18266
18599
  type: "object"
18267
18600
  }
@@ -18311,7 +18644,7 @@ var openapi_default = {
18311
18644
  },
18312
18645
  "/thermostats/off": {
18313
18646
  post: {
18314
- description: 'Sets a thermostat to "off" mode. See also [Setting the Current HVAC and Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).',
18647
+ description: 'Sets a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats) to ["off" mode](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings).',
18315
18648
  operationId: "thermostatsOffPost",
18316
18649
  requestBody: {
18317
18650
  content: {
@@ -18319,11 +18652,15 @@ var openapi_default = {
18319
18652
  schema: {
18320
18653
  properties: {
18321
18654
  device_id: {
18322
- description: "ID of the thermostat device.",
18655
+ description: "ID of the desired thermostat device.",
18323
18656
  format: "uuid",
18324
18657
  type: "string"
18325
18658
  },
18326
- sync: { default: false, type: "boolean" }
18659
+ sync: {
18660
+ default: false,
18661
+ type: "boolean",
18662
+ "x-undocumented": "Only used internally."
18663
+ }
18327
18664
  },
18328
18665
  required: ["device_id"],
18329
18666
  type: "object"
@@ -18369,22 +18706,39 @@ var openapi_default = {
18369
18706
  },
18370
18707
  "/thermostats/schedules/create": {
18371
18708
  post: {
18709
+ description: "Creates a [climate schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
18372
18710
  operationId: "thermostatsSchedulesCreatePost",
18373
18711
  requestBody: {
18374
18712
  content: {
18375
18713
  "application/json": {
18376
18714
  schema: {
18377
18715
  properties: {
18378
- climate_preset_key: { type: "string" },
18379
- device_id: { type: "string" },
18380
- ends_at: { type: "string" },
18716
+ climate_preset_key: {
18717
+ description: "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule.",
18718
+ type: "string"
18719
+ },
18720
+ device_id: {
18721
+ description: "ID of the desired thermostat device.",
18722
+ type: "string"
18723
+ },
18724
+ ends_at: {
18725
+ description: "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
18726
+ type: "string"
18727
+ },
18381
18728
  max_override_period_minutes: {
18382
18729
  default: 0,
18730
+ description: "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions).",
18383
18731
  minimum: 0,
18384
18732
  type: "integer"
18385
18733
  },
18386
- name: { type: "string" },
18387
- starts_at: { type: "string" }
18734
+ name: {
18735
+ description: "User-friendly name to identify the climate schedule.",
18736
+ type: "string"
18737
+ },
18738
+ starts_at: {
18739
+ description: "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
18740
+ type: "string"
18741
+ }
18388
18742
  },
18389
18743
  required: [
18390
18744
  "device_id",
@@ -18429,18 +18783,24 @@ var openapi_default = {
18429
18783
  "x-fern-sdk-group-name": ["thermostats", "schedules"],
18430
18784
  "x-fern-sdk-method-name": "create",
18431
18785
  "x-fern-sdk-return-value": "thermostat_schedule",
18432
- "x-response-key": "thermostat_schedule"
18786
+ "x-response-key": "thermostat_schedule",
18787
+ "x-title": "Create a Climate Schedule"
18433
18788
  }
18434
18789
  },
18435
18790
  "/thermostats/schedules/delete": {
18436
18791
  post: {
18792
+ description: "Deletes a [climate schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
18437
18793
  operationId: "thermostatsSchedulesDeletePost",
18438
18794
  requestBody: {
18439
18795
  content: {
18440
18796
  "application/json": {
18441
18797
  schema: {
18442
18798
  properties: {
18443
- thermostat_schedule_id: { format: "uuid", type: "string" }
18799
+ thermostat_schedule_id: {
18800
+ description: "ID of the desired climate schedule.",
18801
+ format: "uuid",
18802
+ type: "string"
18803
+ }
18444
18804
  },
18445
18805
  required: ["thermostat_schedule_id"],
18446
18806
  type: "object"
@@ -18474,18 +18834,24 @@ var openapi_default = {
18474
18834
  tags: ["/thermostats"],
18475
18835
  "x-fern-sdk-group-name": ["thermostats", "schedules"],
18476
18836
  "x-fern-sdk-method-name": "delete",
18477
- "x-response-key": null
18837
+ "x-response-key": null,
18838
+ "x-title": "Delete a Climate Schedule"
18478
18839
  }
18479
18840
  },
18480
18841
  "/thermostats/schedules/get": {
18481
18842
  post: {
18843
+ description: "Returns a specified [climate schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules).",
18482
18844
  operationId: "thermostatsSchedulesGetPost",
18483
18845
  requestBody: {
18484
18846
  content: {
18485
18847
  "application/json": {
18486
18848
  schema: {
18487
18849
  properties: {
18488
- thermostat_schedule_id: { format: "uuid", type: "string" }
18850
+ thermostat_schedule_id: {
18851
+ description: "ID of the desired climate schedule.",
18852
+ format: "uuid",
18853
+ type: "string"
18854
+ }
18489
18855
  },
18490
18856
  required: ["thermostat_schedule_id"],
18491
18857
  type: "object"
@@ -18525,19 +18891,28 @@ var openapi_default = {
18525
18891
  "x-fern-sdk-group-name": ["thermostats", "schedules"],
18526
18892
  "x-fern-sdk-method-name": "get",
18527
18893
  "x-fern-sdk-return-value": "thermostat_schedule",
18528
- "x-response-key": "thermostat_schedule"
18894
+ "x-response-key": "thermostat_schedule",
18895
+ "x-title": "Get a Climate Schedule"
18529
18896
  }
18530
18897
  },
18531
18898
  "/thermostats/schedules/list": {
18532
18899
  post: {
18900
+ description: "Returns a list of all [climate schedules](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
18533
18901
  operationId: "thermostatsSchedulesListPost",
18534
18902
  requestBody: {
18535
18903
  content: {
18536
18904
  "application/json": {
18537
18905
  schema: {
18538
18906
  properties: {
18539
- device_id: { format: "uuid", type: "string" },
18540
- user_identifier_key: { type: "string" }
18907
+ device_id: {
18908
+ description: "ID of the desired thermostat device.",
18909
+ format: "uuid",
18910
+ type: "string"
18911
+ },
18912
+ user_identifier_key: {
18913
+ description: "User identifier key by which to filter the list of returned climate schedules.",
18914
+ type: "string"
18915
+ }
18541
18916
  },
18542
18917
  required: ["device_id"],
18543
18918
  type: "object"
@@ -18580,23 +18955,45 @@ var openapi_default = {
18580
18955
  "x-fern-sdk-group-name": ["thermostats", "schedules"],
18581
18956
  "x-fern-sdk-method-name": "list",
18582
18957
  "x-fern-sdk-return-value": "thermostat_schedules",
18583
- "x-response-key": "thermostat_schedules"
18958
+ "x-response-key": "thermostat_schedules",
18959
+ "x-title": "List Climate Schedules"
18584
18960
  }
18585
18961
  },
18586
18962
  "/thermostats/schedules/update": {
18587
18963
  patch: {
18964
+ description: "Updates a specified [climate schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules).",
18588
18965
  operationId: "thermostatsSchedulesUpdatePatch",
18589
18966
  requestBody: {
18590
18967
  content: {
18591
18968
  "application/json": {
18592
18969
  schema: {
18593
18970
  properties: {
18594
- climate_preset_key: { type: "string" },
18595
- ends_at: { type: "string" },
18596
- max_override_period_minutes: { minimum: 0, type: "integer" },
18597
- name: { type: "string" },
18598
- starts_at: { type: "string" },
18599
- thermostat_schedule_id: { format: "uuid", type: "string" }
18971
+ climate_preset_key: {
18972
+ description: "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule.",
18973
+ type: "string"
18974
+ },
18975
+ ends_at: {
18976
+ description: "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
18977
+ type: "string"
18978
+ },
18979
+ max_override_period_minutes: {
18980
+ description: "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions).",
18981
+ minimum: 0,
18982
+ type: "integer"
18983
+ },
18984
+ name: {
18985
+ description: "User-friendly name to identify the climate schedule.",
18986
+ type: "string"
18987
+ },
18988
+ starts_at: {
18989
+ description: "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
18990
+ type: "string"
18991
+ },
18992
+ thermostat_schedule_id: {
18993
+ description: "ID of the desired climate schedule.",
18994
+ format: "uuid",
18995
+ type: "string"
18996
+ }
18600
18997
  },
18601
18998
  required: ["thermostat_schedule_id"],
18602
18999
  type: "object"
@@ -18629,21 +19026,43 @@ var openapi_default = {
18629
19026
  summary: "/thermostats/schedules/update",
18630
19027
  tags: ["/thermostats"],
18631
19028
  "x-fern-ignore": true,
18632
- "x-response-key": null
19029
+ "x-response-key": null,
19030
+ "x-title": "Update a Climate Schedule"
18633
19031
  },
18634
19032
  post: {
19033
+ description: "Updates a specified [climate schedule](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules).",
18635
19034
  operationId: "thermostatsSchedulesUpdatePost",
18636
19035
  requestBody: {
18637
19036
  content: {
18638
19037
  "application/json": {
18639
19038
  schema: {
18640
19039
  properties: {
18641
- climate_preset_key: { type: "string" },
18642
- ends_at: { type: "string" },
18643
- max_override_period_minutes: { minimum: 0, type: "integer" },
18644
- name: { type: "string" },
18645
- starts_at: { type: "string" },
18646
- thermostat_schedule_id: { format: "uuid", type: "string" }
19040
+ climate_preset_key: {
19041
+ description: "Key of the [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) to use for the climate schedule.",
19042
+ type: "string"
19043
+ },
19044
+ ends_at: {
19045
+ description: "Date and time at which the climate schedule ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
19046
+ type: "string"
19047
+ },
19048
+ max_override_period_minutes: {
19049
+ description: "Number of minutes for which a person at the thermostat can change the thermostat's settings after the activation of the scheduled climate preset. See also [Specifying Manual Override Permissions](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-schedules#specifying-manual-override-permissions).",
19050
+ minimum: 0,
19051
+ type: "integer"
19052
+ },
19053
+ name: {
19054
+ description: "User-friendly name to identify the climate schedule.",
19055
+ type: "string"
19056
+ },
19057
+ starts_at: {
19058
+ description: "Date and time at which the climate schedule starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.",
19059
+ type: "string"
19060
+ },
19061
+ thermostat_schedule_id: {
19062
+ description: "ID of the desired climate schedule.",
19063
+ format: "uuid",
19064
+ type: "string"
19065
+ }
18647
19066
  },
18648
19067
  required: ["thermostat_schedule_id"],
18649
19068
  type: "object"
@@ -18677,19 +19096,28 @@ var openapi_default = {
18677
19096
  tags: ["/thermostats"],
18678
19097
  "x-fern-sdk-group-name": ["thermostats", "schedules"],
18679
19098
  "x-fern-sdk-method-name": "update",
18680
- "x-response-key": null
19099
+ "x-response-key": null,
19100
+ "x-title": "Update a Climate Schedule"
18681
19101
  }
18682
19102
  },
18683
19103
  "/thermostats/set_fallback_climate_preset": {
18684
19104
  post: {
19105
+ description: 'Sets a specified [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) as the ["fallback"](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset) preset for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).',
18685
19106
  operationId: "thermostatsSetFallbackClimatePresetPost",
18686
19107
  requestBody: {
18687
19108
  content: {
18688
19109
  "application/json": {
18689
19110
  schema: {
18690
19111
  properties: {
18691
- climate_preset_key: { type: "string" },
18692
- device_id: { format: "uuid", type: "string" }
19112
+ climate_preset_key: {
19113
+ description: "Climate preset key of the desired climate preset.",
19114
+ type: "string"
19115
+ },
19116
+ device_id: {
19117
+ description: "ID of the desired thermostat device.",
19118
+ format: "uuid",
19119
+ type: "string"
19120
+ }
18693
19121
  },
18694
19122
  required: ["device_id", "climate_preset_key"],
18695
19123
  type: "object"
@@ -18722,23 +19150,20 @@ var openapi_default = {
18722
19150
  tags: ["/thermostats"],
18723
19151
  "x-fern-sdk-group-name": ["thermostats"],
18724
19152
  "x-fern-sdk-method-name": "set_fallback_climate_preset",
18725
- "x-response-key": null
19153
+ "x-response-key": null,
19154
+ "x-title": "Set the Fallback Climate Preset"
18726
19155
  }
18727
19156
  },
18728
19157
  "/thermostats/set_fan_mode": {
18729
19158
  post: {
18730
- description: "Sets the fan mode setting for a thermostat. See also [Setting the Current HVAC and Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings) and [Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings).",
19159
+ description: "Sets the [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
18731
19160
  operationId: "thermostatsSetFanModePost",
18732
19161
  requestBody: {
18733
19162
  content: {
18734
19163
  "application/json": {
18735
19164
  schema: {
18736
19165
  properties: {
18737
- device_id: {
18738
- description: "ID of the thermostat device.",
18739
- format: "uuid",
18740
- type: "string"
18741
- },
19166
+ device_id: { format: "uuid", type: "string" },
18742
19167
  fan_mode: {
18743
19168
  deprecated: true,
18744
19169
  enum: ["auto", "on", "circulate"],
@@ -18746,11 +19171,15 @@ var openapi_default = {
18746
19171
  "x-deprecated": "Use `fan_mode_setting` instead."
18747
19172
  },
18748
19173
  fan_mode_setting: {
18749
- description: "Fan mode setting of the thermostat. See also [Fan Mode Settings](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings).",
19174
+ description: "Desired [fan mode setting](https://docs.seam.co/latest/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings) for the thermostat.",
18750
19175
  enum: ["auto", "on", "circulate"],
18751
19176
  type: "string"
18752
19177
  },
18753
- sync: { default: false, type: "boolean" }
19178
+ sync: {
19179
+ default: false,
19180
+ type: "boolean",
19181
+ "x-undocumented": "Only used internally."
19182
+ }
18754
19183
  },
18755
19184
  required: ["device_id"],
18756
19185
  type: "object"
@@ -18791,38 +19220,47 @@ var openapi_default = {
18791
19220
  "x-fern-sdk-method-name": "set_fan_mode",
18792
19221
  "x-fern-sdk-return-value": "action_attempt",
18793
19222
  "x-response-key": "action_attempt",
18794
- "x-title": "Set Fan Mode Setting"
19223
+ "x-title": "Set the Fan Mode Setting"
18795
19224
  }
18796
19225
  },
18797
19226
  "/thermostats/set_temperature_threshold": {
18798
19227
  patch: {
19228
+ description: "Sets a [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range.",
18799
19229
  operationId: "thermostatsSetTemperatureThresholdPatch",
18800
19230
  requestBody: {
18801
19231
  content: {
18802
19232
  "application/json": {
18803
19233
  schema: {
18804
19234
  properties: {
18805
- device_id: { format: "uuid", type: "string" },
19235
+ device_id: {
19236
+ description: "ID of the desired thermostat device.",
19237
+ format: "uuid",
19238
+ type: "string"
19239
+ },
18806
19240
  lower_limit_celsius: {
18807
19241
  default: null,
19242
+ description: "Lower temperature limit in in \xB0C. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both.",
18808
19243
  format: "float",
18809
19244
  nullable: true,
18810
19245
  type: "number"
18811
19246
  },
18812
19247
  lower_limit_fahrenheit: {
18813
19248
  default: null,
19249
+ description: "Lower temperature limit in in \xB0F. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both.",
18814
19250
  format: "float",
18815
19251
  nullable: true,
18816
19252
  type: "number"
18817
19253
  },
18818
19254
  upper_limit_celsius: {
18819
19255
  default: null,
19256
+ description: "Upper temperature limit in in \xB0C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both.",
18820
19257
  format: "float",
18821
19258
  nullable: true,
18822
19259
  type: "number"
18823
19260
  },
18824
19261
  upper_limit_fahrenheit: {
18825
19262
  default: null,
19263
+ description: "Upper temperature limit in in \xB0C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both.",
18826
19264
  format: "float",
18827
19265
  nullable: true,
18828
19266
  type: "number"
@@ -18858,36 +19296,46 @@ var openapi_default = {
18858
19296
  summary: "/thermostats/set_temperature_threshold",
18859
19297
  tags: ["/thermostats"],
18860
19298
  "x-fern-ignore": true,
18861
- "x-response-key": null
19299
+ "x-response-key": null,
19300
+ "x-title": "Set a Temperature Threshold"
18862
19301
  },
18863
19302
  post: {
19303
+ description: "Sets a [temperature threshold](https://docs.seam.co/latest/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds) for a specified thermostat. Seam emits a `thermostat.temperature_threshold_exceeded` event and adds a warning on a thermostat if it reports a temperature outside the threshold range.",
18864
19304
  operationId: "thermostatsSetTemperatureThresholdPost",
18865
19305
  requestBody: {
18866
19306
  content: {
18867
19307
  "application/json": {
18868
19308
  schema: {
18869
19309
  properties: {
18870
- device_id: { format: "uuid", type: "string" },
19310
+ device_id: {
19311
+ description: "ID of the desired thermostat device.",
19312
+ format: "uuid",
19313
+ type: "string"
19314
+ },
18871
19315
  lower_limit_celsius: {
18872
19316
  default: null,
19317
+ description: "Lower temperature limit in in \xB0C. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both.",
18873
19318
  format: "float",
18874
19319
  nullable: true,
18875
19320
  type: "number"
18876
19321
  },
18877
19322
  lower_limit_fahrenheit: {
18878
19323
  default: null,
19324
+ description: "Lower temperature limit in in \xB0F. Seam alerts you if the reported temperature is lower than this value. You can specify either `lower_limit` but not both.",
18879
19325
  format: "float",
18880
19326
  nullable: true,
18881
19327
  type: "number"
18882
19328
  },
18883
19329
  upper_limit_celsius: {
18884
19330
  default: null,
19331
+ description: "Upper temperature limit in in \xB0C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both.",
18885
19332
  format: "float",
18886
19333
  nullable: true,
18887
19334
  type: "number"
18888
19335
  },
18889
19336
  upper_limit_fahrenheit: {
18890
19337
  default: null,
19338
+ description: "Upper temperature limit in in \xB0C. Seam alerts you if the reported temperature is higher than this value. You can specify either `upper_limit` but not both.",
18891
19339
  format: "float",
18892
19340
  nullable: true,
18893
19341
  type: "number"
@@ -18924,45 +19372,68 @@ var openapi_default = {
18924
19372
  tags: ["/thermostats"],
18925
19373
  "x-fern-sdk-group-name": ["thermostats"],
18926
19374
  "x-fern-sdk-method-name": "set_temperature_threshold",
18927
- "x-response-key": null
19375
+ "x-response-key": null,
19376
+ "x-title": "Set a Temperature Threshold"
18928
19377
  }
18929
19378
  },
18930
19379
  "/thermostats/update_climate_preset": {
18931
19380
  patch: {
19381
+ description: "Updates a specified [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
18932
19382
  operationId: "thermostatsUpdateClimatePresetPatch",
18933
19383
  requestBody: {
18934
19384
  content: {
18935
19385
  "application/json": {
18936
19386
  schema: {
18937
19387
  properties: {
18938
- climate_preset_key: { type: "string" },
19388
+ climate_preset_key: {
19389
+ description: "Unique key to identify the climate preset.",
19390
+ type: "string"
19391
+ },
18939
19392
  cooling_set_point_celsius: {
19393
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
18940
19394
  format: "float",
18941
19395
  type: "number"
18942
19396
  },
18943
19397
  cooling_set_point_fahrenheit: {
19398
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
18944
19399
  format: "float",
18945
19400
  type: "number"
18946
19401
  },
18947
- device_id: { format: "uuid", type: "string" },
19402
+ device_id: {
19403
+ description: "ID of the desired thermostat device.",
19404
+ format: "uuid",
19405
+ type: "string"
19406
+ },
18948
19407
  fan_mode_setting: {
19408
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
18949
19409
  enum: ["auto", "on", "circulate"],
18950
19410
  type: "string"
18951
19411
  },
18952
19412
  heating_set_point_celsius: {
19413
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
18953
19414
  format: "float",
18954
19415
  type: "number"
18955
19416
  },
18956
19417
  heating_set_point_fahrenheit: {
19418
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
18957
19419
  format: "float",
18958
19420
  type: "number"
18959
19421
  },
18960
19422
  hvac_mode_setting: {
19423
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
18961
19424
  enum: ["off", "heat", "cool", "heat_cool"],
18962
19425
  type: "string"
18963
19426
  },
18964
- manual_override_allowed: { type: "boolean" },
18965
- name: { default: null, nullable: true, type: "string" }
19427
+ manual_override_allowed: {
19428
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
19429
+ type: "boolean"
19430
+ },
19431
+ name: {
19432
+ default: null,
19433
+ description: "User-friendly name to identify the climate preset.",
19434
+ nullable: true,
19435
+ type: "string"
19436
+ }
18966
19437
  },
18967
19438
  required: [
18968
19439
  "device_id",
@@ -18998,43 +19469,66 @@ var openapi_default = {
18998
19469
  summary: "/thermostats/update_climate_preset",
18999
19470
  tags: ["/thermostats"],
19000
19471
  "x-fern-ignore": true,
19001
- "x-response-key": null
19472
+ "x-response-key": null,
19473
+ "x-title": "Update a Climate Preset"
19002
19474
  },
19003
19475
  post: {
19476
+ description: "Updates a specified [climate preset](https://docs.seam.co/latest/capability-guides/thermostats/creating-and-managing-climate-presets) for a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats).",
19004
19477
  operationId: "thermostatsUpdateClimatePresetPost",
19005
19478
  requestBody: {
19006
19479
  content: {
19007
19480
  "application/json": {
19008
19481
  schema: {
19009
19482
  properties: {
19010
- climate_preset_key: { type: "string" },
19483
+ climate_preset_key: {
19484
+ description: "Unique key to identify the climate preset.",
19485
+ type: "string"
19486
+ },
19011
19487
  cooling_set_point_celsius: {
19488
+ description: "Temperature to which the thermostat should cool (in \xB0C). See also [Set Points](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/set-points).",
19012
19489
  format: "float",
19013
19490
  type: "number"
19014
19491
  },
19015
19492
  cooling_set_point_fahrenheit: {
19493
+ description: "Temperature to which the thermostat should cool (in \xB0F).",
19016
19494
  format: "float",
19017
19495
  type: "number"
19018
19496
  },
19019
- device_id: { format: "uuid", type: "string" },
19497
+ device_id: {
19498
+ description: "ID of the desired thermostat device.",
19499
+ format: "uuid",
19500
+ type: "string"
19501
+ },
19020
19502
  fan_mode_setting: {
19503
+ description: "Desired fan mode setting, such as `on`, `auto`, or `circulate`.",
19021
19504
  enum: ["auto", "on", "circulate"],
19022
19505
  type: "string"
19023
19506
  },
19024
19507
  heating_set_point_celsius: {
19508
+ description: "Temperature to which the thermostat should heat (in \xB0C).",
19025
19509
  format: "float",
19026
19510
  type: "number"
19027
19511
  },
19028
19512
  heating_set_point_fahrenheit: {
19513
+ description: "Temperature to which the thermostat should heat (in \xB0F).",
19029
19514
  format: "float",
19030
19515
  type: "number"
19031
19516
  },
19032
19517
  hvac_mode_setting: {
19518
+ description: "Desired [HVAC mode](https://docs.seam.co/latest/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode) setting, such as `heat`, `cool`, `heat_cool`, or `off`.",
19033
19519
  enum: ["off", "heat", "cool", "heat_cool"],
19034
19520
  type: "string"
19035
19521
  },
19036
- manual_override_allowed: { type: "boolean" },
19037
- name: { default: null, nullable: true, type: "string" }
19522
+ manual_override_allowed: {
19523
+ description: "Indicates whether a person at the thermostat can change the thermostat's settings.",
19524
+ type: "boolean"
19525
+ },
19526
+ name: {
19527
+ default: null,
19528
+ description: "User-friendly name to identify the climate preset.",
19529
+ nullable: true,
19530
+ type: "string"
19531
+ }
19038
19532
  },
19039
19533
  required: [
19040
19534
  "device_id",
@@ -19071,7 +19565,8 @@ var openapi_default = {
19071
19565
  tags: ["/thermostats"],
19072
19566
  "x-fern-sdk-group-name": ["thermostats"],
19073
19567
  "x-fern-sdk-method-name": "update_climate_preset",
19074
- "x-response-key": null
19568
+ "x-response-key": null,
19569
+ "x-title": "Update a Climate Preset"
19075
19570
  }
19076
19571
  },
19077
19572
  "/user_identities/add_acs_user": {