seam 2.134.0 → 2.136.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 (41) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +17 -7
  4. data/lib/seam/auth.rb +1 -1
  5. data/lib/seam/base_resource.rb +45 -1
  6. data/lib/seam/deep_hash_accessor.rb +8 -4
  7. data/lib/seam/{http_multi_workspace.rb → http_without_workspace.rb} +4 -3
  8. data/lib/seam/request.rb +0 -1
  9. data/lib/seam/resources/access_code.rb +109 -7
  10. data/lib/seam/resources/access_grant.rb +90 -7
  11. data/lib/seam/resources/access_method.rb +49 -5
  12. data/lib/seam/resources/acs_access_group.rb +69 -7
  13. data/lib/seam/resources/acs_credential.rb +54 -7
  14. data/lib/seam/resources/acs_encoder.rb +10 -2
  15. data/lib/seam/resources/acs_entrance.rb +166 -25
  16. data/lib/seam/resources/acs_system.rb +40 -7
  17. data/lib/seam/resources/acs_user.rb +93 -11
  18. data/lib/seam/resources/action_attempt.rb +304 -5
  19. data/lib/seam/resources/connected_account.rb +70 -6
  20. data/lib/seam/resources/device.rb +1126 -11
  21. data/lib/seam/resources/event.rb +133 -49
  22. data/lib/seam/resources/index.rb +0 -4
  23. data/lib/seam/resources/instant_key.rb +10 -2
  24. data/lib/seam/resources/phone.rb +44 -5
  25. data/lib/seam/resources/space.rb +20 -4
  26. data/lib/seam/resources/thermostat_daily_program.rb +8 -2
  27. data/lib/seam/resources/thermostat_schedule.rb +10 -2
  28. data/lib/seam/resources/unmanaged_access_code.rb +74 -5
  29. data/lib/seam/resources/unmanaged_access_grant.rb +90 -7
  30. data/lib/seam/resources/unmanaged_access_method.rb +49 -5
  31. data/lib/seam/resources/unmanaged_device.rb +99 -7
  32. data/lib/seam/resources/unmanaged_user_identity.rb +24 -3
  33. data/lib/seam/resources/user_identity.rb +24 -3
  34. data/lib/seam/resources/workspace.rb +14 -1
  35. data/lib/seam/version.rb +1 -1
  36. data/lib/seam.rb +1 -1
  37. metadata +3 -7
  38. data/lib/seam/resources/resource_error.rb +0 -11
  39. data/lib/seam/resources/resource_errors_support.rb +0 -11
  40. data/lib/seam/resources/resource_warning.rb +0 -11
  41. data/lib/seam/resources/resource_warnings_support.rb +0 -11
@@ -10,6 +10,60 @@ module Seam
10
10
  #
11
11
  # For granting a person access to a space, [Access Grants](https://docs.seam.co/use-cases/granting-access) are the default and recommended approach. Use the lower-level ACS credential API directly only when you specifically need to manage individual credentials.
12
12
  class AcsCredential < BaseResource
