ruby-jss 1.2.9 → 1.5.1

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 (90) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +196 -1
  3. data/lib/jamf.rb +10 -3
  4. data/lib/jamf/api/abstract_classes/collection_resource.rb +329 -150
  5. data/lib/jamf/api/abstract_classes/generic_reference.rb +9 -1
  6. data/lib/jamf/api/abstract_classes/json_object.rb +107 -83
  7. data/lib/jamf/api/abstract_classes/prestage.rb +55 -30
  8. data/lib/jamf/api/abstract_classes/prestage_skip_setup_items.rb +21 -0
  9. data/lib/jamf/api/abstract_classes/resource.rb +4 -4
  10. data/lib/jamf/api/abstract_classes/singleton_resource.rb +1 -1
  11. data/lib/jamf/api/connection.rb +20 -12
  12. data/lib/jamf/api/connection/api_error.rb +8 -8
  13. data/lib/jamf/api/connection/token.rb +36 -15
  14. data/lib/jamf/api/json_objects/computer_prestage_skip_setup_items.rb +14 -1
  15. data/lib/jamf/api/json_objects/device_enrollment_device.rb +14 -7
  16. data/lib/jamf/api/json_objects/device_enrollment_device_sync_state.rb +81 -0
  17. data/lib/jamf/api/json_objects/locale.rb +59 -0
  18. data/lib/jamf/api/json_objects/md_prestage_skip_setup_items.rb +50 -1
  19. data/lib/jamf/api/json_objects/prestage_location.rb +3 -3
  20. data/lib/jamf/api/json_objects/prestage_purchasing_data.rb +7 -7
  21. data/lib/jamf/api/json_objects/prestage_scope.rb +1 -1
  22. data/lib/jamf/api/{resources/collection_resources → json_objects}/time_zone.rb +9 -23
  23. data/lib/jamf/api/mixins/bulk_deletable.rb +27 -6
  24. data/lib/jamf/api/mixins/change_log.rb +201 -51
  25. data/lib/jamf/api/mixins/filterable.rb +51 -0
  26. data/lib/jamf/api/mixins/pageable.rb +208 -0
  27. data/lib/jamf/api/mixins/sortable.rb +59 -0
  28. data/lib/jamf/api/resources/collection_resources/building.rb +19 -8
  29. data/lib/jamf/api/resources/collection_resources/category.rb +5 -3
  30. data/lib/jamf/api/resources/collection_resources/computer_prestage.rb +11 -4
  31. data/lib/jamf/api/resources/collection_resources/department.rb +1 -1
  32. data/lib/jamf/api/resources/collection_resources/device_enrollment.rb +13 -13
  33. data/lib/jamf/api/resources/collection_resources/inventory_preload_record.rb +11 -3
  34. data/lib/jamf/api/resources/collection_resources/mobile_device_prestage.rb +24 -22
  35. data/lib/jamf/api/resources/collection_resources/script.rb +61 -25
  36. data/lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb +15 -5
  37. data/lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb +14 -14
  38. data/lib/jamf/api/resources/singleton_resources/locales.rb +155 -0
  39. data/lib/jamf/api/resources/singleton_resources/time_zones.rb +213 -0
  40. data/lib/jamf/configuration.rb +7 -9
  41. data/lib/jamf/ruby_extensions.rb +1 -0
  42. data/lib/jamf/ruby_extensions/array.rb +1 -1
  43. data/lib/jamf/ruby_extensions/array/utils.rb +3 -3
  44. data/lib/jamf/ruby_extensions/dig.rb +52 -0
  45. data/lib/jamf/validate.rb +63 -24
  46. data/lib/jamf/version.rb +1 -1
  47. data/lib/jss.rb +4 -1
  48. data/lib/jss/api_connection.rb +110 -397
  49. data/lib/jss/api_object.rb +16 -13
  50. data/lib/jss/api_object/advanced_search.rb +27 -26
  51. data/lib/jss/api_object/app_store_country_codes.rb +298 -0
  52. data/lib/jss/api_object/categorizable.rb +1 -1
  53. data/lib/jss/api_object/computer.rb +5 -1
  54. data/lib/jss/api_object/configuration_profile.rb +34 -3
  55. data/lib/jss/api_object/directory_binding.rb +273 -0
  56. data/lib/jss/api_object/directory_binding_type.rb +96 -0
  57. data/lib/jss/api_object/directory_binding_type/active_directory.rb +539 -0
  58. data/lib/jss/api_object/directory_binding_type/admitmac.rb +594 -0
  59. data/lib/jss/api_object/directory_binding_type/centrify.rb +226 -0
  60. data/lib/jss/api_object/directory_binding_type/open_directory.rb +178 -0
  61. data/lib/jss/api_object/directory_binding_type/powerbroker_identity_services.rb +73 -0
  62. data/lib/jss/api_object/disk_encryption_configurations.rb +114 -0
  63. data/lib/jss/api_object/distribution_point.rb +97 -37
  64. data/lib/jss/api_object/dock_item.rb +143 -0
  65. data/lib/jss/api_object/ebook.rb +1 -2
  66. data/lib/jss/api_object/extendable.rb +68 -32
  67. data/lib/jss/api_object/extension_attribute.rb +4 -3
  68. data/lib/jss/api_object/group.rb +33 -2
  69. data/lib/jss/api_object/mac_application.rb +107 -8
  70. data/lib/jss/api_object/mobile_device.rb +3 -0
  71. data/lib/jss/api_object/mobile_device_application.rb +12 -0
  72. data/lib/jss/api_object/network_segment.rb +195 -70
  73. data/lib/jss/api_object/package.rb +105 -40
  74. data/lib/jss/api_object/patch_source.rb +10 -9
  75. data/lib/jss/api_object/policy.rb +491 -7
  76. data/lib/jss/api_object/printer.rb +446 -0
  77. data/lib/jss/api_object/scopable.rb +10 -15
  78. data/lib/jss/api_object/scopable/scope.rb +386 -71
  79. data/lib/jss/api_object/self_servable.rb +17 -9
  80. data/lib/jss/api_object/uploadable.rb +1 -1
  81. data/lib/jss/api_object/user.rb +42 -1
  82. data/lib/jss/api_object/vpp_account.rb +209 -0
  83. data/lib/jss/api_object/vppable.rb +169 -13
  84. data/lib/jss/composer.rb +1 -1
  85. data/lib/jss/exceptions.rb +3 -0
  86. data/lib/jss/server.rb +15 -0
  87. data/lib/jss/utility.rb +8 -22
  88. data/lib/jss/validate.rb +53 -10
  89. data/lib/jss/version.rb +1 -1
  90. metadata +50 -22
