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
@@ -24,6 +24,8 @@
24
24
 
25
25
  module Jamf
26
26
 
27
+ # @deprecated June 2025, Please use the {Jamf::ManagedSoftwareUpdates} module instead.
28
+ #
27
29
  # This module should be mixed in to Jamf::Computer and Jamf::ComputerGroup
28
30
  #
29
31
  # It provides access to the macos-managed-software-updates JPAPI resource for
@@ -59,6 +59,9 @@ module Jamf
59
59
  # You Have Been Warned!
60
60
  NON_UNIQUE_IDENTIFIERS = %i[displayName].freeze
61
61
 
62
+ # The name of the attribute that holds the object's name
63
+ OBJECT_NAME_ATTR = :displayName
64
+
62
65
  # Class Methods
63
66
  #####################################
64
67
  module ClassMethods
@@ -0,0 +1,123 @@
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: AccountGroup
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.6.1-t1718634702
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::Authorization
52
+ # - Jamf::OAPISchemas::AuthorizationV1
53
+ #
54
+ # Sub Objects:
55
+ # Other object models used by this model's attributes.
56
+ #
57
+ #
58
+ # Endpoints and Privileges:
59
+ # API endpoints and HTTP operations that use this object
60
+ # model, and the Jamf Pro privileges needed to access them.
61
+ #
62
+ #
63
+ #
64
+ class AccountGroup < Jamf::OAPIObject
65
+
66
+ # Enums used by this class or others
67
+
68
+ ACCESS_LEVEL_OPTIONS = [
69
+ 'FullAccess',
70
+ 'SiteAccess',
71
+ 'GroupBasedAccess'
72
+ ]
73
+
74
+ PRIVILEGE_SET_OPTIONS = [
75
+ 'ADMINISTRATOR',
76
+ 'AUDITOR',
77
+ 'ENROLLMENT',
78
+ 'CUSTOM'
79
+ ]
80
+
81
+ OAPI_PROPERTIES = {
82
+
83
+ # @!attribute accessLevel
84
+ # @return [String]
85
+ accessLevel: {
86
+ class: :string,
87
+ enum: ACCESS_LEVEL_OPTIONS
88
+ },
89
+
90
+ # @!attribute privilegeSet
91
+ # @return [String]
92
+ privilegeSet: {
93
+ class: :string,
94
+ enum: PRIVILEGE_SET_OPTIONS
95
+ },
96
+
97
+ # @!attribute siteId
98
+ # @return [Integer]
99
+ siteId: {
100
+ class: :integer
101
+ },
102
+
103
+ # @!attribute privileges
104
+ # @return [Array<String>]
105
+ privileges: {
106
+ class: :string,
107
+ multi: true
108
+ },
109
+
110
+ # @!attribute memberUserIds
111
+ # @return [Array<Integer>]
112
+ memberUserIds: {
113
+ class: :integer,
114
+ multi: true
115
+ }
116
+
117
+ } # end OAPI_PROPERTIES
118
+
119
+ end # class AccountGroup
120
+
121
+ end # module OAPISchemas
122
+
123
+ end # module Jamf
@@ -0,0 +1,105 @@
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: AccountPreferencesV1
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.6.1-t1718634702
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::AuthAccountV1
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 AccountPreferencesV1 < Jamf::OAPIObject
64
+
65
+
66
+
67
+ OAPI_PROPERTIES = {
68
+
69
+ # @!attribute language
70
+ # @return [String]
71
+ language: {
72
+ class: :string
73
+ },
74
+
75
+ # @!attribute dateFormat
76
+ # @return [String]
77
+ dateFormat: {
78
+ class: :string
79
+ },
80
+
81
+ # @!attribute region
82
+ # @return [String]
83
+ region: {
84
+ class: :string
85
+ },
86
+
87
+ # @!attribute timezone
88
+ # @return [String]
89
+ timezone: {
90
+ class: :string
91
+ },
92
+
93
+ # @!attribute disableRelativeDates
94
+ # @return [Boolean]
95
+ disableRelativeDates: {
96
+ class: :boolean
97
+ }
98
+
99
+ } # end OAPI_PROPERTIES
100
+
101
+ end # class AccountPreferencesV1
102
+
103
+ end # module OAPISchemas
104
+
105
+ end # module Jamf
@@ -0,0 +1,112 @@
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: AssignRemoveProfileResponseSyncState
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.6.1-t1718634702
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::DeviceEnrollmentDevice
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 AssignRemoveProfileResponseSyncState < Jamf::OAPIObject
64
+
65
+
66
+
67
+ OAPI_PROPERTIES = {
68
+
69
+ # @!attribute id
70
+ # @return [Integer]
71
+ id: {
72
+ class: :j_id,
73
+ identifier: :primary
74
+ },
75
+
76
+ # @!attribute serialNumber
77
+ # @return [String]
78
+ serialNumber: {
79
+ class: :string
80
+ },
81
+
82
+ # @!attribute profileUUID
83
+ # @return [String]
84
+ profileUUID: {
85
+ class: :string
86
+ },
87
+
88
+ # @!attribute syncStatus
89
+ # @return [String]
90
+ syncStatus: {
91
+ class: :string
92
+ },
93
+
94
+ # @!attribute failureCount
95
+ # @return [Integer]
96
+ failureCount: {
97
+ class: :integer
98
+ },
99
+
100
+ # @!attribute timestamp
101
+ # @return [Integer]
102
+ timestamp: {
103
+ class: :integer
104
+ }
105
+
106
+ } # end OAPI_PROPERTIES
107
+
108
+ end # class AssignRemoveProfileResponseSyncState
109
+
110
+ end # module OAPISchemas
111
+
112
+ end # module Jamf
@@ -0,0 +1,159 @@
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: AuthAccountV1
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.6.1-t1718634702
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::AuthorizationV1
52
+ #
53
+ # Sub Objects:
54
+ # Other object models used by this model's attributes.
55
+ # - Jamf::OAPISchemas::AccountPreferencesV1
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 AuthAccountV1 < Jamf::OAPIObject
64
+
65
+ # Enums used by this class or others
66
+
67
+ ACCESS_LEVEL_OPTIONS = [
68
+ 'FullAccess',
69
+ 'SiteAccess',
70
+ 'GroupBasedAccess'
71
+ ]
72
+
73
+ PRIVILEGE_SET_OPTIONS = [
74
+ 'ADMINISTRATOR',
75
+ 'AUDITOR',
76
+ 'ENROLLMENT',
77
+ 'CUSTOM'
78
+ ]
79
+
80
+ OAPI_PROPERTIES = {
81
+
82
+ # @!attribute id
83
+ # @return [String]
84
+ id: {
85
+ class: :j_id,
86
+ identifier: :primary,
87
+ min_length: 1
88
+ },
89
+
90
+ # @!attribute username
91
+ # @return [String]
92
+ username: {
93
+ class: :string
94
+ },
95
+
96
+ # @!attribute realName
97
+ # @return [String]
98
+ realName: {
99
+ class: :string
100
+ },
101
+
102
+ # @!attribute email
103
+ # @return [String]
104
+ email: {
105
+ class: :string
106
+ },
107
+
108
+ # @!attribute preferences
109
+ # @return [Jamf::OAPISchemas::AccountPreferencesV1]
110
+ preferences: {
111
+ class: Jamf::OAPISchemas::AccountPreferencesV1
112
+ },
113
+
114
+ # @!attribute multiSiteAdmin
115
+ # @return [Boolean]
116
+ multiSiteAdmin: {
117
+ class: :boolean
118
+ },
119
+
120
+ # @!attribute accessLevel
121
+ # @return [String]
122
+ accessLevel: {
123
+ class: :string,
124
+ enum: ACCESS_LEVEL_OPTIONS
125
+ },
126
+
127
+ # @!attribute privilegeSet
128
+ # @return [String]
129
+ privilegeSet: {
130
+ class: :string,
131
+ enum: PRIVILEGE_SET_OPTIONS
132
+ },
133
+
134
+ # @!attribute privilegesBySite
135
+ # @return [Hash{Symbol: Array<String> }]
136
+ privilegesBySite: {
137
+ class: :hash
138
+ },
139
+
140
+ # @!attribute groupIds
141
+ # @return [Array<String>]
142
+ groupIds: {
143
+ class: :string,
144
+ multi: true
145
+ },
146
+
147
+ # @!attribute currentSiteId
148
+ # @return [String]
149
+ currentSiteId: {
150
+ class: :string
151
+ }
152
+
153
+ } # end OAPI_PROPERTIES
154
+
155
+ end # class AuthAccountV1
156
+
157
+ end # module OAPISchemas
158
+
159
+ end # module Jamf
@@ -0,0 +1,97 @@
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: AuthenticationType
34
+ #
35
+ #
36
+ #
37
+ # This class was automatically generated from the api/schema
38
+ # URL path on a Jamf Pro server version 11.6.1-t1718634702
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::Authorization
52
+ # - Jamf::OAPISchemas::AuthorizationV1
53
+ # - Jamf::OAPISchemas::CurrentAuthorization
54
+ #
55
+ # Sub Objects:
56
+ # Other object models used by this model's attributes.
57
+ #
58
+ #
59
+ # Endpoints and Privileges:
60
+ # API endpoints and HTTP operations that use this object
61
+ # model, and the Jamf Pro privileges needed to access them.
62
+ #
63
+ #
64
+ #
65
+ class AuthenticationType < Jamf::OAPIObject
66
+
67
+ # Enums used by this class or others
68
+
69
+ VALUE_OPTIONS = [
70
+ 'JSS',
71
+ 'LDAP',
72
+ 'SAML',
73
+ 'INVITE',
74
+ 'NATIVE_APP_API_INTEGRATION',
75
+ 'DEVICE_SIGNATURE',
76
+ 'CLOUD_CONNECTOR',
77
+ 'SYSTEM_ACCOUNT',
78
+ 'USER_ENROLLMENT',
79
+ 'CLIENT_CREDENTIALS'
80
+ ]
81
+
82
+ OAPI_PROPERTIES = {
83
+
84
+ # @!attribute value
85
+ # @return [String]
86
+ value: {
87
+ class: :string,
88
+ enum: VALUE_OPTIONS
89
+ }
90
+
91
+ } # end OAPI_PROPERTIES
92
+
93
+ end # class AuthenticationType
94
+
95
+ end # module OAPISchemas
96
+
97
+ end # module Jamf
@@ -21,6 +21,7 @@
21
21
  # language governing permissions and limitations under the Apache License.