13
+ class AssaAbloyVostioMetadata < BaseResource
14
+ # Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors.
15
+ attr_accessor :auto_join
16
+ # Names of the doors to which to grant access in the Vostio access system.
17
+ attr_accessor :door_names
18
+ # Endpoint ID in the Vostio access system.
19
+ attr_accessor :endpoint_id
20
+ # Key ID in the Vostio access system.
21
+ attr_accessor :key_id
22
+ # Key issuing request ID in the Vostio access system.
23
+ attr_accessor :key_issuing_request_id
24
+ # IDs of the guest entrances to override in the Vostio access system.
25
+ attr_accessor :override_guest_acs_entrance_ids
26
+ end
27
+
28
+ class Errors < BaseResource
29
+ attr_accessor :error_code
30
+ attr_accessor :message
31
+ # Date and time at which Seam created the error.
32
+ date_accessor :created_at
33
+ end
34
+
35
+ class VisionlineMetadata < BaseResource
36
+ # Indicates whether the credential should auto-join. For an auto-join credential, Seam automatically issues an override card if there are no other cards and a joiner card if there are existing cards on the doors.
37
+ attr_accessor :auto_join
38
+ # Card function type in the Visionline access system.
39
+ attr_accessor :card_function_type
40
+ # ID of the card in the Visionline access system.
41
+ attr_accessor :card_id
42
+ # Common entrance IDs in the Visionline access system.
43
+ attr_accessor :common_acs_entrance_ids
44
+ # ID of the credential in the Visionline access system.
45
+ attr_accessor :credential_id
46
+ # Guest entrance IDs in the Visionline access system.
47
+ attr_accessor :guest_acs_entrance_ids
48
+ # Indicates whether the credential is valid.
49
+ attr_accessor :is_valid
50
+ # IDs of the credentials to which you want to join.
51
+ attr_accessor :joiner_acs_credential_ids
52
+ end
53
+
54
+ class Warnings < BaseResource
55
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
56
+ attr_accessor :message
57
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
58
+ attr_accessor :warning_code
59
+ # Date and time at which Seam created the warning.
60
+ date_accessor :created_at
61
+ end
62
+
63
+ resource_accessor :assa_abloy_vostio_metadata, AssaAbloyVostioMetadata
64
+ resource_accessor :visionline_metadata, VisionlineMetadata
65
+ resource_list_accessor :errors, Errors
66
+ resource_list_accessor :warnings, Warnings
13
67
  # Access method for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials). Supported values: `code`, `card`, `mobile_key`, `cloud_key`.
14
68
  attr_accessor :access_method
15
69
  # ID of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
@@ -20,8 +74,6 @@ module Seam
20
74
  attr_accessor :acs_system_id
21
75
  # ID of the [ACS user](https://docs.seam.co/low-level-apis/access-systems/user-management) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs.
22
76
  attr_accessor :acs_user_id
23
- # Vostio-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
24
- attr_accessor :assa_abloy_vostio_metadata
25
77
  # Number of the card associated with the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
26
78
  attr_accessor :card_number
27
79
  # Access (PIN) code for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
@@ -52,8 +104,6 @@ module Seam
52
104
  attr_accessor :starts_at
53
105
  # ID of the [user identity](https://docs.seam.co/api/user_identities) to whom the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) belongs.
54
106
  attr_accessor :user_identity_id
55
- # Visionline-specific metadata for the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
56
- attr_accessor :visionline_metadata
57
107
  # ID of the workspace that contains the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials).
58
108
  attr_accessor :workspace_id
59
109
 
@@ -65,9 +115,6 @@ module Seam
65
115
 
66
116
  # Date and time at which the state of the [credential](https://docs.seam.co/low-level-apis/access-systems/managing-credentials) was most recently synced from Seam to the provider.
67
117
  date_accessor :latest_desired_state_synced_with_provider_at
68
-
69
- include Seam::Resources::ResourceErrorsSupport
70
- include Seam::Resources::ResourceWarningsSupport
71
118
  end
72
119
  end
73
120
  end
@@ -17,6 +17,16 @@ module Seam
17
17
  #
18
18
  # To verify if your access control system requires a card encoder, see the corresponding [system integration guide](https://docs.seam.co/device-and-system-integration-guides#access-control-systems).
19
19
  class AcsEncoder < BaseResource
20
+ class Errors < BaseResource
21
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
22
+ attr_accessor :error_code
23
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
24
+ attr_accessor :message
25
+ # Date and time at which Seam created the error.
26
+ date_accessor :created_at
27
+ end
28
+
29
+ resource_list_accessor :errors, Errors
20
30
  # ID of the [encoder](https://docs.seam.co/low-level-apis/access-systems/working-with-card-encoders-and-scanners).
21
31
  attr_accessor :acs_encoder_id
