akeyless 5.0.28 → 5.0.31

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 (176) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +54 -1
  3. data/docs/AccountGeneralSettings.md +4 -0
  4. data/docs/AerospikeTargetDetails.md +82 -0
  5. data/docs/AnthropicTargetDetails.md +20 -0
  6. data/docs/AuthMethod.md +3 -1
  7. data/docs/AuthMethodAccessInfo.md +2 -0
  8. data/docs/AuthMethodCreateSAML.md +3 -1
  9. data/docs/AuthMethodCreateUniversalIdentity.md +2 -0
  10. data/docs/AuthMethodUpdateSAML.md +3 -1
  11. data/docs/AuthMethodUpdateUniversalIdentity.md +2 -0
  12. data/docs/BedrockTargetDetails.md +20 -0
  13. data/docs/CertificateDiscovery.md +2 -0
  14. data/docs/CertificatePayload.md +2 -0
  15. data/docs/CreateAuthMethodSAML.md +3 -1
  16. data/docs/CreateAuthMethodUniversalIdentity.md +2 -0
  17. data/docs/CreateDBTarget.md +2 -0
  18. data/docs/CreateMcpSecretBearerToken.md +46 -0
  19. data/docs/CreateMcpSecretOAuthAuthCode.md +56 -0
  20. data/docs/CreateMcpSecretOAuthClientCreds.md +52 -0
  21. data/docs/CreatePKICertIssuer.md +1 -1
  22. data/docs/CustomDnsTargetDetails.md +20 -0
  23. data/docs/DSProducerDetails.md +2 -0
  24. data/docs/DbTargetDetails.md +2 -0
  25. data/docs/DecryptGPG.md +3 -1
  26. data/docs/EmailCustomization.md +28 -0
  27. data/docs/EmailCustomizationAccountInformation.md +24 -0
  28. data/docs/EmailCustomizationAccountInformationValues.md +24 -0
  29. data/docs/EncryptGPG.md +3 -1
  30. data/docs/EsmGetSecretOutput.md +4 -0
  31. data/docs/FileDownloadInstructions.md +20 -0
  32. data/docs/FileInfo.md +50 -0
  33. data/docs/GatewayCreateMigration.md +4 -0
  34. data/docs/GatewayUpdateMigration.md +4 -0
  35. data/docs/GetKubeExecCreds.md +1 -1
  36. data/docs/GetPKICertificate.md +1 -1
  37. data/docs/GrokTargetDetails.md +22 -0
  38. data/docs/HashiPayload.md +2 -0
  39. data/docs/Item.md +2 -0
  40. data/docs/KeycloakTargetDetails.md +24 -0
  41. data/docs/OktaTargetDetails.md +20 -0
  42. data/docs/RuntimeAuthorityCommand.md +4 -0
  43. data/docs/SAMLAccessRules.md +3 -1
  44. data/docs/StaticSecretDetailsInfo.md +2 -0
  45. data/docs/TargetCreateAerospike.md +64 -0
  46. data/docs/TargetCreateAnthropic.md +36 -0
  47. data/docs/TargetCreateBedrock.md +36 -0
  48. data/docs/TargetCreateCustomDns.md +36 -0
  49. data/docs/TargetCreateDB.md +2 -0
  50. data/docs/TargetCreateGrok.md +38 -0
  51. data/docs/TargetCreateKeycloak.md +40 -0
  52. data/docs/TargetCreateOkta.md +36 -0
  53. data/docs/TargetTypeDetailsInput.md +14 -0
  54. data/docs/TargetUpdateAerospike.md +70 -0
  55. data/docs/TargetUpdateAnthropic.md +42 -0
  56. data/docs/TargetUpdateBedrock.md +42 -0
  57. data/docs/TargetUpdateCustomDns.md +40 -0
  58. data/docs/TargetUpdateDB.md +2 -0
  59. data/docs/TargetUpdateGrok.md +44 -0
  60. data/docs/TargetUpdateKeycloak.md +44 -0
  61. data/docs/TargetUpdateOkta.md +40 -0
  62. data/docs/UidExpirationEvent.md +18 -0
  63. data/docs/UpdateAuthMethodSAML.md +3 -1
  64. data/docs/UpdateAuthMethodUniversalIdentity.md +2 -0
  65. data/docs/UpdateDBTarget.md +2 -0
  66. data/docs/UpdateMcpSecretBearerToken.md +40 -0
  67. data/docs/UpdateMcpSecretOAuthAuthCode.md +50 -0
  68. data/docs/UpdateMcpSecretOAuthClientCreds.md +46 -0
  69. data/docs/UpdatePKICertIssuer.md +1 -1
  70. data/docs/UscGetSecretOutput.md +4 -0
  71. data/docs/V2Api.md +1260 -0
  72. data/lib/akeyless/api/v2_api.rb +1410 -130
  73. data/lib/akeyless/models/account_general_settings.rb +20 -1
  74. data/lib/akeyless/models/aerospike_target_details.rb +512 -0
  75. data/lib/akeyless/models/anthropic_target_details.rb +224 -0
  76. data/lib/akeyless/models/auth_method.rb +15 -4
  77. data/lib/akeyless/models/auth_method_access_info.rb +13 -1
  78. data/lib/akeyless/models/auth_method_create_saml.rb +14 -4
  79. data/lib/akeyless/models/auth_method_create_universal_identity.rb +13 -1
  80. data/lib/akeyless/models/auth_method_update_saml.rb +14 -4
  81. data/lib/akeyless/models/auth_method_update_universal_identity.rb +13 -1
  82. data/lib/akeyless/models/bedrock_target_details.rb +224 -0
  83. data/lib/akeyless/models/certificate_discovery.rb +11 -1
  84. data/lib/akeyless/models/certificate_payload.rb +12 -1
  85. data/lib/akeyless/models/create_auth_method_saml.rb +14 -4
  86. data/lib/akeyless/models/create_auth_method_universal_identity.rb +13 -1
  87. data/lib/akeyless/models/create_db_target.rb +11 -1
  88. data/lib/akeyless/models/create_mcp_secret_bearer_token.rb +371 -0
  89. data/lib/akeyless/models/create_mcp_secret_o_auth_auth_code.rb +423 -0
  90. data/lib/akeyless/models/create_mcp_secret_o_auth_client_creds.rb +403 -0
  91. data/lib/akeyless/models/create_pki_cert_issuer.rb +1 -1
  92. data/lib/akeyless/models/custom_dns_target_details.rb +225 -0
  93. data/lib/akeyless/models/db_target_details.rb +11 -1
  94. data/lib/akeyless/models/decrypt_gpg.rb +14 -4
  95. data/lib/akeyless/models/ds_producer_details.rb +11 -1
  96. data/lib/akeyless/models/email_customization.rb +259 -0
  97. data/lib/akeyless/models/email_customization_account_information.rb +242 -0
  98. data/lib/akeyless/models/email_customization_account_information_values.rb +241 -0
  99. data/lib/akeyless/models/encrypt_gpg.rb +14 -4
  100. data/lib/akeyless/models/esm_get_secret_output.rb +19 -1
  101. data/lib/akeyless/models/file_download_instructions.rb +223 -0
  102. data/lib/akeyless/models/file_info.rb +358 -0
  103. data/lib/akeyless/models/gateway_create_migration.rb +21 -1
  104. data/lib/akeyless/models/gateway_update_migration.rb +21 -1
  105. data/lib/akeyless/models/get_kube_exec_creds.rb +1 -1
  106. data/lib/akeyless/models/get_pki_certificate.rb +1 -1
  107. data/lib/akeyless/models/grok_target_details.rb +234 -0
  108. data/lib/akeyless/models/hashi_payload.rb +10 -1
  109. data/lib/akeyless/models/item.rb +10 -1
  110. data/lib/akeyless/models/keycloak_target_details.rb +242 -0
  111. data/lib/akeyless/models/okta_target_details.rb +224 -0
  112. data/lib/akeyless/models/runtime_authority_command.rb +21 -1
  113. data/lib/akeyless/models/saml_access_rules.rb +14 -4
  114. data/lib/akeyless/models/static_secret_details_info.rb +10 -1
  115. data/lib/akeyless/models/target_create_aerospike.rb +454 -0
  116. data/lib/akeyless/models/target_create_anthropic.rb +317 -0
  117. data/lib/akeyless/models/target_create_bedrock.rb +317 -0
  118. data/lib/akeyless/models/target_create_custom_dns.rb +330 -0
  119. data/lib/akeyless/models/target_create_db.rb +11 -1
  120. data/lib/akeyless/models/target_create_grok.rb +327 -0
  121. data/lib/akeyless/models/target_create_keycloak.rb +334 -0
  122. data/lib/akeyless/models/target_create_okta.rb +314 -0
  123. data/lib/akeyless/models/target_type_details_input.rb +64 -1
  124. data/lib/akeyless/models/target_update_aerospike.rb +488 -0
  125. data/lib/akeyless/models/target_update_anthropic.rb +351 -0
  126. data/lib/akeyless/models/target_update_bedrock.rb +351 -0
  127. data/lib/akeyless/models/target_update_custom_dns.rb +350 -0
  128. data/lib/akeyless/models/target_update_db.rb +11 -1
  129. data/lib/akeyless/models/target_update_grok.rb +361 -0
  130. data/lib/akeyless/models/target_update_keycloak.rb +354 -0
  131. data/lib/akeyless/models/target_update_okta.rb +334 -0
  132. data/lib/akeyless/models/uid_expiration_event.rb +214 -0
  133. data/lib/akeyless/models/update_auth_method_saml.rb +14 -4
  134. data/lib/akeyless/models/update_auth_method_universal_identity.rb +13 -1
  135. data/lib/akeyless/models/update_db_target.rb +11 -1
  136. data/lib/akeyless/models/update_mcp_secret_bearer_token.rb +338 -0
  137. data/lib/akeyless/models/update_mcp_secret_o_auth_auth_code.rb +390 -0
  138. data/lib/akeyless/models/update_mcp_secret_o_auth_client_creds.rb +370 -0
  139. data/lib/akeyless/models/update_pki_cert_issuer.rb +1 -1
  140. data/lib/akeyless/models/usc_get_secret_output.rb +19 -1
  141. data/lib/akeyless/version.rb +1 -1
  142. data/lib/akeyless.rb +33 -0
  143. data/spec/models/aerospike_target_details_spec.rb +228 -0
  144. data/spec/models/anthropic_target_details_spec.rb +42 -0
  145. data/spec/models/bedrock_target_details_spec.rb +42 -0
  146. data/spec/models/create_mcp_secret_bearer_token_spec.rb +120 -0
  147. data/spec/models/create_mcp_secret_o_auth_auth_code_spec.rb +150 -0
  148. data/spec/models/create_mcp_secret_o_auth_client_creds_spec.rb +138 -0
  149. data/spec/models/custom_dns_target_details_spec.rb +42 -0
  150. data/spec/models/email_customization_account_information_spec.rb +54 -0
  151. data/spec/models/email_customization_account_information_values_spec.rb +54 -0
  152. data/spec/models/email_customization_spec.rb +66 -0
  153. data/spec/models/file_download_instructions_spec.rb +42 -0
  154. data/spec/models/file_info_spec.rb +132 -0
  155. data/spec/models/grok_target_details_spec.rb +48 -0
  156. data/spec/models/keycloak_target_details_spec.rb +54 -0
  157. data/spec/models/okta_target_details_spec.rb +42 -0
  158. data/spec/models/target_create_aerospike_spec.rb +174 -0
  159. data/spec/models/target_create_anthropic_spec.rb +90 -0
  160. data/spec/models/target_create_bedrock_spec.rb +90 -0
  161. data/spec/models/target_create_custom_dns_spec.rb +90 -0
  162. data/spec/models/target_create_grok_spec.rb +96 -0
  163. data/spec/models/target_create_keycloak_spec.rb +102 -0
  164. data/spec/models/target_create_okta_spec.rb +90 -0
  165. data/spec/models/target_update_aerospike_spec.rb +192 -0
  166. data/spec/models/target_update_anthropic_spec.rb +108 -0
  167. data/spec/models/target_update_bedrock_spec.rb +108 -0
  168. data/spec/models/target_update_custom_dns_spec.rb +102 -0
  169. data/spec/models/target_update_grok_spec.rb +114 -0
  170. data/spec/models/target_update_keycloak_spec.rb +114 -0
  171. data/spec/models/target_update_okta_spec.rb +102 -0
  172. data/spec/models/uid_expiration_event_spec.rb +36 -0
  173. data/spec/models/update_mcp_secret_bearer_token_spec.rb +102 -0
  174. data/spec/models/update_mcp_secret_o_auth_auth_code_spec.rb +132 -0
  175. data/spec/models/update_mcp_secret_o_auth_client_creds_spec.rb +120 -0
  176. metadata +1314 -1182
