ruby-jss 4.2.0b2 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +25 -7
  3. data/README-2.0.0.md +19 -8
  4. data/README.md +43 -30
  5. data/lib/jamf/api/classic/api_objects/patch_title.rb +0 -2
  6. data/lib/jamf/api/jamf_pro/api_objects/api_client.rb +3 -0
  7. data/lib/jamf/api/jamf_pro/api_objects/api_role.rb +3 -0
  8. data/lib/jamf/api/jamf_pro/api_objects/j_package.rb +307 -119
  9. data/lib/jamf/api/jamf_pro/api_objects/managed_software_updates/plan.rb +237 -0
  10. data/lib/jamf/api/jamf_pro/api_objects/managed_software_updates.rb +291 -0
  11. data/lib/jamf/api/jamf_pro/base_classes/oapi_object.rb +8 -0
  12. data/lib/jamf/api/jamf_pro/mixins/collection_resource.rb +23 -3
  13. data/lib/jamf/api/jamf_pro/mixins/filterable.rb +8 -0
  14. data/lib/jamf/api/jamf_pro/mixins/jpapi_resource.rb +17 -3
  15. data/lib/jamf/api/jamf_pro/mixins/macos_managed_updates.rb +2 -0
  16. data/lib/jamf/api/jamf_pro/mixins/prestage.rb +3 -0
  17. data/lib/jamf/api/jamf_pro/oapi_schemas/account_group.rb +123 -0
  18. data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v1.rb +105 -0
  19. data/lib/jamf/api/jamf_pro/oapi_schemas/assign_remove_profile_response_sync_state.rb +112 -0
  20. data/lib/jamf/api/jamf_pro/oapi_schemas/auth_account_v1.rb +159 -0
  21. data/lib/jamf/api/jamf_pro/oapi_schemas/authentication_type.rb +97 -0
  22. data/lib/jamf/api/jamf_pro/oapi_schemas/{device_enrollment_disown_body.rb → available_updates.rb} +14 -10
  23. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_application.rb +124 -0
  24. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_attachment.rb +102 -0
  25. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_certificate.rb +151 -0
  26. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_configuration_profile.rb +118 -0
  27. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching.rb +372 -0
  28. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_alert.rb +120 -0
  29. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_cache_detail.rb +97 -0
  30. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error.rb +98 -0
  31. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error_user_info.rb +89 -0
  32. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent.rb +131 -0
  33. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_alert.rb +105 -0
  34. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_capabilities.rb +124 -0
  35. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_details.rb +118 -0
  36. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_local_network.rb +97 -0
  37. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk.rb +143 -0
  38. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk_encryption.rb +120 -0
  39. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_extension_attribute.rb +175 -0
  40. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_font.rb +93 -0
  41. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_general.rb +244 -0
  42. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_hardware.rb +264 -0
  43. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_ibeacon.rb +81 -0
  44. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory.rb +276 -0
  45. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_file_vault.rb +127 -0
  46. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_licensed_software.rb +88 -0
  47. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_local_user_account.rb +196 -0
  48. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_mdm_capability.rb +88 -0
  49. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_operating_system.rb +148 -0
  50. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_package_receipts.rb +97 -0
  51. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition.rb +145 -0
  52. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_encryption.rb +94 -0
  53. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_file_vault2_state.rb +97 -0
  54. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_plugin.rb +93 -0
  55. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_v3.rb +129 -0
  56. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_printer.rb +99 -0
  57. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_purchase.rb +158 -0
  58. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_remote_management.rb +88 -0
  59. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_section.rb +109 -0
  60. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_security.rb +193 -0
  61. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_service.rb +81 -0
  62. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_software_update.rb +93 -0
  63. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_storage.rb +90 -0
  64. data/lib/jamf/api/jamf_pro/oapi_schemas/computer_user_and_location.rb +131 -0
  65. data/lib/jamf/api/jamf_pro/oapi_schemas/dss_declaration.rb +111 -0
  66. data/lib/jamf/api/jamf_pro/oapi_schemas/dss_declarations.rb +88 -0
  67. data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_method.rb +97 -0
  68. data/lib/jamf/api/jamf_pro/oapi_schemas/group_membership.rb +94 -0
  69. data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute.rb +89 -0
  70. data/lib/jamf/api/jamf_pro/oapi_schemas/location_information.rb +146 -0
  71. data/lib/jamf/api/jamf_pro/oapi_schemas/{package_manifest.rb → location_information_v2.rb} +35 -37
  72. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan.rb +181 -0
  73. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_event_store.rb +85 -0
  74. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_group_post.rb +99 -0
  75. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_post.rb +98 -0
  76. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_post_response.rb +100 -0
  77. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle.rb +115 -0
  78. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle_status.rb +169 -0
  79. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle_status_wrapper.rb +91 -0
  80. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plans.rb +102 -0
  81. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_status.rb +173 -0
  82. data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_statuses.rb +102 -0
  83. data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_name_v2.rb +94 -0
  84. data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_names_v2.rb +118 -0
  85. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_configuration_post.rb +142 -0
  86. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device.rb +105 -0
  87. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device_post.rb +97 -0
  88. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device_response.rb +96 -0
  89. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_group_post.rb +96 -0
  90. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_search_results.rb +89 -0
  91. data/lib/jamf/api/jamf_pro/oapi_schemas/plan_status.rb +127 -0
  92. data/lib/jamf/api/jamf_pro/oapi_schemas/{device_enrollment_prestage.rb → prestage_purchasing_information.rb} +51 -88
  93. data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_purchasing_information_v2.rb +174 -0
  94. data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_assignment_v2.rb +94 -0
  95. data/lib/jamf/api/jamf_pro/oapi_schemas/v1_site.rb +91 -0
  96. data/lib/jamf/api/jamf_pro/oapi_schemas.rb +24 -1
  97. data/lib/jamf/composer.rb +114 -107
  98. data/lib/jamf/oapi_validate.rb +1 -0
  99. data/lib/jamf/version.rb +1 -1
  100. data/test/bin/runtests +2 -2
  101. data/test/lib/jamf_test/collection_tests.rb +10 -2
  102. data/test/tests/computer_group.rb +29 -12
  103. data/test/tests/{jp_building.rb → j_building.rb} +2 -2
  104. data/test/tests/j_package.rb +47 -0
  105. metadata +87 -8