@@ -147,7 +147,7 @@ module JSS
147
147
 
148
148
  ### now build the pkg
149
149
  begin
150
- it_built = system "#{PKGBUILD} --identifier '#{pkg_id}' --version '#{version}' --ownership #{pkg_ownership} --install-location / --root '#{root}' #{signing} #{comp_plist_arg} '#{pkg_out}' "
150
+ it_built = system "#{PKGBUILD} --identifier '#{pkg_id}' --version '#{version}' --ownership #{pkg_ownership} --install-location / --root '#{root}' #{signing} #{comp_plist_arg} '#{pkg_out}'"
151
151
 
152
152
  raise 'There was an error building the .pkg' unless it_built
153
153
  ensure
@@ -87,6 +87,9 @@ module JSS
87
87
  ###
88
88
  class AuthenticationError < RuntimeError; end
89
89
 
90
+ ###
91
+ class AuthorizationError < RuntimeError ; end
92
+
90
93
  ### ConflictError - raise this when
91
94
  ### attempts to PUT or PUSH to the API
92
95
  ### result in a 409 Conflict http error.
@@ -110,6 +110,21 @@ module JSS
110
110
  @act_code_data[:code]
111
111
  end
112
112
 
113
+ # Update the activation code and organization name for this server
114
+ #
115
+ # @param org: [String] the organization to which the server is licensed
116
+ # @param code: [String ] the activation code for the server licence
117
+ #
118
+ # @return [void]
119
+ def update_activation_code(org:, code:)
120
+ xml = REXML::Document.new JSS::APIConnection::XML_HEADER
121
+ acode = xml.add_element ACTIVATION_CODE_KEY.to_s
122
+ acode.add_element('organization_name').text = org
123
+ acode.add_element('code').text = code
124
+
125
+ @api.put_rsrc ACTIVATION_CODE_RSRC, xml.to_s
126
+ end
127
+
113
128
  # Remove the api object from
114
129
  # the instance_variables used to create
115
130
  # pretty-print (pp) output.
@@ -32,7 +32,7 @@ module JSS
32
32
 
