seam 2.142.0 → 2.145.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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/README.md +11 -7
  4. data/lib/seam/base_resource.rb +24 -3
  5. data/lib/seam/resources/access_code.rb +682 -43
  6. data/lib/seam/resources/access_grant.rb +189 -25
  7. data/lib/seam/resources/access_method.rb +105 -3
  8. data/lib/seam/resources/acs_access_group.rb +52 -0
  9. data/lib/seam/resources/acs_credential.rb +153 -6
  10. data/lib/seam/resources/acs_encoder.rb +2 -0
  11. data/lib/seam/resources/acs_entrance.rb +105 -0
  12. data/lib/seam/resources/acs_system.rb +278 -6
  13. data/lib/seam/resources/acs_user.rb +201 -0
  14. data/lib/seam/resources/action_attempt.rb +1457 -279
  15. data/lib/seam/resources/connect_webview.rb +15 -1
  16. data/lib/seam/resources/connected_account.rb +285 -41
  17. data/lib/seam/resources/device.rb +929 -14
  18. data/lib/seam/resources/device_provider.rb +74 -0
  19. data/lib/seam/resources/event.rb +5205 -316
  20. data/lib/seam/resources/phone.rb +4 -1
  21. data/lib/seam/resources/unmanaged_access_code.rb +677 -43
  22. data/lib/seam/resources/unmanaged_access_grant.rb +189 -25
  23. data/lib/seam/resources/unmanaged_access_method.rb +105 -3
  24. data/lib/seam/resources/unmanaged_device.rb +827 -14
  25. data/lib/seam/resources/unmanaged_user_identity.rb +67 -0
  26. data/lib/seam/resources/user_identity.rb +67 -0
  27. data/lib/seam/resources/workspace.rb +3 -0
  28. data/lib/seam/routes/access_codes.rb +1 -1
  29. data/lib/seam/routes/access_grants.rb +2 -2
  30. data/lib/seam/routes/access_methods.rb +1 -1
  31. data/lib/seam/routes/acs_encoders.rb +1 -1
  32. data/lib/seam/routes/acs_entrances.rb +2 -2
  33. data/lib/seam/routes/action_attempts.rb +1 -1
  34. data/lib/seam/routes/connect_webviews.rb +3 -3
  35. data/lib/seam/routes/connected_accounts.rb +3 -3
  36. data/lib/seam/routes/customers.rb +1 -1
  37. data/lib/seam/routes/devices.rb +3 -3
  38. data/lib/seam/routes/devices_unmanaged.rb +2 -2
  39. data/lib/seam/routes/events.rb +1 -1
  40. data/lib/seam/routes/locks.rb +1 -1
  41. data/lib/seam/routes/noise_sensors.rb +1 -1
  42. data/lib/seam/routes/spaces.rb +3 -3
  43. data/lib/seam/routes/thermostats.rb +1 -1
  44. data/lib/seam/routes/user_identities.rb +1 -1
  45. data/lib/seam/version.rb +1 -1
  46. data/lib/seam/webhook.rb +5 -2
  47. metadata +1 -1
@@ -4,19 +4,41 @@ module Seam
4
4
  module Resources
5
5
  # Represents an Access Grant. Access Grants enable you to grant a user identity access to spaces, entrances, and devices through one or more access methods, such as mobile keys, plastic cards, and PIN codes. You can create an Access Grant for an existing user identity, or you can create a new user identity *while* creating the new Access Grant.
6
6
  class AccessGrant < BaseResource
7
+ # Known `error_code` values load as subclasses; unknown values remain Errors instances for forward compatibility.
7
8
  class Errors < BaseResource
9
+ # Indicates that Seam could not create one or more of the requested access methods for the access grant.
10
+ class CannotCreateRequestedAccessMethods < Errors
11
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
12
+ # @return [String]
13
+ # Known values:
14
+ # - `cannot_create_requested_access_methods`
15
+ attr_accessor :error_code
16
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
17
+ # @return [String]
18
+ attr_accessor :message
19
+ # IDs of the devices that did not receive an access code at grant creation. Use these to identify which specific devices failed when the message reports a partial failure.
20
+ # @return [Array<String>]
21
+ attr_accessor :missing_device_ids
22
+ # Date and time at which Seam created the error.
23
+ # @return [Time]
24
+ date_accessor :created_at
25
+ end
26
+
8
27
  # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