@@ -0,0 +1,358 @@
1
+ =begin
2
+ #Akeyless API
3
+
4
+ #The purpose of this application is to provide access to Akeyless API.
5
+
6
+ The version of the OpenAPI document: 3.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.10.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ class FileInfo
18
+ attr_accessor :blob_storage_key
19
+
20
+ attr_accessor :client_file_sha256
21
+
22
+ attr_accessor :content_type
23
+
24
+ attr_accessor :derivation_data
25
+
26
+ attr_accessor :encrypted_blob_sha256
27
+
28
+ attr_accessor :encrypted_size_bytes
29
+
30
+ attr_accessor :etag_at_complete
31
+
32
+ attr_accessor :extension
33
+
34
+ attr_accessor :file_id
35
+
36
+ attr_accessor :filename
37
+
38
+ attr_accessor :plain_size_bytes
39
+
40
+ attr_accessor :previous_active_file_info
41
+
42
+ attr_accessor :previous_blob_storage_key
43
+
44
+ attr_accessor :protection_key_name
45
+
46
+ attr_accessor :protection_key_version
47
+
48
+ attr_accessor :status
49
+
50
+ attr_accessor :transaction_owner
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'blob_storage_key' => :'blob_storage_key',
56
+ :'client_file_sha256' => :'client_file_sha256',
57
+ :'content_type' => :'content_type',
58
+ :'derivation_data' => :'derivation_data',
59
+ :'encrypted_blob_sha256' => :'encrypted_blob_sha256',
60
+ :'encrypted_size_bytes' => :'encrypted_size_bytes',
61
+ :'etag_at_complete' => :'etag_at_complete',
62
+ :'extension' => :'extension',
63
+ :'file_id' => :'file_id',
64
+ :'filename' => :'filename',
65
+ :'plain_size_bytes' => :'plain_size_bytes',
66
+ :'previous_active_file_info' => :'previous_active_file_info',
67
+ :'previous_blob_storage_key' => :'previous_blob_storage_key',
68
+ :'protection_key_name' => :'protection_key_name',
69
+ :'protection_key_version' => :'protection_key_version',
70
+ :'status' => :'status',
71
+ :'transaction_owner' => :'transaction_owner'
72
+ }
73
+ end
74
+
75
+ # Returns all the JSON keys this model knows about
76
+ def self.acceptable_attributes
77
+ attribute_map.values
78
+ end
79
+
80
+ # Attribute type mapping.
81
+ def self.openapi_types
82
+ {
83
+ :'blob_storage_key' => :'String',
84
+ :'client_file_sha256' => :'String',
85
+ :'content_type' => :'String',
86
+ :'derivation_data' => :'String',
87
+ :'encrypted_blob_sha256' => :'String',
88
+ :'encrypted_size_bytes' => :'Integer',
89
+ :'etag_at_complete' => :'String',
90
+ :'extension' => :'String',
91
+ :'file_id' => :'String',
92
+ :'filename' => :'String',
93
+ :'plain_size_bytes' => :'Integer',
94
+ :'previous_active_file_info' => :'FileInfo',
95
+ :'previous_blob_storage_key' => :'String',
96
+ :'protection_key_name' => :'String',
97
+ :'protection_key_version' => :'Integer',
98
+ :'status' => :'String',
99
+ :'transaction_owner' => :'String'
100
+ }
101
+ end
102
+
103
+ # List of attributes with nullable: true
104
+ def self.openapi_nullable
105
+ Set.new([
106
+ ])
107
+ end
108
+
109
+ # Initializes the object
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ def initialize(attributes = {})
112
+ if (!attributes.is_a?(Hash))
113
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::FileInfo` initialize method"
114
+ end
115
+
116
+ # check to see if the attribute exists and convert string to symbol for hash key
117
+ attributes = attributes.each_with_object({}) { |(k, v), h|
118
+ if (!self.class.attribute_map.key?(k.to_sym))
119
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::FileInfo`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
120
+ end
121
+ h[k.to_sym] = v
122
+ }
123
+
124
+ if attributes.key?(:'blob_storage_key')
125
+ self.blob_storage_key = attributes[:'blob_storage_key']
126
+ end
127
+
128
+ if attributes.key?(:'client_file_sha256')
129
+ self.client_file_sha256 = attributes[:'client_file_sha256']
130
+ end
131
+
132
+ if attributes.key?(:'content_type')
133
+ self.content_type = attributes[:'content_type']
134
+ end
135
+
136
+ if attributes.key?(:'derivation_data')
137
+ self.derivation_data = attributes[:'derivation_data']
138
+ end
139
+
140
+ if attributes.key?(:'encrypted_blob_sha256')
141
+ self.encrypted_blob_sha256 = attributes[:'encrypted_blob_sha256']
142
+ end
143
+
144
+ if attributes.key?(:'encrypted_size_bytes')
145
+ self.encrypted_size_bytes = attributes[:'encrypted_size_bytes']
146
+ end
147
+
148
+ if attributes.key?(:'etag_at_complete')
149
+ self.etag_at_complete = attributes[:'etag_at_complete']
150
+ end
151
+
152
+ if attributes.key?(:'extension')
153
+ self.extension = attributes[:'extension']
154
+ end
155
+
156
+ if attributes.key?(:'file_id')
157
+ self.file_id = attributes[:'file_id']
158
+ end
159
+
160
+ if attributes.key?(:'filename')
161
+ self.filename = attributes[:'filename']
162
+ end
163
+
164
+ if attributes.key?(:'plain_size_bytes')
165
+ self.plain_size_bytes = attributes[:'plain_size_bytes']
166
+ end
167
+
168
+ if attributes.key?(:'previous_active_file_info')
169
+ self.previous_active_file_info = attributes[:'previous_active_file_info']
170
+ end
171
+
172
+ if attributes.key?(:'previous_blob_storage_key')
173
+ self.previous_blob_storage_key = attributes[:'previous_blob_storage_key']
174
+ end
175
+
176
+ if attributes.key?(:'protection_key_name')
177
+ self.protection_key_name = attributes[:'protection_key_name']
178
+ end
179
+
180
+ if attributes.key?(:'protection_key_version')
181
+ self.protection_key_version = attributes[:'protection_key_version']
182
+ end
183
+
184
+ if attributes.key?(:'status')
185
+ self.status = attributes[:'status']
186
+ end
187
+
188
+ if attributes.key?(:'transaction_owner')
189
+ self.transaction_owner = attributes[:'transaction_owner']
190
+ end
191
+ end
192
+
193
+ # Show invalid properties with the reasons. Usually used together with valid?
194
+ # @return Array for valid properties with the reasons
195
+ def list_invalid_properties
196
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
197
+ invalid_properties = Array.new
198
+ invalid_properties
199
+ end
200
+
201
+ # Check to see if the all the properties in the model are valid
202
+ # @return true if the model is valid
203
+ def valid?
204
+ warn '[DEPRECATED] the `valid?` method is obsolete'
205
+ true
206
+ end
207
+
208
+ # Checks equality by comparing each attribute.
209
+ # @param [Object] Object to be compared
210
+ def ==(o)
211
+ return true if self.equal?(o)
212
+ self.class == o.class &&
213
+ blob_storage_key == o.blob_storage_key &&
214
+ client_file_sha256 == o.client_file_sha256 &&
215
+ content_type == o.content_type &&
216
+ derivation_data == o.derivation_data &&
217
+ encrypted_blob_sha256 == o.encrypted_blob_sha256 &&
218
+ encrypted_size_bytes == o.encrypted_size_bytes &&
219
+ etag_at_complete == o.etag_at_complete &&
220
+ extension == o.extension &&
221
+ file_id == o.file_id &&
222
+ filename == o.filename &&
223
+ plain_size_bytes == o.plain_size_bytes &&
224
+ previous_active_file_info == o.previous_active_file_info &&
225
+ previous_blob_storage_key == o.previous_blob_storage_key &&
226
+ protection_key_name == o.protection_key_name &&
227
+ protection_key_version == o.protection_key_version &&
228
+ status == o.status &&
229
+ transaction_owner == o.transaction_owner
230
+ end
231
+
232
+ # @see the `==` method
233
+ # @param [Object] Object to be compared
234
+ def eql?(o)
235
+ self == o
236
+ end
237
+
238
+ # Calculates hash code according to all attributes.
239
+ # @return [Integer] Hash code
240
+ def hash
241
+ [blob_storage_key, client_file_sha256, content_type, derivation_data, encrypted_blob_sha256, encrypted_size_bytes, etag_at_complete, extension, file_id, filename, plain_size_bytes, previous_active_file_info, previous_blob_storage_key, protection_key_name, protection_key_version, status, transaction_owner].hash
242
+ end
243
+
244
+ # Builds the object from hash
245
+ # @param [Hash] attributes Model attributes in the form of hash
246
+ # @return [Object] Returns the model itself
247
+ def self.build_from_hash(attributes)
248
+ return nil unless attributes.is_a?(Hash)
249
+ attributes = attributes.transform_keys(&:to_sym)
250
+ transformed_hash = {}
251
+ openapi_types.each_pair do |key, type|
252
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
253
+ transformed_hash["#{key}"] = nil
254
+ elsif type =~ /\AArray<(.*)>/i
255
+ # check to ensure the input is an array given that the attribute
256
+ # is documented as an array but the input is not
257
+ if attributes[attribute_map[key]].is_a?(Array)
258
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
259
+ end
260
+ elsif !attributes[attribute_map[key]].nil?
261
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
262
+ end
263
+ end
264
+ new(transformed_hash)
265
+ end
266
+
267
+ # Deserializes the data based on type
268
+ # @param string type Data type
269
+ # @param string value Value to be deserialized
270
+ # @return [Object] Deserialized data
271
+ def self._deserialize(type, value)
272
+ case type.to_sym
273
+ when :Time
274
+ Time.parse(value)
275
+ when :Date
276
+ Date.parse(value)
277
+ when :String
278
+ value.to_s
279
+ when :Integer
280
+ value.to_i
281
+ when :Float
282
+ value.to_f
283
+ when :Boolean
284
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
285
+ true
286
+ else
287
+ false
288
+ end
289
+ when :Object
290
+ # generic object (usually a Hash), return directly
291
+ value
292
+ when /\AArray<(?<inner_type>.+)>\z/
293
+ inner_type = Regexp.last_match[:inner_type]
294
+ value.map { |v| _deserialize(inner_type, v) }
295
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
296
+ k_type = Regexp.last_match[:k_type]
297
+ v_type = Regexp.last_match[:v_type]
298
+ {}.tap do |hash|
299
+ value.each do |k, v|
300
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
301
+ end
302
+ end
303
+ else # model
304
+ # models (e.g. Pet) or oneOf
305
+ klass = Akeyless.const_get(type)
306
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
307
+ end
308
+ end
309
+
310
+ # Returns the string representation of the object
311
+ # @return [String] String presentation of the object
312
+ def to_s
313
+ to_hash.to_s
314
+ end
315
+
316
+ # to_body is an alias to to_hash (backward compatibility)
317
+ # @return [Hash] Returns the object in the form of hash
318
+ def to_body
319
+ to_hash
320
+ end
321
+
322
+ # Returns the object in the form of hash
323
+ # @return [Hash] Returns the object in the form of hash
324
+ def to_hash
325
+ hash = {}
326
+ self.class.attribute_map.each_pair do |attr, param|
327
+ value = self.send(attr)
328
+ if value.nil?
329
+ is_nullable = self.class.openapi_nullable.include?(attr)
330
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
331
+ end
332
+
333
+ hash[param] = _to_hash(value)
334
+ end
335
+ hash
336
+ end
337
+
338
+ # Outputs non-array value in the form of hash
339
+ # For object, use to_hash. Otherwise, just return the value
340
+ # @param [Object] value Any valid value
341
+ # @return [Hash] Returns the value in the form of hash
342
+ def _to_hash(value)
343
+ if value.is_a?(Array)
344
+ value.compact.map { |v| _to_hash(v) }
345
+ elsif value.is_a?(Hash)
346
+ {}.tap do |hash|
347
+ value.each { |k, v| hash[k] = _to_hash(v) }
348
+ end
349
+ elsif value.respond_to? :to_hash
350
+ value.to_hash
351
+ else
352
+ value
353
+ end
354
+ end
355
+
356
+ end
357
+
358
+ end
@@ -132,6 +132,9 @@ module Akeyless
132
132
  # Delete the secret from the remote target as well, relevant only when usc-name is not empty (relevant only for HasiCorp Vault migration)