33
33
  # Converts an OS Version into an Array of higher OS versions.
34
34
  #
35
- # It's unlikely that this library will still be in use as-is by the release of OS X 10.19.15.
35
+ # It's unlikely that this library will still be in use as-is by the release of OS X 10.30.
36
36
  # Hopefully well before then JAMF will implement a "minimum OS" in the JSS itself.
37
37
  #
38
38
  # @param min_os [String] the mimimum OS version to expand, e.g. ">=10.6.7" or "10.6.7"
@@ -43,26 +43,12 @@ module JSS
43
43
  # JSS.expand_min_os ">=10.6.7" # => returns this array
44
44
  # # ["10.6.7",
45
45
  # # "10.6.8",
46
- # # "10.6.9",
47
- # # "10.6.10",
48
- # # "10.6.11",
49
- # # "10.6.12",
50
- # # "10.6.13",
51
- # # "10.6.14",
52
- # # "10.6.15",
46
+ # # ...
47
+ # # "10.6.25",
53
48
  # # "10.7.x",
54
49
  # # "10.8.x",
55
- # # "10.9.x",
56
- # # "10.10.x",
57
- # # "10.11.x",
58
- # # "10.12.x",
59
- # # "10.13.x",
60
- # # "10.14.x",
61
- # # "10.15.x",
62
- # # "10.16.x",
63
- # # "10.17.x",
64
- # # "10.18.x",
65
- # # "10.19.x"]
50
+ # # ...
51
+ # # "10.30.x"]
66
52
  #
67
53
  #
68
54
  def self.expand_min_os(min_os)
@@ -80,14 +66,14 @@ module JSS
80
66
  # (and hope apple doesn't do more than 15 maint releases for an OS)
81
67
  else
82
68
  ok_oses = []
83
- (maint.to_i..15).each do |m|
69
+ (maint.to_i..25).each do |m|
84
70
  ok_oses << maj + '.' + min + '.' + m.to_s
85
71
  end # each m
86
72
  end
87
73
 
88
74
  # now account for all OS X versions starting with 10.
89
- # up to at least 10.19.x
90
- ((min.to_i + 1)..19).each do |v|
75
+ # up to 10.30.x
76
+ ((min.to_i + 1)..30).each do |v|
91
77
  ok_oses << maj + '.' + v.to_s + '.x'
92
78
  end # each v
93
79
  ok_oses
@@ -111,8 +111,8 @@ module JSS
111
111
 
112
112
  # Confirm that the given value is a boolean value, accepting
113
113
  # strings and symbols and returning real booleans as needed
114
- # Accepts: true, false, 'true', 'false', :true, :false, 'yes', 'no', :yes,
115
- # or :no (all Strings and Symbols are case insensitive)
114
+ # Accepts: true, false, 'true', 'false', 'yes', 'no', 't','f', 'y', or 'n'
115
+ # as strings or symbols, case insensitive
116
116
  #
117
117
  # TODO: use this throughout ruby-jss
118
118
  #
@@ -123,11 +123,11 @@ module JSS
123
123
  # @return [Boolean] the valid boolean
124
124
  #
125
125
  def self.boolean(bool, msg = nil)
126
- msg ||= 'Value must be boolean true or false'
127
126
  return bool if JSS::TRUE_FALSE.include? bool
128
- return true if bool.to_s =~ /^(true|yes)$/i
129
- return false if bool.to_s =~ /^(false|no)$/i
127
+ return true if bool.to_s =~ /^(t(rue)?|y(es)?)$/i
128
+ return false if bool.to_s =~ /^(f(alse)?|no?)$/i
130
129
 
130
+ msg ||= 'Value must be boolean true or false, or an equivalent string or symbol'
131
131
  raise JSS::InvalidDataError, msg
132
132
  end
133
133
 
@@ -176,10 +176,10 @@ module JSS
176
176
  # @return [String] the valid uuid string
177
177
  #
178
178
  def self.uuid(val, msg = nil)
179
- msg ||= 'value must be valid uuid'
180
- raise JSS::InvalidDataError, msg unless val.is_a?(String) && val =~ UUID_RE
179
+ return val if val.is_a?(String) && val =~ UUID_RE
181
180
 
182
- val
181
+ msg ||= 'value must be valid uuid'
182
+ raise JSS::InvalidDataError, msg
183
183
  end
184
184
 