9
28
  # @return [String]
29
+ # Known values:
30
+ # - `cannot_create_requested_access_methods`
10
31
  attr_accessor :error_code
11
32
  # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
12
33
  # @return [String]
13
34
  attr_accessor :message
14
- # IDs of the devices that did not receive an access code at grant creation. Use these to identify which specific devices failed when the message reports a partial failure.
15
- # @return [Array<String>]
16
- attr_accessor :missing_device_ids
17
35
  # Date and time at which Seam created the error.
18
36
  # @return [Time]
19
37
  date_accessor :created_at
38
+
39
+ discriminated_by :error_code, {
40
+ "cannot_create_requested_access_methods" => CannotCreateRequestedAccessMethods
41
+ }.freeze
20
42
  end
21
43
 
22
44
  class PendingMutations < BaseResource
@@ -58,6 +80,8 @@ module Seam
58
80
  # @return [String]
59
81
  attr_accessor :message
60
82
  # @return [String]
83
+ # Known values:
84
+ # - `updating_spaces`
61
85
  attr_accessor :mutation_code
62
86
  # Date and time at which the mutation was created.
63
87
  # @return [Time]
@@ -79,51 +103,191 @@ module Seam
79
103
  attr_accessor :instant_key_max_use_count
80
104
  # Access method mode. Supported values: `code`, `card`, `mobile_key`, `cloud_key`.
81
105
  # @return [String]
106
+ # Known values:
107
+ # - `code`
108
+ # - `card`
109
+ # - `mobile_key`
110
+ # - `cloud_key`
82
111
  attr_accessor :mode
83
112
  # Date and time at which the requested access method was added to the Access Grant.
84
113
  # @return [Time]
85
114
  date_accessor :created_at
86
115
  end
87
116
 
117
+ # Known `warning_code` values load as subclasses; unknown values remain Warnings instances for forward compatibility.
88
118
  class Warnings < BaseResource
89
- class FailedDevices < BaseResource
90
- # Device whose access code could not be revoked.
119
+ # Indicates that the [access grant](https://docs.seam.co/use-cases/granting-access) is being deleted.
120
+ class BeingDeleted < Warnings
121
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
122
+ # @return [String]
123
+ attr_accessor :message
124
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
125
+ # @return [String]
126
+ # Known values:
127
+ # - `being_deleted`
128
+ attr_accessor :warning_code
129
+ # Date and time at which Seam created the warning.
130
+ # @return [Time]
131
+ date_accessor :created_at
132
+ end
133
+
134
+ # Indicates that the access grant should have access to more locations than it currently does. Access methods are being created for the missing locations.
135
+ class UnderprovisionedAccess < Warnings
136
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
137
+ # @return [String]
138
+ attr_accessor :message
139
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
140
+ # @return [String]
141
+ # Known values:
142
+ # - `underprovisioned_access`
143
+ attr_accessor :warning_code
144
+ # Date and time at which Seam created the warning.
145
+ # @return [Time]
146
+ date_accessor :created_at
147
+ end
148
+
149
+ # Indicates that the access grant has access to locations it should not have. Access methods are being removed from the extra locations.
150
+ class OverprovisionedAccess < Warnings
151
+ class FailedDevices < BaseResource
152
+ # Device whose access code could not be revoked.
153
+ # @return [String]
154
+ attr_accessor :device_id
155
+ # Reason the access code could not be revoked (e.g. `offline_access_code_not_revocable`).
156
+ # @return [String]
157
+ attr_accessor :error_code
158
+ # Human-readable description of why revocation failed.
159
+ # @return [String]
160
+ attr_accessor :message
161
+ end
162
+
163
+ # Devices whose access codes could not be revoked during reconciliation. Present when the provider does not support revoking an offline access code (e.g. Dormakaba oracode with exhausted override budget).
164
+ # @return [Array<FailedDevices>]
165
+ resource_list_accessor :failed_devices, FailedDevices
166
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
167
+ # @return [String]
168
+ attr_accessor :message
169
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
170
+ # @return [String]
171
+ # Known values:
172
+ # - `overprovisioned_access`
173
+ attr_accessor :warning_code
174
+ # Date and time at which Seam created the warning.
175
+ # @return [Time]
176
+ date_accessor :created_at
177
+ end
178
+
179
+ # Indicates that the access times for this [access grant](https://docs.seam.co/use-cases/granting-access) are being updated.
180
+ class UpdatingAccessTimes < Warnings
181
+ # IDs of the access methods being updated.
182
+ # @return [Array<String>]
183
+ attr_accessor :access_method_ids
184
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
185
+ # @return [String]
186
+ attr_accessor :message
187
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
188
+ # @return [String]
189
+ # Known values:
190
+ # - `updating_access_times`
191
+ attr_accessor :warning_code
192
+ # Date and time at which Seam created the warning.
193
+ # @return [Time]
194
+ date_accessor :created_at
195
+ end
196
+
197
+ # Indicates that the requested PIN code was already in use on a device, so a different code was assigned.
198
+ class RequestedCodeUnavailable < Warnings
199
+ # ID of the device where the requested code was unavailable.
91
200
  # @return [String]