133
133
  attr_accessor :delete_remote
134
134
 
135
+ # A comma separated list of IPs, CIDR ranges, or DNS names to exclude from the scan
136
+ attr_accessor :exclude_hosts
137
+
135
138
  # How many days before the expiration of the certificate would you like to be notified.
136
139
  attr_accessor :expiration_event_in
137
140
 
@@ -225,6 +228,9 @@ module Akeyless
225
228
  # Target location in Akeyless for imported secrets
226
229
  attr_accessor :target_location
227
230
 
231
+ # Name of existing target to use to create the migration
232
+ attr_accessor :target_name
233
+
228
234
  # Authentication token (see `/auth` and `/configure`)
229
235
  attr_accessor :token
230
236
 
@@ -282,6 +288,7 @@ module Akeyless
282
288
  :'conjur_url' => :'conjur-url',
283
289
  :'conjur_username' => :'conjur-username',
284
290
  :'delete_remote' => :'delete-remote',
291
+ :'exclude_hosts' => :'exclude-hosts',
285
292
  :'expiration_event_in' => :'expiration-event-in',
286
293
  :'gcp_key' => :'gcp-key',
287
294
  :'gcp_project_id' => :'gcp-project-id',
@@ -313,6 +320,7 @@ module Akeyless
313
320
  :'si_users_ignore' => :'si-users-ignore',