185
185
  # validate that the given value is an integer in the JSS::IBeacon::MAJOR_MINOR_RANGE
@@ -191,13 +191,56 @@ module JSS
191
191
  # @return [String] the valid integer
192
192
  #
193
193
  def self.ibeacon_major_minor(val, msg = nil)
194
- msg ||= "value must be an integer in the range #{JSS::IBeacon::MAJOR_MINOR_RANGE}"
195
194
  val = val.to_i if val.is_a?(String) && val.jss_integer?
196
195
  ok = val.is_a? Integer
197
196
  ok = JSS::IBeacon::MAJOR_MINOR_RANGE.include? val if ok
197
+ return val if ok
198
+
199
+ msg ||= "value must be an integer in the range #{JSS::IBeacon::MAJOR_MINOR_RANGE}"
198
200
  raise JSS::InvalidDataError, msg unless ok
201
+ end
199
202
 
200
- val
203
+ # validate a country name or code from JSS::APP_STORE_COUNTRY_CODES
204
+ # returning the validated code, or raising an error
205
+ #
206
+ # @param country[String] The country name or code
207
+ #
208
+ # @param msg[String] A custom error message when the value is invalid
209
+ #
210
+ # @return [String] the valid two-letter country code
211
+ #
212
+ def self.app_store_country_code(country, msg = nil)
213
+ country = country.to_s.upcase
214
+ return country if JSS::APP_STORE_COUNTRY_CODES.value? country
215
+
216
+ JSS::APP_STORE_COUNTRY_CODES.each do |name, code|
217
+ return code if name.upcase == country
218
+ end
219
+
220
+ msg ||= 'Unknown country name or code. See JSS::APP_STORE_COUNTRY_CODES or JSS.country_code_match(str)'
221
+ raise JSS::InvalidDataError, msg
222
+ end
223
+
224
+ # validate an email address - must match the RegEx /^\S+@\S+\.\S+$/
225
+ # i.e.:
226
+ # 1 or more non-whitespace chars, followed by
227
+ # an @ character, followed by
228
+ # 1 or more non-whitespace chars, followed by
229
+ # a dot, followed by
230
+ # 1 or more non-whitespace chars
231
+ #
232
+ # @param email[String] The email address
233
+ #
234
+ # @param msg[String] A custom error message when the value is invalid
235
+ #
236
+ # @return [String] the validly formatted email address
237
+ #
238
+ def self.email_address(email, msg = nil)
239
+ msg ||= "'#{email}' is not formatted as a valid email address"
240
+ email = email.to_s
241
+ return email if email =~ /^\S+@\S+\.\S+$/
242
+
243
+ raise JSS::InvalidDataError, msg
201
244
  end
202
245
 
203
246
  end # module validate
@@ -27,6 +27,6 @@
27
27
  module JSS
28
28
 
29
29
  ### The version of ruby-jss
30
- VERSION = '1.2.9'.freeze
30
+ VERSION = '1.5.1'.freeze
31
31
 
32
32
  end # module
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-jss
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.9
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Lasell
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-04-13 00:00:00.000000000 Z
12
+ date: 2020-11-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: plist
@@ -46,39 +46,45 @@ dependencies:
46
46
  - !ruby/object:Gem::Version
47
47
  version: 2.9.12
48
48
  - !ruby/object:Gem::Dependency
49
- name: rest-client
49
+ name: faraday
50
50
  requirement: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 2.0.0
55
- - - "<"
54
+ version: 1.0.0
55
+ - - "<="
56
56
  - !ruby/object:Gem::Version
57
- version: '2.1'
57
+ version: 1.0.1
58
58
  type: :runtime
59
59
  prerelease: false
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
62
  - - ">="
63
63
  - !ruby/object:Gem::Version
64
- version: 2.0.0
65
- - - "<"
64
+ version: 1.0.0
65
+ - - "<="
66
66
  - !ruby/object:Gem::Version
67
- version: '2.1'
67
+ version: 1.0.1
68
68
  - !ruby/object:Gem::Dependency
69
- name: net-ldap
69
+ name: faraday_middleware
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - "~>"
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 1.0.0
75
+ - - "<="
73
76
  - !ruby/object:Gem::Version
74
- version: '0.16'
77
+ version: 1.0.1
75
78
  type: :runtime
76
79
  prerelease: false
77
80
  version_requirements: !ruby/object:Gem::Requirement
78
81
  requirements:
79
- - - "~>"
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 1.0.0
85
+ - - "<="
80
86
  - !ruby/object:Gem::Version
81
- version: '0.16'
87
+ version: 1.0.1
82
88
  - !ruby/object:Gem::Dependency
83
89
  name: immutable-struct
84
90
  requirement: !ruby/object:Gem::Requirement
@@ -120,11 +126,13 @@ dependencies:
120
126
  - !ruby/object:Gem::Version
121
127
  version: '1.1'
122
128
  description: |2
123
- The ruby-jss gem provides the JSS module, a framework for interacting with the REST API
124
- of the Jamf Software Server (JSS), the core of Jamf Pro, an enterprise/education
125
- tool for managing Apple devices, from Jamf Software LLC.
126
- JSS API objects are implemented as Ruby classes, and interact with each oher to
127
- allow simpler automation of Jamf-related tasks. For details see the README file."
129
+ The ruby-jss gem provides native ruby access to the REST APIs of Jamf Pro,
130
+ an enterprise/education tool for managing Apple devices, from jamf.com.
131
+ The JSS module provides access to the 'Classic' API, while the Jamf module
132
+ provides access to the more modern 'Jamf Pro' API. Jamf Pro objects are
133
+ implemented as classes and, within each module, can interact with each other.
134
+ The underlying data transfer using JSON or XML is handled automatically
135
+ under the hood to allow simpler, intuitive automation of Jamf-related Tasks.
128
136
  email: ruby-jss@pixar.com
129
137
  executables:
130
138
  - cgrouper
@@ -171,6 +179,7 @@ files:
171
179
  - lib/jamf/api/json_objects/country.rb
172
180
  - lib/jamf/api/json_objects/criterion.rb
173
181
  - lib/jamf/api/json_objects/device_enrollment_device.rb
182
+ - lib/jamf/api/json_objects/device_enrollment_device_sync_state.rb
174
183
  - lib/jamf/api/json_objects/device_enrollment_sync_status.rb
175
184
  - lib/jamf/api/json_objects/extension_attribute_value.rb
176
185
  - lib/jamf/api/json_objects/installed_application.rb
@@ -180,6 +189,7 @@ files:
180
189
  - lib/jamf/api/json_objects/installed_provisioning_profile.rb
181
190
  - lib/jamf/api/json_objects/inventory_preload_extension_attribute.rb
182
191
  - lib/jamf/api/json_objects/ios_details.rb
192
+ - lib/jamf/api/json_objects/locale.rb
183
193
  - lib/jamf/api/json_objects/location.rb
184
194
  - lib/jamf/api/json_objects/md_prestage_name.rb
185
195
  - lib/jamf/api/json_objects/md_prestage_names.rb
@@ -192,15 +202,19 @@ files:
192
202
  - lib/jamf/api/json_objects/prestage_scope.rb
193
203
  - lib/jamf/api/json_objects/prestage_sync_status.rb
194
204
  - lib/jamf/api/json_objects/purchasing_data.rb
205
+ - lib/jamf/api/json_objects/time_zone.rb
195
206
  - lib/jamf/api/mixins/abstract.rb
196
207
  - lib/jamf/api/mixins/bulk_deletable.rb
197
208
  - lib/jamf/api/mixins/change_log.rb
198
209
  - lib/jamf/api/mixins/extendable.rb
210
+ - lib/jamf/api/mixins/filterable.rb
199
211
  - lib/jamf/api/mixins/immutable.rb
200
212
  - lib/jamf/api/mixins/locatable.rb
201
213
  - lib/jamf/api/mixins/lockable.rb
214
+ - lib/jamf/api/mixins/pageable.rb
202
215
  - lib/jamf/api/mixins/referable.rb
203
216
  - lib/jamf/api/mixins/searchable.rb
217
+ - lib/jamf/api/mixins/sortable.rb
204
218
  - lib/jamf/api/mixins/uncreatable.rb
205
219
  - lib/jamf/api/mixins/undeletable.rb
206
220
  - lib/jamf/api/resources/collection_resources/account.rb
@@ -218,11 +232,12 @@ files:
218
232
  - lib/jamf/api/resources/collection_resources/mobile_device_prestage.rb
219
233
  - lib/jamf/api/resources/collection_resources/script.rb
220
234
  - lib/jamf/api/resources/collection_resources/site.rb