92
201
  attr_accessor :device_id
93
- # Reason the access code could not be revoked (e.g. `offline_access_code_not_revocable`).
202
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
94
203
  # @return [String]
95
- attr_accessor :error_code
96
- # Human-readable description of why revocation failed.
204
+ attr_accessor :message
205
+ # The new PIN code that was assigned instead.
206
+ # @return [String]
207
+ attr_accessor :new_code
208
+ # The originally requested PIN code that was unavailable.
209
+ # @return [String]
210
+ attr_accessor :original_code
211
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
212
+ # @return [String]
213
+ # Known values:
214
+ # - `requested_code_unavailable`
215
+ attr_accessor :warning_code
216
+ # Date and time at which Seam created the warning.
217
+ # @return [Time]
218
+ date_accessor :created_at
219
+ end
220
+
221
+ # Indicates that a device in the access grant does not support access codes and was excluded from code materialization.
222
+ class DeviceDoesNotSupportAccessCodes < Warnings
223
+ # ID of the device that does not support access codes.
224
+ # @return [String]
225
+ attr_accessor :device_id
226
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
97
227
  # @return [String]
98
228
  attr_accessor :message
229
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
230
+ # @return [String]
231
+ # Known values:
232
+ # - `device_does_not_support_access_codes`
233
+ attr_accessor :warning_code
234
+ # Date and time at which Seam created the warning.
235
+ # @return [Time]
236
+ date_accessor :created_at
237
+ end
238
+
239
+ # Indicates that a device in the access grant cannot program an access code for the grant's time range because of device-specific time constraints.
240
+ class DeviceTimeConstraintsViolated < Warnings
241
+ # ID of the device whose time constraints the access grant violates.
242
+ # @return [String]
243
+ attr_accessor :device_id
244
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
245
+ # @return [String]
246
+ attr_accessor :message
247
+ # Specific reason why the grant's times are not programmable on the device.
248
+ # @return [String]
249
+ # Known values:
250
+ # - `duration_exceeds_max`
251
+ # - `times_do_not_match_slots`
252
+ # - `ongoing_not_supported`
253
+ attr_accessor :reason
254
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
255
+ # @return [String]
256
+ # Known values:
257
+ # - `device_time_constraints_violated`
258
+ attr_accessor :warning_code
259
+ # Date and time at which Seam created the warning.
260
+ # @return [Time]
261
+ date_accessor :created_at
99
262
  end
100
263
 
101
- # Devices whose access codes could not be revoked during reconciliation. Present when the provider does not support revoking an offline access code (e.g. Dormakaba oracode with exhausted override budget).
102
- # @return [Array<FailedDevices>]
103
- resource_list_accessor :failed_devices, FailedDevices
104
- # IDs of the access methods being updated.
105
- # @return [Array<String>]
106
- attr_accessor :access_method_ids
107
- # @return [String]
108
- attr_accessor :device_id
109
264
  # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