314
321
  :'si_users_path_template' => :'si-users-path-template',
315
322
  :'target_location' => :'target-location',
323
+ :'target_name' => :'target-name',
316
324
  :'token' => :'token',
317
325
  :'type' => :'type',
318
326
  :'uid_token' => :'uid-token',
@@ -368,6 +376,7 @@ module Akeyless
368
376
  :'conjur_url' => :'String',
369
377
  :'conjur_username' => :'String',
370
378
  :'delete_remote' => :'Boolean',
379
+ :'exclude_hosts' => :'String',
371
380
  :'expiration_event_in' => :'Array<String>',
372
381
  :'gcp_key' => :'String',
373
382
  :'gcp_project_id' => :'String',
@@ -399,6 +408,7 @@ module Akeyless
399
408
  :'si_users_ignore' => :'String',
400
409
  :'si_users_path_template' => :'String',
401
410
  :'target_location' => :'String',
411
+ :'target_name' => :'String',
402
412
  :'token' => :'String',
403
413
  :'type' => :'String',
404
414
  :'uid_token' => :'String',
@@ -604,6 +614,10 @@ module Akeyless
604
614
  self.delete_remote = attributes[:'delete_remote']
605
615
  end
606
616
 
617
+ if attributes.key?(:'exclude_hosts')
618
+ self.exclude_hosts = attributes[:'exclude_hosts']
619
+ end
620
+
607
621
  if attributes.key?(:'expiration_event_in')