22
32
  # ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems) that contains the [encoder](https://docs.seam.co/low-level-apis/access-systems/working-with-card-encoders-and-scanners).
@@ -30,8 +40,6 @@ module Seam
30
40
 
31
41
  # Date and time at which the [encoder](https://docs.seam.co/low-level-apis/access-systems/working-with-card-encoders-and-scanners) was created.
32
42
  date_accessor :created_at
33
-
34
- include Seam::Resources::ResourceErrorsSupport
35
43
  end
36
44
  end
37
45
  end
@@ -6,18 +6,176 @@ module Seam
6
6
  #
7
7
  # In an access control system, an entrance is a secured door, gate, zone, or other method of entry. You can list details for all the `acs_entrance` resources in your workspace or get these details for a specific `acs_entrance`. You can also list all entrances associated with a specific credential, and you can list all credentials associated with a specific entrance.
8
8
  class AcsEntrance < BaseResource
9
+ class AkilesMetadata < BaseResource
10
+ class Actions < BaseResource
11
+ # ID of the gadget action.
12
+ attr_accessor :id
13
+ # Name of the gadget action.
14
+ attr_accessor :name
15
+ end
16
+
17
+ resource_list_accessor :actions, Actions
18
+ # ID of the Akiles gadget.
19
+ attr_accessor :gadget_id
20
+ # ID of the Akiles site the gadget belongs to.
21
+ attr_accessor :site_id
22
+ # Name of the Akiles site the gadget belongs to.
23
+ attr_accessor :site_name
24
+ end
25
+
26
+ class AssaAbloyVostioMetadata < BaseResource
27
+ # Name of the door in the Vostio access system.
28
+ attr_accessor :door_name
29
+ # Number of the door in the Vostio access system.
30
+ attr_accessor :door_number
31
+ # Type of the door in the Vostio access system.
32
+ attr_accessor :door_type
33
+ # PMS ID of the door in the Vostio access system.
34
+ attr_accessor :pms_id
35
+ # Indicates whether keys are allowed to set the door in stand open mode in the Vostio access system.
36
+ attr_accessor :stand_open
37
+ end
38
+
39
+ class AvigilonAltaMetadata < BaseResource
40
+ # Entry name for an Avigilon Alta system.
41
+ attr_accessor :entry_name
42
+ # Total count of entry relays for an Avigilon Alta system.
43
+ attr_accessor :entry_relays_total_count
44
+ # Organization name for an Avigilon Alta system.
45
+ attr_accessor :org_name
46
+ # Site ID for an Avigilon Alta system.
47
+ attr_accessor :site_id
48
+ # Site name for an Avigilon Alta system.
49
+ attr_accessor :site_name
50
+ # Zone ID for an Avigilon Alta system.
51
+ attr_accessor :zone_id
52
+ # Zone name for an Avigilon Alta system.
53
+ attr_accessor :zone_name
54
+ end
55
+
56
+ class BrivoMetadata < BaseResource
57
+ # ID of the access point in the Brivo access system.
58
+ attr_accessor :access_point_id
59
+ # ID of the site that the access point belongs to.
60
+ attr_accessor :site_id
61
+ # Name of the site that the access point belongs to.
62
+ attr_accessor :site_name
63
+ end
64
+
65
+ class DormakabaAmbianceMetadata < BaseResource
66
+ # Name of the access point in the dormakaba Ambiance access system.
67
+ attr_accessor :access_point_name
68
+ end
69
+
70
+ class DormakabaCommunityMetadata < BaseResource
71
+ # Type of access point profile in the dormakaba Community access system.
72
+ attr_accessor :access_point_profile
73
+ end
74
+
75
+ class Errors < BaseResource
76
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
77
+ attr_accessor :error_code
78
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
79
+ attr_accessor :message
80
+ # Date and time at which Seam created the error.
81
+ date_accessor :created_at
82
+ end
83
+
84
+ class HotekMetadata < BaseResource
85
+ # Display name of the entrance.
86
+ attr_accessor :common_area_name
87
+ # Display name of the entrance.
88
+ attr_accessor :common_area_number
89
+ # Room number of the entrance.
90
+ attr_accessor :room_number
91
+ end
92
+
93
+ class LatchMetadata < BaseResource
94
+ # Accessibility type in the Latch access system.
95
+ attr_accessor :accessibility_type
96
+ # Name of the door in the Latch access system.
97
+ attr_accessor :door_name
98
+ # Type of the door in the Latch access system.
99
+ attr_accessor :door_type
100
+ # Indicates whether the entrance is connected.
101
+ attr_accessor :is_connected
102
+ end
103
+
104
+ class SaltoKsMetadata < BaseResource
105
+ # Battery level of the door access device.
106
+ attr_accessor :battery_level
107
+ # Name of the door in the Salto KS access system.
108
+ attr_accessor :door_name
109
+ # Indicates whether an intrusion alarm is active on the door.
110
+ attr_accessor :intrusion_alarm
111
+ # Indicates whether the door is left open.
112
+ attr_accessor :left_open_alarm
113
+ # Type of the lock in the Salto KS access system.
114
+ attr_accessor :lock_type
115
+ # Locked state of the door in the Salto KS access system.
116
+ attr_accessor :locked_state
117
+ # Indicates whether the door access device is online.
118
+ attr_accessor :online
119
+ # Indicates whether privacy mode is enabled for the lock.
120
+ attr_accessor :privacy_mode
121
+ end
122
+
123
+ class SaltoSpaceMetadata < BaseResource
124
+ # Indicates whether AuditOnKeys is enabled for the door in the Salto Space access system.
125
+ attr_accessor :audit_on_keys
126
+ # Description of the door in the Salto Space access system.
127
+ attr_accessor :door_description
128
+ # Door ID in the Salto Space access system.
129
+ attr_accessor :door_id
130
+ # Name of the door in the Salto Space access system.
131
+ attr_accessor :door_name
132
+ # Description of the room in the Salto Space access system.
133
+ attr_accessor :room_description
134
+ # Name of the room in the Salto Space access system.
135
+ attr_accessor :room_name
136
+ end
137
+
138
+ class VisionlineMetadata < BaseResource
139
+ class Profiles < BaseResource
140
+ # Door profile ID in the Visionline access system.
141
+ attr_accessor :visionline_door_profile_id
142
+ # Door profile type in the Visionline access system.
143
+ attr_accessor :visionline_door_profile_type
144
+ end
145
+
146
+ resource_list_accessor :profiles, Profiles
147
+ # Category of the door in the Visionline access system.
148
+ attr_accessor :door_category
149
+ # Name of the door in the Visionline access system.
150
+ attr_accessor :door_name
151
+ end
152
+
153
+ class Warnings < BaseResource
154
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
155
+ attr_accessor :message
156
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
157
+ attr_accessor :warning_code
158
+ # Date and time at which Seam created the warning.
159
+ date_accessor :created_at
160
+ end
161
+
162
+ resource_accessor :akiles_metadata, AkilesMetadata
163
+ resource_accessor :assa_abloy_vostio_metadata, AssaAbloyVostioMetadata
164
+ resource_accessor :avigilon_alta_metadata, AvigilonAltaMetadata
165
+ resource_accessor :brivo_metadata, BrivoMetadata
166
+ resource_accessor :dormakaba_ambiance_metadata, DormakabaAmbianceMetadata
167
+ resource_accessor :dormakaba_community_metadata, DormakabaCommunityMetadata
168
+ resource_accessor :hotek_metadata, HotekMetadata
169
+ resource_accessor :latch_metadata, LatchMetadata
170
+ resource_accessor :salto_ks_metadata, SaltoKsMetadata
171
+ resource_accessor :salto_space_metadata, SaltoSpaceMetadata
172
+ resource_accessor :visionline_metadata, VisionlineMetadata
173
+ resource_list_accessor :errors, Errors
174
+ resource_list_accessor :warnings, Warnings
9
175
  # ID of the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