110
265
  # @return [String]
111
266
  attr_accessor :message
112
- # The new PIN code that was assigned instead.
113
- # @return [String]
114
- attr_accessor :new_code
115
- # The originally requested PIN code that was unavailable.
116
- # @return [String]
117
- attr_accessor :original_code
118
- # Specific reason why the grant's times are not programmable on the device.
119
- # @return [String]
120
- attr_accessor :reason
121
267
  # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
122
268
  # @return [String]
269
+ # Known values:
270
+ # - `being_deleted`
271
+ # - `underprovisioned_access`
272
+ # - `overprovisioned_access`
273
+ # - `updating_access_times`
274
+ # - `requested_code_unavailable`
275
+ # - `device_does_not_support_access_codes`
276
+ # - `device_time_constraints_violated`
123
277
  attr_accessor :warning_code
124
278
  # Date and time at which Seam created the warning.
125
279
  # @return [Time]
126
280
  date_accessor :created_at
281
+
282
+ discriminated_by :warning_code, {
283
+ "being_deleted" => BeingDeleted,
284
+ "underprovisioned_access" => UnderprovisionedAccess,
285
+ "overprovisioned_access" => OverprovisionedAccess,
286
+ "updating_access_times" => UpdatingAccessTimes,
287
+ "requested_code_unavailable" => RequestedCodeUnavailable,
288
+ "device_does_not_support_access_codes" => DeviceDoesNotSupportAccessCodes,
289
+ "device_time_constraints_violated" => DeviceTimeConstraintsViolated
290
+ }.freeze
127
291
  end
128
292
 
129
293
  # Errors associated with the [access grant](https://docs.seam.co/use-cases/granting-access).
@@ -4,9 +4,27 @@ module Seam
4
4
  module Resources
5
5
  # Represents an access method for an Access Grant. Access methods describe the modes of access, such as PIN codes, plastic cards, and mobile keys. For a mobile key, the access method also stores the URL for the associated Instant Key.
6
6
  class AccessMethod < BaseResource
7
+ # Known `error_code` values load as subclasses; unknown values remain Errors instances for forward compatibility.
7
8
  class Errors < BaseResource
9
+ # Indicates that Seam was unable to issue this [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant) before its access grant started, so the recipient may be unable to access the space. This usually points to a problem that needs attention, such as an offline or disconnected device. Seam keeps retrying, and this error clears automatically if the access method is eventually issued.
10
+ class FailedToIssue < Errors
11
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
12
+ # @return [String]
13
+ # Known values:
14
+ # - `failed_to_issue`
15
+ attr_accessor :error_code
16
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
17
+ # @return [String]
18
+ attr_accessor :message
19
+ # Date and time at which Seam created the error.
20
+ # @return [Time]
21
+ date_accessor :created_at
22
+ end
23
+
8
24
  # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
9
25
  # @return [String]
26
+ # Known values:
27
+ # - `failed_to_issue`
10
28
  attr_accessor :error_code
11
29
  # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
12
30
  # @return [String]
@@ -14,6 +32,10 @@ module Seam
14
32
  # Date and time at which Seam created the error.
15
33
  # @return [Time]
16
34
  date_accessor :created_at
35
+
36
+ discriminated_by :error_code, {
37
+ "failed_to_issue" => FailedToIssue
38
+ }.freeze
17
39
  end
18
40
 
19
41
  class PendingMutations < BaseResource
@@ -47,25 +69,100 @@ module Seam
47
69
  # @return [String]
48
70
  attr_accessor :message
49
71
  # @return [String]
72
+ # Known values:
73
+ # - `provisioning_access`
50
74
  attr_accessor :mutation_code
51
75
  # Date and time at which the mutation was created.
52
76
  # @return [Time]
53
77
  date_accessor :created_at
54
78
  end
55
79
 