@@ -0,0 +1,244 @@
1
+ # Copyright 2025 Pixar
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "Apache License")
4
+ # with the following modification; you may not use this file except in
5
+ # compliance with the Apache License and the following modification to it:
6
+ # Section 6. Trademarks. is deleted and replaced with:
7
+ #
8
+ # 6. Trademarks. This License does not grant permission to use the trade
9
+ # names, trademarks, service marks, or product names of the Licensor
10
+ # and its affiliates, except as required to comply with Section 4(c) of
11
+ # the License and to reproduce the content of the NOTICE file.
12
+ #
13
+ # You may obtain a copy of the Apache License at
14
+ #
15
+ # http://www.apache.org/licenses/LICENSE-2.0
16
+ #
17
+ # Unless required by applicable law or agreed to in writing, software
18
+ # distributed under the Apache License with the above modification is
19
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
+ # KIND, either express or implied. See the Apache License for the specific
21
+ # language governing permissions and limitations under the Apache License.
22
+ #
23
+
24
+
25
+ module Jamf
26
+
27
+ # This module is the namespace for all objects defined
28
+ # in the OAPI JSON schema under the components => schemas key
29
+ #
30
+ module OAPISchemas
31
+
32
+
33
+ # OAPI Object Model and Enums for: ComputerGeneral
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.9.2-t1726753918
39
+ #
40
+ # This class may be used directly, e.g instances of other classes may
41
+ # use instances of this class as one of their own properties/attributes.
42
+ #
43
+ # It may also be used as a superclass when implementing Jamf Pro API
44
+ # Resources in ruby-jss. The subclasses include appropriate mixins, and
45
+ # should expand on the basic functionality provided here.
46
+ #
47
+ #
48
+ # Container Objects:
49
+ # Other object models that use this model as the value in one
50
+ # of their attributes.
51
+ # - Jamf::OAPISchemas::ComputerInventory
52
+ #
53
+ # Sub Objects:
54
+ # Other object models used by this model's attributes.
55
+ # - Jamf::OAPISchemas::ComputerRemoteManagement
56
+ # - Jamf::OAPISchemas::ComputerMdmCapability
57
+ # - Jamf::OAPISchemas::EnrollmentMethod
58
+ # - Jamf::OAPISchemas::V1Site
59
+ # - Jamf::OAPISchemas::ComputerExtensionAttribute
60
+ #
61
+ # Endpoints and Privileges:
62
+ # API endpoints and HTTP operations that use this object
63
+ # model, and the Jamf Pro privileges needed to access them.
64
+ #
65
+ #
66
+ #
67
+ class ComputerGeneral < Jamf::OAPIObject
68
+
69
+
70
+
71
+ OAPI_PROPERTIES = {
72
+
73
+ # @!attribute name
74
+ # @return [String]
75
+ name: {
76
+ class: :string,
77
+ min_length: 1
78
+ },
79
+
80
+ # @!attribute lastIpAddress
81
+ # @return [String]
82
+ lastIpAddress: {
83
+ class: :string
84
+ },
85
+
86
+ # @!attribute lastReportedIp
87
+ # @return [String]
88
+ lastReportedIp: {
89
+ class: :string
90
+ },
91
+
92
+ # @!attribute jamfBinaryVersion
93
+ # @return [String]
94
+ jamfBinaryVersion: {
95
+ class: :string
96
+ },
97
+
98
+ # @!attribute platform
99
+ # @return [String]
100
+ platform: {
101
+ class: :string
102
+ },
103
+
104
+ # @!attribute barcode1
105
+ # @return [String]
106
+ barcode1: {
107
+ class: :string
108
+ },
109
+
110
+ # @!attribute barcode2
111
+ # @return [String]
112
+ barcode2: {
113
+ class: :string
114
+ },
115
+
116
+ # @!attribute assetTag
117
+ # @return [String]
118
+ assetTag: {
119
+ class: :string
120
+ },
121
+
122
+ # @!attribute remoteManagement
123
+ # @return [Jamf::OAPISchemas::ComputerRemoteManagement]
124
+ remoteManagement: {
125
+ class: Jamf::OAPISchemas::ComputerRemoteManagement
126
+ },
127
+
128
+ # @!attribute supervised
129
+ # @return [Boolean]
130
+ supervised: {
131
+ class: :boolean
132
+ },
133
+
134
+ # @!attribute mdmCapable
135
+ # @return [Jamf::OAPISchemas::ComputerMdmCapability]
136
+ mdmCapable: {
137
+ class: Jamf::OAPISchemas::ComputerMdmCapability
138
+ },
139
+
140
+ # @!attribute reportDate
141
+ # @return [Jamf::Timestamp]
142
+ reportDate: {
143
+ class: Jamf::Timestamp,
144
+ format: 'date-time'
145
+ },
146
+
147
+ # @!attribute lastContactTime
148
+ # @return [Jamf::Timestamp]
149
+ lastContactTime: {
150
+ class: Jamf::Timestamp,
151
+ format: 'date-time'
152
+ },
153
+
154
+ # @!attribute lastCloudBackupDate
155
+ # @return [Jamf::Timestamp]
156
+ lastCloudBackupDate: {
157
+ class: Jamf::Timestamp,
158
+ format: 'date-time'
159
+ },
160
+
161
+ # @!attribute lastEnrolledDate
162
+ # @return [Jamf::Timestamp]
163
+ lastEnrolledDate: {
164
+ class: Jamf::Timestamp,
165
+ format: 'date-time'
166
+ },
167
+
168
+ # @!attribute mdmProfileExpiration
169
+ # @return [Jamf::Timestamp]
170
+ mdmProfileExpiration: {
171
+ class: Jamf::Timestamp,
172
+ format: 'date-time'
173
+ },
174
+
175
+ # @!attribute initialEntryDate
176
+ # @return [String]
177
+ initialEntryDate: {
178
+ class: :string,
179
+ format: 'date'
180
+ },
181
+
182
+ # @!attribute distributionPoint
183
+ # @return [String]
184
+ distributionPoint: {
185
+ class: :string
186
+ },
187
+
188
+ # @!attribute enrollmentMethod
189
+ # @return [Jamf::OAPISchemas::EnrollmentMethod]
190
+ enrollmentMethod: {
191
+ class: Jamf::OAPISchemas::EnrollmentMethod
192
+ },
193
+
194
+ # @!attribute site
195
+ # @return [Jamf::OAPISchemas::V1Site]
196
+ site: {
197
+ class: Jamf::OAPISchemas::V1Site
198
+ },
199
+
200
+ # @!attribute itunesStoreAccountActive
201
+ # @return [Boolean]
202
+ itunesStoreAccountActive: {
203
+ class: :boolean
204
+ },
205
+
206
+ # @!attribute enrolledViaAutomatedDeviceEnrollment
207
+ # @return [Boolean]
208
+ enrolledViaAutomatedDeviceEnrollment: {
209
+ class: :boolean
210
+ },
211
+
212
+ # @!attribute userApprovedMdm
213
+ # @return [Boolean]
214
+ userApprovedMdm: {
215
+ class: :boolean
216
+ },
217
+
218
+ # @!attribute declarativeDeviceManagementEnabled
219
+ # @return [Boolean]
220
+ declarativeDeviceManagementEnabled: {
221
+ class: :boolean
222
+ },
223
+
224
+ # @!attribute extensionAttributes
225
+ # @return [Array<Jamf::OAPISchemas::ComputerExtensionAttribute>]
226
+ extensionAttributes: {
227
+ class: Jamf::OAPISchemas::ComputerExtensionAttribute,
228
+ multi: true
229
+ },
230
+
231
+ # @!attribute [r] managementId
232
+ # @return [String]
233
+ managementId: {
234
+ class: :string,
235
+ readonly: true
236
+ }
237
+
238
+ } # end OAPI_PROPERTIES
239
+
240
+ end # class ComputerGeneral
241
+
242
+ end # module OAPISchemas
243
+
244
+ end # module Jamf
@@ -0,0 +1,264 @@
1
+ # Copyright 2025 Pixar
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "Apache License")
4
+ # with the following modification; you may not use this file except in
5
+ # compliance with the Apache License and the following modification to it:
6
+ # Section 6. Trademarks. is deleted and replaced with:
7
+ #
8
+ # 6. Trademarks. This License does not grant permission to use the trade
9
+ # names, trademarks, service marks, or product names of the Licensor
10
+ # and its affiliates, except as required to comply with Section 4(c) of
11
+ # the License and to reproduce the content of the NOTICE file.
12
+ #
13
+ # You may obtain a copy of the Apache License at
14
+ #
15
+ # http://www.apache.org/licenses/LICENSE-2.0
16
+ #
17
+ # Unless required by applicable law or agreed to in writing, software
18
+ # distributed under the Apache License with the above modification is
19
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
+ # KIND, either express or implied. See the Apache License for the specific
21
+ # language governing permissions and limitations under the Apache License.
22
+ #
23
+
24
+
25
+ module Jamf
26
+
27
+ # This module is the namespace for all objects defined
28
+ # in the OAPI JSON schema under the components => schemas key
29
+ #
30
+ module OAPISchemas
31
+
32
+
33
+ # OAPI Object Model and Enums for: ComputerHardware
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.9.2-t1726753918
39
+ #
40
+ # This class may be used directly, e.g instances of other classes may
41
+ # use instances of this class as one of their own properties/attributes.
42
+ #
43
+ # It may also be used as a superclass when implementing Jamf Pro API
44
+ # Resources in ruby-jss. The subclasses include appropriate mixins, and
45
+ # should expand on the basic functionality provided here.
46
+ #
47
+ #
48
+ # Container Objects:
49
+ # Other object models that use this model as the value in one
50
+ # of their attributes.
51
+ # - Jamf::OAPISchemas::ComputerInventory
52
+ #
53
+ # Sub Objects:
54
+ # Other object models used by this model's attributes.
55
+ # - Jamf::OAPISchemas::ComputerExtensionAttribute
56
+ #
57
+ # Endpoints and Privileges:
58
+ # API endpoints and HTTP operations that use this object
59
+ # model, and the Jamf Pro privileges needed to access them.
60
+ #
61
+ #
62
+ #
63
+ class ComputerHardware < Jamf::OAPIObject
64
+
65
+
66
+
67
+ OAPI_PROPERTIES = {
68
+
69
+ # @!attribute [r] make
70
+ # @return [String]
71
+ make: {
72
+ class: :string,
73
+ readonly: true
74
+ },
75
+
76
+ # @!attribute [r] model
77
+ # @return [String]
78
+ model: {
79
+ class: :string,
80
+ readonly: true
81
+ },
82
+
83
+ # @!attribute [r] modelIdentifier
84
+ # @return [String]
85
+ modelIdentifier: {
86
+ class: :string,
87
+ readonly: true
88
+ },
89
+
90
+ # @!attribute [r] serialNumber
91
+ # @return [String]
92
+ serialNumber: {
93
+ class: :string,
94
+ readonly: true
95
+ },
96
+
97
+ # Processor Speed in MHz.
98
+ # @!attribute [r] processorSpeedMhz
99
+ # @return [Integer]
100
+ processorSpeedMhz: {
101
+ class: :integer,
102
+ format: 'int64',
103
+ readonly: true
104
+ },
105
+
106
+ # @!attribute [r] processorCount
107
+ # @return [Integer]
108
+ processorCount: {
109
+ class: :integer,
110
+ readonly: true
111
+ },
112
+
113
+ # @!attribute [r] coreCount
114
+ # @return [Integer]
115
+ coreCount: {
116
+ class: :integer,
117
+ readonly: true
118
+ },
119
+
120
+ # @!attribute [r] processorType
121
+ # @return [String]
122
+ processorType: {
123
+ class: :string,
124
+ readonly: true
125
+ },
126
+
127
+ # @!attribute [r] processorArchitecture
128
+ # @return [String]
129
+ processorArchitecture: {
130
+ class: :string,
131
+ readonly: true
132
+ },
133
+
134
+ # @!attribute [r] busSpeedMhz
135
+ # @return [Integer]
136
+ busSpeedMhz: {
137
+ class: :integer,
138
+ format: 'int64',
139
+ readonly: true
140
+ },
141
+
142
+ # Cache Size in KB.
143
+ # @!attribute [r] cacheSizeKilobytes
144
+ # @return [Integer]
145
+ cacheSizeKilobytes: {
146
+ class: :integer,
147
+ format: 'int64',
148
+ readonly: true
149
+ },
150
+
151
+ # @!attribute networkAdapterType
152
+ # @return [String]
153
+ networkAdapterType: {
154
+ class: :string
155
+ },
156
+
157
+ # @!attribute macAddress
158
+ # @return [String]
159
+ macAddress: {
160
+ class: :string
161
+ },
162
+
163
+ # @!attribute altNetworkAdapterType
164
+ # @return [String]
165
+ altNetworkAdapterType: {
166
+ class: :string
167
+ },
168
+
169
+ # @!attribute altMacAddress
170
+ # @return [String]
171
+ altMacAddress: {
172
+ class: :string
173
+ },
174
+
175
+ # Total RAM Size in MB.
176
+ # @!attribute [r] totalRamMegabytes
177
+ # @return [Integer]
178
+ totalRamMegabytes: {
179
+ class: :integer,
180
+ format: 'int64',
181
+ readonly: true
182
+ },
183
+
184
+ # Available RAM slots.
185
+ # @!attribute [r] openRamSlots
186
+ # @return [Integer]
187
+ openRamSlots: {
188
+ class: :integer,
189
+ readonly: true
190
+ },
191
+
192
+ # Remaining percentage of battery power.
193
+ # @!attribute [r] batteryCapacityPercent
194
+ # @return [Integer]
195
+ batteryCapacityPercent: {
196
+ class: :integer,
197
+ readonly: true,
198
+ minimum: 0,
199
+ maximum: 100
200
+ },
201
+
202
+ # @!attribute [r] smcVersion
203
+ # @return [String]
204
+ smcVersion: {
205
+ class: :string,
206
+ readonly: true
207
+ },
208
+
209
+ # @!attribute [r] nicSpeed
210
+ # @return [String]
211
+ nicSpeed: {
212
+ class: :string,
213
+ readonly: true
214
+ },
215
+
216
+ # @!attribute [r] opticalDrive
217
+ # @return [String]
218
+ opticalDrive: {
219
+ class: :string,
220
+ readonly: true
221
+ },
222
+
223
+ # @!attribute [r] bootRom
224
+ # @return [String]
225
+ bootRom: {
226
+ class: :string,
227
+ readonly: true
228
+ },
229
+
230
+ # @!attribute [r] bleCapable
231
+ # @return [Boolean]
232
+ bleCapable: {
233
+ class: :boolean,
234
+ readonly: true
235
+ },
236
+
237
+ # @!attribute [r] supportsIosAppInstalls
238
+ # @return [Boolean]
239
+ supportsIosAppInstalls: {
240
+ class: :boolean,
241
+ readonly: true
242
+ },
243
+
244
+ # @!attribute [r] appleSilicon
245
+ # @return [Boolean]
246
+ appleSilicon: {
247
+ class: :boolean,
248
+ readonly: true
249
+ },
250
+
251
+ # @!attribute extensionAttributes
252
+ # @return [Array<Jamf::OAPISchemas::ComputerExtensionAttribute>]
253
+ extensionAttributes: {
254
+ class: Jamf::OAPISchemas::ComputerExtensionAttribute,
255
+ multi: true
256
+ }
257
+
258
+ } # end OAPI_PROPERTIES
259
+
260
+ end # class ComputerHardware
261
+
262
+ end # module OAPISchemas
263
+
264
+ end # module Jamf
@@ -0,0 +1,81 @@
1
+ # Copyright 2025 Pixar
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "Apache License")
4
+ # with the following modification; you may not use this file except in
5
+ # compliance with the Apache License and the following modification to it:
6
+ # Section 6. Trademarks. is deleted and replaced with:
7
+ #
8
+ # 6. Trademarks. This License does not grant permission to use the trade
9
+ # names, trademarks, service marks, or product names of the Licensor
10
+ # and its affiliates, except as required to comply with Section 4(c) of
11
+ # the License and to reproduce the content of the NOTICE file.
12
+ #
13
+ # You may obtain a copy of the Apache License at
14
+ #
15
+ # http://www.apache.org/licenses/LICENSE-2.0
16
+ #
17
+ # Unless required by applicable law or agreed to in writing, software
18
+ # distributed under the Apache License with the above modification is
19
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
+ # KIND, either express or implied. See the Apache License for the specific
21
+ # language governing permissions and limitations under the Apache License.
22
+ #
23
+
24
+
25
+ module Jamf
26
+
27
+ # This module is the namespace for all objects defined
28
+ # in the OAPI JSON schema under the components => schemas key
29
+ #
30
+ module OAPISchemas
31
+
32
+
33
+ # OAPI Object Model and Enums for: ComputerIbeacon
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.9.2-t1726753918
39
+ #
40
+ # This class may be used directly, e.g instances of other classes may
41
+ # use instances of this class as one of their own properties/attributes.
42
+ #
43
+ # It may also be used as a superclass when implementing Jamf Pro API
44
+ # Resources in ruby-jss. The subclasses include appropriate mixins, and
45
+ # should expand on the basic functionality provided here.
46
+ #
47
+ #
48
+ # Container Objects:
49
+ # Other object models that use this model as the value in one
50
+ # of their attributes.
51
+ # - Jamf::OAPISchemas::ComputerInventory
52
+ #
53
+ # Sub Objects:
54
+ # Other object models used by this model's attributes.
55
+ #
56
+ #
57
+ # Endpoints and Privileges:
58
+ # API endpoints and HTTP operations that use this object
59
+ # model, and the Jamf Pro privileges needed to access them.
60
+ #
61
+ #
62
+ #
63
+ class ComputerIbeacon < Jamf::OAPIObject
64
+
65
+
66
+
67
+ OAPI_PROPERTIES = {
68
+
69
+ # @!attribute name
70
+ # @return [String]
71
+ name: {
72
+ class: :string
73
+ }
74
+
75
+ } # end OAPI_PROPERTIES
76
+
77
+ end # class ComputerIbeacon
78
+
79
+ end # module OAPISchemas
80
+
81
+ end # module Jamf