10
176
  attr_accessor :acs_entrance_id
11
177
  # ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems) that contains the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
12
178
  attr_accessor :acs_system_id
13
- # Akiles-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
14
- attr_accessor :akiles_metadata
15
- # ASSA ABLOY Vostio-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
16
- attr_accessor :assa_abloy_vostio_metadata
17
- # Avigilon Alta-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
18
- attr_accessor :avigilon_alta_metadata
19
- # Brivo-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
20
- attr_accessor :brivo_metadata
21
179
  # Indicates whether the ACS entrance can belong to a reservation via an access_grant.reservation_key.
22
180
  attr_accessor :can_belong_to_reservation
23
181
  # Indicates whether the ACS entrance can be unlocked with card credentials.
@@ -32,30 +190,13 @@ module Seam
32
190
  attr_accessor :connected_account_id
33
191
  # Display name for the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
34
192
  attr_accessor :display_name
35
- # dormakaba Ambiance-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
36
- attr_accessor :dormakaba_ambiance_metadata
37
- # dormakaba Community-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
38
- attr_accessor :dormakaba_community_metadata
39
- # Hotek-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
40
- attr_accessor :hotek_metadata
41
193
  # Indicates whether the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details) is currently locked.
42
194
  attr_accessor :is_locked
43
- # Latch-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
44
- attr_accessor :latch_metadata
45
- # Salto KS-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
46
- attr_accessor :salto_ks_metadata
47
- # Salto Space-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
48
- attr_accessor :salto_space_metadata
49
195
  # IDs of the spaces that the entrance is in.