80
+ # Known `warning_code` values load as subclasses; unknown values remain Warnings instances for forward compatibility.
56
81
  class Warnings < BaseResource
82
+ # Indicates that the [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant) is being deleted.
83
+ class BeingDeleted < Warnings
84
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
85
+ # @return [String]
86
+ attr_accessor :message
87
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
88
+ # @return [String]
89
+ # Known values:
90
+ # - `being_deleted`
91
+ attr_accessor :warning_code
92
+ # Date and time at which Seam created the warning.
93
+ # @return [Time]
94
+ date_accessor :created_at
95
+ end
96
+
97
+ # Indicates that the access times for this [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant) are being updated.
98
+ class UpdatingAccessTimes < Warnings
99
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
100
+ # @return [String]
101
+ attr_accessor :message
102
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
103
+ # @return [String]
104
+ # Known values:
105
+ # - `updating_access_times`
106
+ attr_accessor :warning_code
107
+ # Date and time at which Seam created the warning.
108
+ # @return [Time]
109
+ date_accessor :created_at
110
+ end
111
+
112
+ # Indicates that all attempts to create an access code on this device before the start time failed and a backup access code was used to ensure access was provided in time.
113
+ class PulledBackupAccessCode < Warnings
114
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
115
+ # @return [String]
116
+ attr_accessor :message
117
+ # ID of the original access method from which this backup access method was split, if applicable.
118
+ # @return [String, nil]
119
+ attr_accessor :original_access_method_id
120
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
121
+ # @return [String]
122
+ # Known values:
123
+ # - `pulled_backup_access_code`
124
+ attr_accessor :warning_code
125
+ # Date and time at which Seam created the warning.
126
+ # @return [Time]
127
+ date_accessor :created_at
128
+ end
129
+
130
+ # Indicates that Seam has not yet issued this [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant), even though its access grant is about to begin, so access may not be ready when the recipient arrives. Seam is still attempting to issue it, and this warning clears automatically once issuance succeeds.
131
+ class DelayInIssuing < Warnings
132
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
133
+ # @return [String]
134
+ attr_accessor :message
135
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
136
+ # @return [String]
137
+ # Known values:
138
+ # - `delay_in_issuing`
139
+ attr_accessor :warning_code
140
+ # Date and time at which Seam created the warning.
141
+ # @return [Time]
142
+ date_accessor :created_at
143
+ end
144
+
57
145
  # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
58
146
  # @return [String]
59
147
  attr_accessor :message
60
- # ID of the original access method from which this backup access method was split, if applicable.
61
- # @return [String, nil]
62
- attr_accessor :original_access_method_id
63
148
  # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
64
149
  # @return [String]
150
+ # Known values:
151
+ # - `being_deleted`
152
+ # - `updating_access_times`
153
+ # - `pulled_backup_access_code`
154
+ # - `delay_in_issuing`
65
155
  attr_accessor :warning_code
66
156
  # Date and time at which Seam created the warning.
67
157
  # @return [Time]
68
158
  date_accessor :created_at
159
+
160
+ discriminated_by :warning_code, {
161
+ "being_deleted" => BeingDeleted,
162
+ "updating_access_times" => UpdatingAccessTimes,
163
+ "pulled_backup_access_code" => PulledBackupAccessCode,
164
+ "delay_in_issuing" => DelayInIssuing
165
+ }.freeze
69
166
  end
70
167
 
71
168
  # Errors associated with the [access method](https://docs.seam.co/use-cases/granting-access/creating-an-access-grant).
@@ -112,6 +209,11 @@ module Seam
112
209
  attr_accessor :is_ready_for_encoding
113
210
  # Access method mode. Supported values: `code`, `card`, `mobile_key`, `cloud_key`.
114
211
  # @return [String]
212
+ # Known values:
213
+ # - `code`
214
+ # - `card`
215
+ # - `mobile_key`
216
+ # - `cloud_key`
115
217
  attr_accessor :mode
116
218
  # ID of the Seam workspace associated with the access method.
117
219
  # @return [String]
@@ -17,9 +17,27 @@ module Seam
17
17
  date_accessor :starts_at