608
622
  if (value = attributes[:'expiration_event_in']).is_a?(Array)
609
623
  self.expiration_event_in = value
@@ -756,6 +770,10 @@ module Akeyless
756
770
  self.target_location = nil
757
771
  end
758
772
 
773
+ if attributes.key?(:'target_name')
774
+ self.target_name = attributes[:'target_name']
775
+ end
776
+
759
777
  if attributes.key?(:'token')
760
778
  self.token = attributes[:'token']
761
779
  end
@@ -861,6 +879,7 @@ module Akeyless
861
879
  conjur_url == o.conjur_url &&
862
880
  conjur_username == o.conjur_username &&
863
881
  delete_remote == o.delete_remote &&
882
+ exclude_hosts == o.exclude_hosts &&
864
883
  expiration_event_in == o.expiration_event_in &&
865
884
  gcp_key == o.gcp_key &&
866
885
  gcp_project_id == o.gcp_project_id &&
@@ -892,6 +911,7 @@ module Akeyless
892
911
  si_users_ignore == o.si_users_ignore &&
893
912
  si_users_path_template == o.si_users_path_template &&
894
913
  target_location == o.target_location &&
914
+ target_name == o.target_name &&
895
915
  token == o.token &&
896
916
  type == o.type &&
897
917
  uid_token == o.uid_token &&