50
196
  attr_accessor :space_ids
51
- # Visionline-specific metadata associated with the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details).
52
- attr_accessor :visionline_metadata
53
197
 
54
198
  # Date and time at which the [entrance](https://docs.seam.co/low-level-apis/access-systems/retrieving-entrance-details) was created.
55
199
  date_accessor :created_at
56
-
57
- include Seam::Resources::ResourceErrorsSupport
58
- include Seam::Resources::ResourceWarningsSupport
59
200
  end
60
201
  end
61
202
  end
@@ -8,6 +8,46 @@ module Seam
8
8
  #
9
9
  # For details about the resources associated with an access control system, see the [access control systems namespace](https://docs.seam.co/api/acs).
10
10
  class AcsSystem < BaseResource
11
+ class Errors < BaseResource
12
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
13
+ attr_accessor :error_code
14
+ # Indicates whether the error is related to the [Seam Bridge](https://docs.seam.co/capability-guides/seam-bridge).
15
+ attr_accessor :is_bridge_error
16
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
17
+ attr_accessor :message
18
+ # Date and time at which Seam created the error.
19
+ date_accessor :created_at
20
+ end
21
+
22
+ class Location < BaseResource
23
+ # Time zone in which the [access control system](https://docs.seam.co/low-level-apis/access-systems) is located.
24
+ attr_accessor :time_zone
25
+ end
26
+
27
+ class VisionlineMetadata < BaseResource
28
+ # IP address or hostname of the main Visionline server relative to [Seam Bridge](https://docs.seam.co/capability-guides/seam-bridge) on the local network.
29
+ attr_accessor :lan_address
30
+ # Keyset loaded into a reader. Mobile keys and reader administration tools securely authenticate only with readers programmed with a matching keyset.
31
+ attr_accessor :mobile_access_uuid
32
+ # Unique ID assigned by the ASSA ABLOY licensing team that identifies each hotel in your credential manager.
33
+ attr_accessor :system_id
34
+ end
35
+
36
+ class Warnings < BaseResource
37
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
38
+ attr_accessor :message
39
+ # @deprecated this field is deprecated.
40
+ attr_accessor :misconfigured_acs_entrance_ids
41
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
42
+ attr_accessor :warning_code
43
+ # Date and time at which Seam created the warning.
44
+ date_accessor :created_at
45
+ end
46
+
47
+ resource_accessor :location, Location
48
+ resource_accessor :visionline_metadata, VisionlineMetadata
49
+ resource_list_accessor :errors, Errors
50
+ resource_list_accessor :warnings, Warnings
11
51
  # Number of access groups in the [access control system](https://docs.seam.co/low-level-apis/access-systems).