18
18
  end
19
19
 
20
+ # Known `error_code` values load as subclasses; unknown values remain Errors instances for forward compatibility.
20
21
  class Errors < BaseResource
22
+ # Indicates that the [access group](https://docs.seam.co/low-level-apis/access-systems/user-management/assigning-users-to-access-groups) was not created on the [access system](https://docs.seam.co/low-level-apis/access-systems). This is likely due to an internal unexpected error. Contact Seam [support](mailto:support@seam.co).
23
+ class FailedToCreateOnAcsSystem < Errors
24
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
25
+ # @return [String]
26
+ # Known values:
27
+ # - `failed_to_create_on_acs_system`
28
+ attr_accessor :error_code
29
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
30
+ # @return [String]
31
+ attr_accessor :message
32
+ # Date and time at which Seam created the error.
33
+ # @return [Time]
34
+ date_accessor :created_at
35
+ end
36
+
21
37
  # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
22
38
  # @return [String]
39
+ # Known values:
40
+ # - `failed_to_create_on_acs_system`
23
41
  attr_accessor :error_code
24
42
  # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
25
43
  # @return [String]
@@ -27,6 +45,10 @@ module Seam
27
45
  # Date and time at which Seam created the error.
28
46
  # @return [Time]
29
47
  date_accessor :created_at
48
+
49
+ discriminated_by :error_code, {
50
+ "failed_to_create_on_acs_system" => FailedToCreateOnAcsSystem
51
+ }.freeze
30
52
  end
31
53
 
32
54
  class PendingMutations < BaseResource
@@ -77,9 +99,14 @@ module Seam
77
99
  # @return [String]
78
100
  attr_accessor :message
79
101
  # @return [String]
102
+ # Known values:
103
+ # - `creating`
80
104
  attr_accessor :mutation_code
81
105
  # Whether the user is scheduled to be added to or removed from this access group.
82
106
  # @return [String]
107
+ # Known values:
108
+ # - `adding`
109
+ # - `removing`
83
110
  attr_accessor :variant
84
111
  # Date and time at which the mutation was created.
85
112
  # @return [Time]
@@ -92,6 +119,9 @@ module Seam
92
119
  attr_accessor :message
93
120
  # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
94
121
  # @return [String]
122
+ # Known values:
123
+ # - `unknown_issue_with_acs_access_group`
124
+ # - `being_deleted`
95
125
  attr_accessor :warning_code
96
126
  # Date and time at which Seam created the warning.
97
127
  # @return [Time]
@@ -111,6 +141,17 @@ module Seam
111
141
  # @return [Array<Warnings>]
112
142
  resource_list_accessor :warnings, Warnings
113
143
  # @return [String]
144
+ # Known values:
145
+ # - `pti_unit`
146
+ # - `pti_access_level`
147
+ # - `salto_ks_access_group`
148
+ # - `brivo_group`
149
+ # - `salto_space_group`
150
+ # - `dormakaba_community_access_group`
151
+ # - `dormakaba_ambiance_access_group`
152
+ # - `avigilon_alta_group`
153
+ # - `kisi_access_group`
154
+ # - `akiles_member_group`
114
155
  # @deprecated Use `external_type`.
115
156
  attr_accessor :access_group_type
116
157
  # @return [String]
@@ -130,6 +171,17 @@ module Seam
130
171
  attr_accessor :display_name
131
172
  # Brand-specific terminology for the access group type.
132
173
  # @return [String]
174
+ # Known values:
175
+ # - `pti_unit`
176
+ # - `pti_access_level`
177
+ # - `salto_ks_access_group`
178
+ # - `brivo_group`
179
+ # - `salto_space_group`
180
+ # - `dormakaba_community_access_group`
181
+ # - `dormakaba_ambiance_access_group`
182
+ # - `avigilon_alta_group`
183
+ # - `kisi_access_group`
184
+ # - `akiles_member_group`
133
185
  attr_accessor :external_type
134
186
  # Display name that corresponds to the brand-specific terminology for the access group type.
135
187
  # @return [String]