@@ -908,7 +928,7 @@ module Akeyless
908
928
  # Calculates hash code according to all attributes.
909
929
  # @return [Integer] Hash code
910
930
  def hash
911
- [service_account_key_decoded, ad_auto_rotate, ad_cert_expiration_event_in, ad_certificates_path_template, ad_computer_base_dn, ad_discover_iis_app, ad_discover_services, ad_discovery_types, ad_domain_name, ad_domain_users_path_template, ad_local_users_ignore, ad_local_users_path_template, ad_os_filter, ad_rotation_hour, ad_rotation_interval, ad_sra_enable_rdp, ad_ssh_port, ad_target_format, ad_target_name, ad_targets_path_template, ad_targets_type, ad_user_base_dn, ad_user_groups, ad_winrm_over_http, ad_winrm_port, ad_discover_local_users, ai_certificate_discovery, aws_key, aws_key_id, aws_region, azure_client_id, azure_kv_name, azure_secret, azure_tenant_id, conjur_account, conjur_api_key, conjur_url, conjur_username, delete_remote, expiration_event_in, gcp_key, gcp_project_id, hashi_json, hashi_metadata_mode, hashi_ns, hashi_token, hashi_url, hosts, json, k8s_ca_certificate, k8s_client_certificate, k8s_client_key, k8s_namespace, k8s_password, k8s_skip_system, k8s_token, k8s_url, k8s_username, name, port_ranges, protection_key, si_auto_rotate, si_rotation_hour, si_rotation_interval, si_sra_enable_rdp, si_target_name, si_user_groups, si_users_ignore, si_users_path_template, target_location, token, type, uid_token, usc_name, use_gw_cloud_identity].hash
931
+ [service_account_key_decoded, ad_auto_rotate, ad_cert_expiration_event_in, ad_certificates_path_template, ad_computer_base_dn, ad_discover_iis_app, ad_discover_services, ad_discovery_types, ad_domain_name, ad_domain_users_path_template, ad_local_users_ignore, ad_local_users_path_template, ad_os_filter, ad_rotation_hour, ad_rotation_interval, ad_sra_enable_rdp, ad_ssh_port, ad_target_format, ad_target_name, ad_targets_path_template, ad_targets_type, ad_user_base_dn, ad_user_groups, ad_winrm_over_http, ad_winrm_port, ad_discover_local_users, ai_certificate_discovery, aws_key, aws_key_id, aws_region, azure_client_id, azure_kv_name, azure_secret, azure_tenant_id, conjur_account, conjur_api_key, conjur_url, conjur_username, delete_remote, exclude_hosts, expiration_event_in, gcp_key, gcp_project_id, hashi_json, hashi_metadata_mode, hashi_ns, hashi_token, hashi_url, hosts, json, k8s_ca_certificate, k8s_client_certificate, k8s_client_key, k8s_namespace, k8s_password, k8s_skip_system, k8s_token, k8s_url, k8s_username, name, port_ranges, protection_key, si_auto_rotate, si_rotation_hour, si_rotation_interval, si_sra_enable_rdp, si_target_name, si_user_groups, si_users_ignore, si_users_path_template, target_location, target_name, token, type, uid_token, usc_name, use_gw_cloud_identity].hash
912
932
  end