12
52
  attr_accessor :acs_access_group_count
13
53
  # ID of the [access control system](https://docs.seam.co/low-level-apis/access-systems).
@@ -31,24 +71,17 @@ module Seam
31
71
  attr_accessor :image_url
32
72
  # Indicates whether the `acs_system` is a credential manager.
33
73
  attr_accessor :is_credential_manager
34
- # Location information for the [access control system](https://docs.seam.co/low-level-apis/access-systems).
35
- attr_accessor :location
36
74
  # Name of the [access control system](https://docs.seam.co/low-level-apis/access-systems).
37
75
  attr_accessor :name
38
76
  # @deprecated Use `external_type`.
39
77
  attr_accessor :system_type
40
78
  # @deprecated Use `external_type_display_name`.
41
79
  attr_accessor :system_type_display_name
42
- # Visionline-specific metadata for the [access control system](https://docs.seam.co/low-level-apis/access-systems).
43
- attr_accessor :visionline_metadata
44
80
  # ID of the workspace that contains the [access control system](https://docs.seam.co/low-level-apis/access-systems).
45
81
  attr_accessor :workspace_id
46
82
 
47
83
  # Date and time at which the [access control system](https://docs.seam.co/low-level-apis/access-systems) was created.
48
84
  date_accessor :created_at
49
-
50
- include Seam::Resources::ResourceErrorsSupport
51
- include Seam::Resources::ResourceWarningsSupport
52
85
  end
53
86
  end
54
87
  end
@@ -8,8 +8,99 @@ module Seam
8
8
  #
9
9
  # For details about how to configure users in your access system, see the corresponding [system integration guide](https://docs.seam.co/device-and-system-integration-guides#access-control-systems).
10
10
  class AcsUser < BaseResource
