diff --git a/package-lock.json b/package-lock.json
index 301ea79..c68d944 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,7 +12,7 @@
"@seamapi/blueprint": "^1.12.0",
"@seamapi/fake-seam-connect": "2.0.6",
"@seamapi/smith": "^1.1.1",
- "@seamapi/types": "1.1181.0",
+ "@seamapi/types": "1.1184.0",
"change-case": "^5.4.4",
"del": "^8.0.0",
"execa": "^10.0.1",
@@ -855,9 +855,9 @@
}
},
"node_modules/@seamapi/types": {
- "version": "1.1181.0",
- "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1181.0.tgz",
- "integrity": "sha512-Ba2I7kLW5RxN3CnCacEF+1nvLDwpS61vGSkPeB4IqeL4Ccy4NtTRQMlyCDQNNhT9y3A6WAQrz87u2XhSYu1XUw==",
+ "version": "1.1184.0",
+ "resolved": "https://registry.npmjs.org/@seamapi/types/-/types-1.1184.0.tgz",
+ "integrity": "sha512-ix8FvLvIfiUD2XTFkC9DoffM6wriNKU5Yeqb4ublIsedSUzcRbizKzz9jj+e++ypRuTucfkp769sfzKWjsOf3A==",
"dev": true,
"license": "MIT",
"engines": {
diff --git a/package.json b/package.json
index c2d3586..34f645d 100644
--- a/package.json
+++ b/package.json
@@ -35,7 +35,7 @@
"@seamapi/blueprint": "^1.12.0",
"@seamapi/fake-seam-connect": "2.0.6",
"@seamapi/smith": "^1.1.1",
- "@seamapi/types": "1.1181.0",
+ "@seamapi/types": "1.1184.0",
"change-case": "^5.4.4",
"del": "^8.0.0",
"execa": "^10.0.1",
diff --git a/src/Seam/Models/Event.cs b/src/Seam/Models/Event.cs
index 65e851c..985e609 100644
--- a/src/Seam/Models/Event.cs
+++ b/src/Seam/Models/Event.cs
@@ -211,6 +211,9 @@ namespace Seam.Models
[SeamUnionVariant("lock.locked", typeof(EventLockLocked))]
[SeamUnionVariant("lock.unlocked", typeof(EventLockUnlocked))]
[SeamUnionVariant("lock.access_denied", typeof(EventLockAccessDenied))]
+ [SeamUnionVariant("lock.jammed", typeof(EventLockJammed))]
+ [SeamUnionVariant("lock.door_opened", typeof(EventLockDoorOpened))]
+ [SeamUnionVariant("lock.door_closed", typeof(EventLockDoorClosed))]
[SeamUnionVariant(
"thermostat.climate_preset_activated",
typeof(EventThermostatClimatePresetActivated)
@@ -5646,6 +5649,123 @@ public enum ReasonCodeEnum
public EventLockAccessDeniedReason.ReasonCodeEnum ReasonCode { get; init; } = default!;
}
+ ///
+ /// The [lock](https://www.seam.co/docs/low-level-apis/smart-locks) reported that its bolt is jammed.
+ ///
+ public sealed record EventLockJammed : Event
+ {
+ [JsonPropertyName("event_type")]
+ public override string EventType { get; } = "lock.jammed";
+
+ ///
+ /// Custom metadata of the connected account, present when connected_account_id is provided.
+ ///
+ [JsonPropertyName("connected_account_custom_metadata")]
+ public object? ConnectedAccountCustomMetadata { get; init; }
+
+ ///
+ /// ID of the connected account associated with the event.
+ ///
+ [JsonPropertyName("connected_account_id")]
+ public string ConnectedAccountId { get; init; } = default!;
+
+ ///
+ /// The customer key associated with the device, if any.
+ ///
+ [JsonPropertyName("customer_key")]
+ public string? CustomerKey { get; init; }
+
+ ///
+ /// Custom metadata of the device, present when device_id is provided.
+ ///
+ [JsonPropertyName("device_custom_metadata")]
+ public object? DeviceCustomMetadata { get; init; }
+
+ ///
+ /// ID of the affected device.
+ ///
+ [JsonPropertyName("device_id")]
+ public string DeviceId { get; init; } = default!;
+ }
+
+ ///
+ /// The door sensor of the [lock](https://www.seam.co/docs/low-level-apis/smart-locks) reported that the door was opened.
+ ///
+ public sealed record EventLockDoorOpened : Event
+ {
+ [JsonPropertyName("event_type")]
+ public override string EventType { get; } = "lock.door_opened";
+
+ ///
+ /// Custom metadata of the connected account, present when connected_account_id is provided.
+ ///
+ [JsonPropertyName("connected_account_custom_metadata")]
+ public object? ConnectedAccountCustomMetadata { get; init; }
+
+ ///
+ /// ID of the connected account associated with the event.
+ ///
+ [JsonPropertyName("connected_account_id")]
+ public string ConnectedAccountId { get; init; } = default!;
+
+ ///
+ /// The customer key associated with the device, if any.
+ ///
+ [JsonPropertyName("customer_key")]
+ public string? CustomerKey { get; init; }
+
+ ///
+ /// Custom metadata of the device, present when device_id is provided.
+ ///
+ [JsonPropertyName("device_custom_metadata")]
+ public object? DeviceCustomMetadata { get; init; }
+
+ ///
+ /// ID of the affected device.
+ ///
+ [JsonPropertyName("device_id")]
+ public string DeviceId { get; init; } = default!;
+ }
+
+ ///
+ /// The door sensor of the [lock](https://www.seam.co/docs/low-level-apis/smart-locks) reported that the door was closed.
+ ///
+ public sealed record EventLockDoorClosed : Event
+ {
+ [JsonPropertyName("event_type")]
+ public override string EventType { get; } = "lock.door_closed";
+
+ ///
+ /// Custom metadata of the connected account, present when connected_account_id is provided.
+ ///
+ [JsonPropertyName("connected_account_custom_metadata")]
+ public object? ConnectedAccountCustomMetadata { get; init; }
+
+ ///
+ /// ID of the connected account associated with the event.
+ ///
+ [JsonPropertyName("connected_account_id")]
+ public string ConnectedAccountId { get; init; } = default!;
+
+ ///
+ /// The customer key associated with the device, if any.
+ ///
+ [JsonPropertyName("customer_key")]
+ public string? CustomerKey { get; init; }
+
+ ///
+ /// Custom metadata of the device, present when device_id is provided.
+ ///
+ [JsonPropertyName("device_custom_metadata")]
+ public object? DeviceCustomMetadata { get; init; }
+
+ ///
+ /// ID of the affected device.
+ ///
+ [JsonPropertyName("device_id")]
+ public string DeviceId { get; init; } = default!;
+ }
+
///
/// A thermostat [climate preset](https://www.seam.co/docs/capability-guides/thermostats/creating-and-managing-climate-presets) was activated.
///
diff --git a/src/Seam/Routes/Events.cs b/src/Seam/Routes/Events.cs
index dbbe0c6..3faef6f 100644
--- a/src/Seam/Routes/Events.cs
+++ b/src/Seam/Routes/Events.cs
@@ -398,47 +398,56 @@ public enum EventTypeEnum
[EnumMember(Value = "lock.access_denied")]
LockAccessDenied = 100,
+ [EnumMember(Value = "lock.jammed")]
+ LockJammed = 101,
+
+ [EnumMember(Value = "lock.door_opened")]
+ LockDoorOpened = 102,
+
+ [EnumMember(Value = "lock.door_closed")]
+ LockDoorClosed = 103,
+
[EnumMember(Value = "thermostat.climate_preset_activated")]
- ThermostatClimatePresetActivated = 101,
+ ThermostatClimatePresetActivated = 104,
[EnumMember(Value = "thermostat.manually_adjusted")]
- ThermostatManuallyAdjusted = 102,
+ ThermostatManuallyAdjusted = 105,
[EnumMember(Value = "thermostat.temperature_threshold_exceeded")]
- ThermostatTemperatureThresholdExceeded = 103,
+ ThermostatTemperatureThresholdExceeded = 106,
[EnumMember(Value = "thermostat.temperature_threshold_no_longer_exceeded")]
- ThermostatTemperatureThresholdNoLongerExceeded = 104,
+ ThermostatTemperatureThresholdNoLongerExceeded = 107,
[EnumMember(Value = "thermostat.temperature_reached_set_point")]
- ThermostatTemperatureReachedSetPoint = 105,
+ ThermostatTemperatureReachedSetPoint = 108,
[EnumMember(Value = "thermostat.temperature_changed")]
- ThermostatTemperatureChanged = 106,
+ ThermostatTemperatureChanged = 109,
[EnumMember(Value = "device.name_changed")]
- DeviceNameChanged = 107,
+ DeviceNameChanged = 110,
[EnumMember(Value = "camera.activated")]
- CameraActivated = 108,
+ CameraActivated = 111,
[EnumMember(Value = "device.doorbell_rang")]
- DeviceDoorbellRang = 109,
+ DeviceDoorbellRang = 112,
[EnumMember(Value = "enrollment_automation.deleted")]
- EnrollmentAutomationDeleted = 110,
+ EnrollmentAutomationDeleted = 113,
[EnumMember(Value = "phone.deactivated")]
- PhoneDeactivated = 111,
+ PhoneDeactivated = 114,
[EnumMember(Value = "space.device_membership_changed")]
- SpaceDeviceMembershipChanged = 112,
+ SpaceDeviceMembershipChanged = 115,
[EnumMember(Value = "space.created")]
- SpaceCreated = 113,
+ SpaceCreated = 116,
[EnumMember(Value = "space.deleted")]
- SpaceDeleted = 114,
+ SpaceDeleted = 117,
}
///
@@ -750,47 +759,56 @@ public enum EventTypesEnum
[EnumMember(Value = "lock.access_denied")]
LockAccessDenied = 100,
+ [EnumMember(Value = "lock.jammed")]
+ LockJammed = 101,
+
+ [EnumMember(Value = "lock.door_opened")]
+ LockDoorOpened = 102,
+
+ [EnumMember(Value = "lock.door_closed")]
+ LockDoorClosed = 103,
+
[EnumMember(Value = "thermostat.climate_preset_activated")]
- ThermostatClimatePresetActivated = 101,
+ ThermostatClimatePresetActivated = 104,
[EnumMember(Value = "thermostat.manually_adjusted")]
- ThermostatManuallyAdjusted = 102,
+ ThermostatManuallyAdjusted = 105,
[EnumMember(Value = "thermostat.temperature_threshold_exceeded")]
- ThermostatTemperatureThresholdExceeded = 103,
+ ThermostatTemperatureThresholdExceeded = 106,
[EnumMember(Value = "thermostat.temperature_threshold_no_longer_exceeded")]
- ThermostatTemperatureThresholdNoLongerExceeded = 104,
+ ThermostatTemperatureThresholdNoLongerExceeded = 107,
[EnumMember(Value = "thermostat.temperature_reached_set_point")]
- ThermostatTemperatureReachedSetPoint = 105,
+ ThermostatTemperatureReachedSetPoint = 108,
[EnumMember(Value = "thermostat.temperature_changed")]
- ThermostatTemperatureChanged = 106,
+ ThermostatTemperatureChanged = 109,
[EnumMember(Value = "device.name_changed")]
- DeviceNameChanged = 107,
+ DeviceNameChanged = 110,
[EnumMember(Value = "camera.activated")]
- CameraActivated = 108,
+ CameraActivated = 111,
[EnumMember(Value = "device.doorbell_rang")]
- DeviceDoorbellRang = 109,
+ DeviceDoorbellRang = 112,
[EnumMember(Value = "enrollment_automation.deleted")]
- EnrollmentAutomationDeleted = 110,
+ EnrollmentAutomationDeleted = 113,
[EnumMember(Value = "phone.deactivated")]
- PhoneDeactivated = 111,
+ PhoneDeactivated = 114,
[EnumMember(Value = "space.device_membership_changed")]
- SpaceDeviceMembershipChanged = 112,
+ SpaceDeviceMembershipChanged = 115,
[EnumMember(Value = "space.created")]
- SpaceCreated = 113,
+ SpaceCreated = 116,
[EnumMember(Value = "space.deleted")]
- SpaceDeleted = 114,
+ SpaceDeleted = 117,
}
///