913
933
 
914
934
  # Builds the object from hash
@@ -132,6 +132,9 @@ module Akeyless
132
132
  # Delete the secret from the remote target as well, relevant only when usc-name is not empty (relevant only for HasiCorp Vault migration)
133
133
  attr_accessor :delete_remote
134
134
 
135
+ # A comma separated list of IPs, CIDR ranges, or DNS names to exclude from the scan
136
+ attr_accessor :exclude_hosts
137
+
135
138
  # How many days before the expiration of the certificate would you like to be notified.
136
139
  attr_accessor :expiration_event_in
137
140
 
@@ -231,6 +234,9 @@ module Akeyless
231
234
  # Target location in Akeyless for imported secrets
232
235
  attr_accessor :target_location
233
236
 
237
+ # Name of existing target to use to create the migration
238
+ attr_accessor :target_name
239
+
234
240
  # Authentication token (see `/auth` and `/configure`)
235
241
  attr_accessor :token
236
242
 
@@ -285,6 +291,7 @@ module Akeyless
285
291
  :'conjur_url' => :'conjur-url',
286
292
  :'conjur_username' => :'conjur-username',
287
293
  :'delete_remote' => :'delete-remote',
294
+ :'exclude_hosts' => :'exclude-hosts',
288
295
  :'expiration_event_in' => :'expiration-event-in',
289
296
  :'gcp_key' => :'gcp-key',
290
297
  :'gcp_project_id' => :'gcp-project-id',
@@ -318,6 +325,7 @@ module Akeyless
318
325
  :'si_users_ignore' => :'si-users-ignore',
319
326
  :'si_users_path_template' => :'si-users-path-template',
320
327
  :'target_location' => :'target-location',
328
+ :'target_name' => :'target-name',
321
329
  :'token' => :'token',
322
330
  :'uid_token' => :'uid-token',
323
331
  :'usc_name' => :'usc-name',
@@ -372,6 +380,7 @@ module Akeyless
372
380
  :'conjur_url' => :'String',
373
381
  :'conjur_username' => :'String',
374
382
  :'delete_remote' => :'Boolean',
383
+ :'exclude_hosts' => :'String',
375
384
  :'expiration_event_in' => :'Array<String>',
376
385
  :'gcp_key' => :'String',
377
386
  :'gcp_project_id' => :'String',
@@ -405,6 +414,7 @@ module Akeyless
405
414
  :'si_users_ignore' => :'String',
406
415
  :'si_users_path_template' => :'String',
407
416
  :'target_location' => :'String',
417
+ :'target_name' => :'String',
408
418
  :'token' => :'String',
409
419
  :'uid_token' => :'String',
410
420
  :'usc_name' => :'String',
@@ -609,6 +619,10 @@ module Akeyless
609
619
  self.delete_remote = attributes[:'delete_remote']
610
620
  end
611
621
 
622
+ if attributes.key?(:'exclude_hosts')
623
+ self.exclude_hosts = attributes[:'exclude_hosts']
624
+ end
625
+
612
626
  if attributes.key?(:'expiration_event_in')
613
627
  if (value = attributes[:'expiration_event_in']).is_a?(Array)
614
628
  self.expiration_event_in = value
@@ -767,6 +781,10 @@ module Akeyless
767
781
  self.target_location = nil
768
782
  end
769
783
 
784
+ if attributes.key?(:'target_name')
785
+ self.target_name = attributes[:'target_name']
786
+ end
787
+
770
788
  if attributes.key?(:'token')
771
789
  self.token = attributes[:'token']
772
790
  end
@@ -863,6 +881,7 @@ module Akeyless
863
881
  conjur_url == o.conjur_url &&