22
22
  #
23
23
 
24
+
24
25
  module Jamf
25
26
 
26
27
  # This module is the namespace for all objects defined
@@ -28,12 +29,13 @@ module Jamf
28
29
  #
29
30
  module OAPISchemas
30
31
 
31
- # OAPI Object Model and Enums for: DeviceEnrollmentDisownBody
32
+
33
+ # OAPI Object Model and Enums for: AvailableUpdates
32
34
  #
33
35
  #
34
36
  #
35
37
  # This class was automatically generated from the api/schema
36
- # URL path on a Jamf Pro server version 11.6.1-t1718634702
38
+ # URL path on a Jamf Pro server version 11.14.1-t1740408745756
37
39
  #
38
40
  # This class may be used directly, e.g instances of other classes may
39
41
  # use instances of this class as one of their own properties/attributes.
@@ -46,33 +48,35 @@ module Jamf
46
48
  # Container Objects:
47
49
  # Other object models that use this model as the value in one
48
50
  # of their attributes.
49
- #
51
+ #
50
52
  #
51
53
  # Sub Objects:
52
54
  # Other object models used by this model's attributes.
53
- #
55
+ #
54
56
  #
55
57
  # Endpoints and Privileges:
56
58
  # API endpoints and HTTP operations that use this object
57
59
  # model, and the Jamf Pro privileges needed to access them.
58
- # - '/v1/device-enrollments/{id}/disown:POST' needs permissions:
59
- # - Update Device Enrollment Program Instances
60
+ # - '/v1/macos-managed-software-updates/available-updates:GET' needs permissions:
61
+ # - Unknown
60
62
  #
61
63
  #
62
- class DeviceEnrollmentDisownBody < Jamf::OAPIObject
64
+ class AvailableUpdates < Jamf::OAPIObject
65
+
66
+
63
67
 
64
68
  OAPI_PROPERTIES = {
65
69
 
66
- # @!attribute devices
70
+ # @!attribute availableUpdates
67
71
  # @return [Array<String>]
68
- devices: {
72
+ availableUpdates: {
69
73
  class: :string,
70
74
  multi: true
71
75
  }
72
76
 
73
77
  } # end OAPI_PROPERTIES
74
78
 
75
- end # class DeviceEnrollmentDisownBody
79
+ end # class AvailableUpdates
76
80
 
77
81
  end # module OAPISchemas
78
82