11
- # `starts_at` and `ends_at` timestamps for the [access system user's](https://docs.seam.co/low-level-apis/access-systems/user-management) access.
12
- attr_accessor :access_schedule
11
+ class AccessSchedule < BaseResource
12
+ # Date and time at which the user's access ends, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
13
+ date_accessor :ends_at
14
+ # Date and time at which the user's access starts, in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
15
+ date_accessor :starts_at
16
+ end
17
+
18
+ class Errors < BaseResource
19
+ attr_accessor :error_code
20
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
21
+ attr_accessor :message
22
+ # Date and time at which Seam created the error.
23
+ date_accessor :created_at
24
+ end
25
+
26
+ class PendingMutations < BaseResource
27
+ class From < BaseResource
28
+ # Old access group ID.
29
+ attr_accessor :acs_access_group_id
30
+ # Previous credential ID.
31
+ attr_accessor :acs_credential_id
32
+ # Email address of the access system user.
33
+ attr_accessor :email_address
34
+ # Full name of the access system user.
35
+ attr_accessor :full_name
36
+ attr_accessor :is_suspended
37
+ # Phone number of the access system user.
38
+ attr_accessor :phone_number
39
+ # Starting time for the access schedule.
40
+ date_accessor :ends_at
41
+ # Starting time for the access schedule.
42
+ date_accessor :starts_at
43
+ end
44
+
45
+ class To < BaseResource
46
+ # New access group ID.
47
+ attr_accessor :acs_access_group_id
48
+ # New credential ID.
49
+ attr_accessor :acs_credential_id
50
+ # Email address of the access system user.
51
+ attr_accessor :email_address
52
+ # Full name of the access system user.
53
+ attr_accessor :full_name
54
+ attr_accessor :is_suspended
55
+ # Phone number of the access system user.
56
+ attr_accessor :phone_number
57
+ # Starting time for the access schedule.
58
+ date_accessor :ends_at
59
+ # Starting time for the access schedule.
60
+ date_accessor :starts_at
61
+ end
62
+
63
+ resource_accessor :from, From
64
+ resource_accessor :to, To
65
+ # ID of the access group involved in the scheduled change.
66
+ attr_accessor :acs_access_group_id
67
+ # Detailed description of the mutation.
68
+ attr_accessor :message
69
+ attr_accessor :mutation_code
70
+ # Whether the user is scheduled to be added to or removed from the access group.
71
+ attr_accessor :variant
72
+ # Date and time at which the mutation was created.
73
+ date_accessor :created_at
74
+ # Optional: When the user creation is scheduled to occur.
75
+ date_accessor :scheduled_at
76
+ end
77
+
78
+ class SaltoKsMetadata < BaseResource
79
+ # Indicates whether the user holds an active subscription slot on the Salto KS site. Only subscribed users can unlock doors and count against the site's user-subscription limit. A user may not be subscribed because their access schedule has not started or has ended, the site has reached its subscription limit, or they were manually unsubscribed. This is distinct from `is_suspended`, which reflects whether the user has been explicitly blocked.
80
+ attr_accessor :is_subscribed
81
+ end
82
+
83
+ class SaltoSpaceMetadata < BaseResource
84
+ # Indicates whether AuditOpenings is enabled for the user in the Salto Space access system.
85
+ attr_accessor :audit_openings
86
+ # User ID in the Salto Space access system.
87
+ attr_accessor :user_id
88
+ end
89
+
90
+ class Warnings < BaseResource
91
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
92
+ attr_accessor :message
93
+ attr_accessor :warning_code
94
+ # Date and time at which Seam created the warning.
95
+ date_accessor :created_at
96
+ end
97
+
98
+ resource_accessor :access_schedule, AccessSchedule
99
+ resource_accessor :salto_ks_metadata, SaltoKsMetadata
100
+ resource_accessor :salto_space_metadata, SaltoSpaceMetadata
101
+ resource_list_accessor :errors, Errors
102
+ resource_list_accessor :pending_mutations, PendingMutations
103
+ resource_list_accessor :warnings, Warnings
13
104
  # ID of the [access system](https://docs.seam.co/low-level-apis/access-systems) that contains the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
14
105
  attr_accessor :acs_system_id
15
106
  # ID of the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
@@ -34,14 +125,8 @@ module Seam
34
125
  attr_accessor :is_managed
35
126
  # Indicates whether the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management) is currently [suspended](https://docs.seam.co/low-level-apis/access-systems/user-management/suspending-and-unsuspending-users).
36
127
  attr_accessor :is_suspended
37
- # Pending mutations associated with the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management). Seam is in the process of pushing these mutations to the integrated access system.
38
- attr_accessor :pending_mutations
39
128
  # Phone number of the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management) in E.164 format (for example, `+15555550100`).
40
129
  attr_accessor :phone_number
41
- # Salto KS-specific metadata associated with the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
42
- attr_accessor :salto_ks_metadata
43
- # Salto Space-specific metadata associated with the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
44
- attr_accessor :salto_space_metadata
45
130
  # Email address of the user identity associated with the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
46
131
  attr_accessor :user_identity_email_address
47
132
  # Full name of the user identity associated with the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management).
@@ -55,9 +140,6 @@ module Seam
55
140
 
56
141
  # Date and time at which the [access system user](https://docs.seam.co/low-level-apis/access-systems/user-management) was created.
57
142
  date_accessor :created_at
58
-
59
- include Seam::Resources::ResourceErrorsSupport
60
- include Seam::Resources::ResourceWarningsSupport
61
143
  end
62
144
  end
63
145
  end