864
882
  conjur_username == o.conjur_username &&
865
883
  delete_remote == o.delete_remote &&
884
+ exclude_hosts == o.exclude_hosts &&
866
885
  expiration_event_in == o.expiration_event_in &&
867
886
  gcp_key == o.gcp_key &&
868
887
  gcp_project_id == o.gcp_project_id &&
@@ -896,6 +915,7 @@ module Akeyless
896
915
  si_users_ignore == o.si_users_ignore &&
897
916
  si_users_path_template == o.si_users_path_template &&
898
917
  target_location == o.target_location &&
918
+ target_name == o.target_name &&
899
919
  token == o.token &&
900
920
  uid_token == o.uid_token &&
901
921
  usc_name == o.usc_name &&
@@ -911,7 +931,7 @@ module Akeyless
911
931
  # Calculates hash code according to all attributes.
912
932
  # @return [Integer] Hash code
913
933
  def hash
914
- [service_account_key_decoded, ad_auto_rotate, ad_cert_expiration_event_in, ad_certificates_path_template, ad_computer_base_dn, ad_discover_iis_app, ad_discover_services, ad_discovery_types, ad_domain_name, ad_domain_users_path_template, ad_local_users_ignore, ad_local_users_path_template, ad_os_filter, ad_rotation_hour, ad_rotation_interval, ad_sra_enable_rdp, ad_ssh_port, ad_target_format, ad_target_name, ad_targets_path_template, ad_targets_type, ad_user_base_dn, ad_user_groups, ad_winrm_over_http, ad_winrm_port, ad_discover_local_users, ai_certificate_discovery, aws_key, aws_key_id, aws_region, azure_client_id, azure_kv_name, azure_secret, azure_tenant_id, conjur_account, conjur_api_key, conjur_url, conjur_username, delete_remote, expiration_event_in, gcp_key, gcp_project_id, hashi_json, hashi_metadata_mode, hashi_ns, hashi_token, hashi_url, hosts, id, json, k8s_ca_certificate, k8s_client_certificate, k8s_client_key, k8s_namespace, k8s_password, k8s_skip_system, k8s_token, k8s_url, k8s_username, name, new_name, port_ranges, protection_key, si_auto_rotate, si_rotation_hour, si_rotation_interval, si_sra_enable_rdp, si_target_name, si_user_groups, si_users_ignore, si_users_path_template, target_location, token, uid_token, usc_name, use_gw_cloud_identity].hash
934
+ [service_account_key_decoded, ad_auto_rotate, ad_cert_expiration_event_in, ad_certificates_path_template, ad_computer_base_dn, ad_discover_iis_app, ad_discover_services, ad_discovery_types, ad_domain_name, ad_domain_users_path_template, ad_local_users_ignore, ad_local_users_path_template, ad_os_filter, ad_rotation_hour, ad_rotation_interval, ad_sra_enable_rdp, ad_ssh_port, ad_target_format, ad_target_name, ad_targets_path_template, ad_targets_type, ad_user_base_dn, ad_user_groups, ad_winrm_over_http, ad_winrm_port, ad_discover_local_users, ai_certificate_discovery, aws_key, aws_key_id, aws_region, azure_client_id, azure_kv_name, azure_secret, azure_tenant_id, conjur_account, conjur_api_key, conjur_url, conjur_username, delete_remote, exclude_hosts, expiration_event_in, gcp_key, gcp_project_id, hashi_json, hashi_metadata_mode, hashi_ns, hashi_token, hashi_url, hosts, id, json, k8s_ca_certificate, k8s_client_certificate, k8s_client_key, k8s_namespace, k8s_password, k8s_skip_system, k8s_token, k8s_url, k8s_username, name, new_name, port_ranges, protection_key, si_auto_rotate, si_rotation_hour, si_rotation_interval, si_sra_enable_rdp, si_target_name, si_user_groups, si_users_ignore, si_users_path_template, target_location, target_name, token, uid_token, usc_name, use_gw_cloud_identity].hash
915
935
  end
916
936
 
917
937
  # Builds the object from hash
@@ -49,7 +49,7 @@ module Akeyless
49
49
  # Authentication token (see `/auth` and `/configure`)
50
50
  attr_accessor :token
51
51
 
52
- # Updated certificate lifetime in seconds (must be less than the Certificate Issuer default TTL)
52
+ # Updated certificate lifetime in seconds (must be less than the Certificate Issuer default TTL). Ignored for Let's Encrypt public CA issuers, which always use the CA default lifetime (about 90 days).
53
53
  attr_accessor :ttl
54
54
 
55
55
  # The universal identity token, Required only for universal_identity authentication
@@ -45,7 +45,7 @@ module Akeyless
45
45
  # Authentication token (see `/auth` and `/configure`)
46
46
  attr_accessor :token
47
47
 
48
- # Updated certificate lifetime in seconds (must be less than the Certificate Issuer default TTL)
48
+ # Updated certificate lifetime in seconds (must be less than the Certificate Issuer default TTL). Ignored for Let's Encrypt public CA issuers, which always use the CA default lifetime (about 90 days).
49
49
  attr_accessor :ttl
50
50
 
51
51
  # The universal identity token, Required only for universal_identity authentication