221
- - lib/jamf/api/resources/collection_resources/time_zone.rb
222
235
  - lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb
223
236
  - lib/jamf/api/resources/singleton_resources/authorization.rb
224
237
  - lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb
238
+ - lib/jamf/api/resources/singleton_resources/locales.rb
225
239
  - lib/jamf/api/resources/singleton_resources/reenrollment_settings.rb
240
+ - lib/jamf/api/resources/singleton_resources/time_zones.rb
226
241
  - lib/jamf/client.rb
227
242
  - lib/jamf/client/jamf_binary.rb
228
243
  - lib/jamf/client/jamf_helper.rb
@@ -235,6 +250,7 @@ files:
235
250
  - lib/jamf/ruby_extensions/array.rb
236
251
  - lib/jamf/ruby_extensions/array/predicates.rb
237
252
  - lib/jamf/ruby_extensions/array/utils.rb
253
+ - lib/jamf/ruby_extensions/dig.rb
238
254
  - lib/jamf/ruby_extensions/filetest.rb
239
255
  - lib/jamf/ruby_extensions/filetest/predicates.rb
240
256
  - lib/jamf/ruby_extensions/hash.rb
@@ -263,6 +279,7 @@ files:
263
279
  - lib/jss/api_object/advanced_search/advanced_computer_search.rb
264
280
  - lib/jss/api_object/advanced_search/advanced_mobile_device_search.rb
265
281
  - lib/jss/api_object/advanced_search/advanced_user_search.rb
282
+ - lib/jss/api_object/app_store_country_codes.rb
266
283
  - lib/jss/api_object/building.rb
267
284
  - lib/jss/api_object/categorizable.rb
268
285
  - lib/jss/api_object/category.rb
@@ -277,7 +294,16 @@ files:
277
294
  - lib/jss/api_object/criteriable/criteria.rb
278
295
  - lib/jss/api_object/criteriable/criterion.rb
279
296
  - lib/jss/api_object/department.rb
297
+ - lib/jss/api_object/directory_binding.rb
298
+ - lib/jss/api_object/directory_binding_type.rb
299
+ - lib/jss/api_object/directory_binding_type/active_directory.rb
300
+ - lib/jss/api_object/directory_binding_type/admitmac.rb
301
+ - lib/jss/api_object/directory_binding_type/centrify.rb
302
+ - lib/jss/api_object/directory_binding_type/open_directory.rb
303
+ - lib/jss/api_object/directory_binding_type/powerbroker_identity_services.rb
304
+ - lib/jss/api_object/disk_encryption_configurations.rb
280
305
  - lib/jss/api_object/distribution_point.rb
306
+ - lib/jss/api_object/dock_item.rb
281
307
  - lib/jss/api_object/ebook.rb
282
308
  - lib/jss/api_object/extendable.rb
283
309
  - lib/jss/api_object/extension_attribute.rb
@@ -321,6 +347,7 @@ files:
321
347
  - lib/jss/api_object/peripheral.rb
322
348
  - lib/jss/api_object/peripheral_type.rb
323
349
  - lib/jss/api_object/policy.rb
350
+ - lib/jss/api_object/printer.rb
324
351
  - lib/jss/api_object/purchasable.rb
325
352
  - lib/jss/api_object/removable_macaddr.rb
326
353
  - lib/jss/api_object/restricted_software.rb
@@ -335,6 +362,7 @@ files:
335
362
  - lib/jss/api_object/updatable.rb
336
363
  - lib/jss/api_object/uploadable.rb
337
364
  - lib/jss/api_object/user.rb
365
+ - lib/jss/api_object/vpp_account.rb
338
366
  - lib/jss/api_object/vppable.rb
339
367
  - lib/jss/api_object/webhook.rb
340
368
  - lib/jss/client.rb
@@ -394,7 +422,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
394
422
  requirements:
395
423
  - - ">="
396
424
  - !ruby/object:Gem::Version
397
- version: 2.0.0
425
+ version: 2.3.0
398
426
  required_rubygems_version: !ruby/object:Gem::Requirement
399
427
  requirements:
400
428
  - - ">="
@@ -404,5 +432,5 @@ requirements: []
404
432
  rubygems_version: 3.0.3
405
433
  signing_key:
406
434
  specification_version: 4
407
- summary: A Ruby interface to the Jamf Pro REST API
435
+ summary: A Ruby interface to the Jamf Pro REST APIs
408
436
  test_files: []