akeyless 5.0.28 → 5.0.30

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 (159) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +49 -1
  3. data/docs/AccountGeneralSettings.md +4 -0
  4. data/docs/AnthropicTargetDetails.md +20 -0
  5. data/docs/AuthMethod.md +3 -1
  6. data/docs/AuthMethodAccessInfo.md +2 -0
  7. data/docs/AuthMethodCreateSAML.md +3 -1
  8. data/docs/AuthMethodCreateUniversalIdentity.md +2 -0
  9. data/docs/AuthMethodUpdateSAML.md +3 -1
  10. data/docs/AuthMethodUpdateUniversalIdentity.md +2 -0
  11. data/docs/BedrockTargetDetails.md +20 -0
  12. data/docs/CreateAuthMethodSAML.md +3 -1
  13. data/docs/CreateAuthMethodUniversalIdentity.md +2 -0
  14. data/docs/CreateDBTarget.md +2 -0
  15. data/docs/CreateMcpSecretBearerToken.md +46 -0
  16. data/docs/CreateMcpSecretOAuthAuthCode.md +56 -0
  17. data/docs/CreateMcpSecretOAuthClientCreds.md +52 -0
  18. data/docs/CreatePKICertIssuer.md +1 -1
  19. data/docs/CustomDnsTargetDetails.md +20 -0
  20. data/docs/DSProducerDetails.md +2 -0
  21. data/docs/DbTargetDetails.md +2 -0
  22. data/docs/EmailCustomization.md +28 -0
  23. data/docs/EmailCustomizationAccountInformation.md +24 -0
  24. data/docs/EmailCustomizationAccountInformationValues.md +24 -0
  25. data/docs/EsmGetSecretOutput.md +4 -0
  26. data/docs/FileDownloadInstructions.md +20 -0
  27. data/docs/FileInfo.md +50 -0
  28. data/docs/GatewayCreateMigration.md +2 -0
  29. data/docs/GatewayUpdateMigration.md +2 -0
  30. data/docs/GetKubeExecCreds.md +1 -1
  31. data/docs/GetPKICertificate.md +1 -1
  32. data/docs/GrokTargetDetails.md +22 -0
  33. data/docs/HashiPayload.md +2 -0
  34. data/docs/Item.md +2 -0
  35. data/docs/KeycloakTargetDetails.md +24 -0
  36. data/docs/OktaTargetDetails.md +20 -0
  37. data/docs/RuntimeAuthorityCommand.md +4 -0
  38. data/docs/SAMLAccessRules.md +3 -1
  39. data/docs/StaticSecretDetailsInfo.md +2 -0
  40. data/docs/TargetCreateAnthropic.md +36 -0
  41. data/docs/TargetCreateBedrock.md +36 -0
  42. data/docs/TargetCreateCustomDns.md +36 -0
  43. data/docs/TargetCreateDB.md +2 -0
  44. data/docs/TargetCreateGrok.md +38 -0
  45. data/docs/TargetCreateKeycloak.md +40 -0
  46. data/docs/TargetCreateOkta.md +36 -0
  47. data/docs/TargetTypeDetailsInput.md +12 -0
  48. data/docs/TargetUpdateAnthropic.md +42 -0
  49. data/docs/TargetUpdateBedrock.md +42 -0
  50. data/docs/TargetUpdateCustomDns.md +40 -0
  51. data/docs/TargetUpdateDB.md +2 -0
  52. data/docs/TargetUpdateGrok.md +44 -0
  53. data/docs/TargetUpdateKeycloak.md +44 -0
  54. data/docs/TargetUpdateOkta.md +40 -0
  55. data/docs/UidExpirationEvent.md +18 -0
  56. data/docs/UpdateAuthMethodSAML.md +3 -1
  57. data/docs/UpdateAuthMethodUniversalIdentity.md +2 -0
  58. data/docs/UpdateDBTarget.md +2 -0
  59. data/docs/UpdateMcpSecretBearerToken.md +40 -0
  60. data/docs/UpdateMcpSecretOAuthAuthCode.md +50 -0
  61. data/docs/UpdateMcpSecretOAuthClientCreds.md +46 -0
  62. data/docs/UpdatePKICertIssuer.md +1 -1
  63. data/docs/UscGetSecretOutput.md +4 -0
  64. data/docs/V2Api.md +1134 -0
  65. data/lib/akeyless/api/v2_api.rb +1249 -97
  66. data/lib/akeyless/models/account_general_settings.rb +20 -1
  67. data/lib/akeyless/models/anthropic_target_details.rb +224 -0
  68. data/lib/akeyless/models/auth_method.rb +15 -4
  69. data/lib/akeyless/models/auth_method_access_info.rb +13 -1
  70. data/lib/akeyless/models/auth_method_create_saml.rb +14 -4
  71. data/lib/akeyless/models/auth_method_create_universal_identity.rb +13 -1
  72. data/lib/akeyless/models/auth_method_update_saml.rb +14 -4
  73. data/lib/akeyless/models/auth_method_update_universal_identity.rb +13 -1
  74. data/lib/akeyless/models/bedrock_target_details.rb +224 -0
  75. data/lib/akeyless/models/create_auth_method_saml.rb +14 -4
  76. data/lib/akeyless/models/create_auth_method_universal_identity.rb +13 -1
  77. data/lib/akeyless/models/create_db_target.rb +11 -1
  78. data/lib/akeyless/models/create_mcp_secret_bearer_token.rb +371 -0
  79. data/lib/akeyless/models/create_mcp_secret_o_auth_auth_code.rb +423 -0
  80. data/lib/akeyless/models/create_mcp_secret_o_auth_client_creds.rb +403 -0
  81. data/lib/akeyless/models/create_pki_cert_issuer.rb +1 -1
  82. data/lib/akeyless/models/custom_dns_target_details.rb +225 -0
  83. data/lib/akeyless/models/db_target_details.rb +11 -1
  84. data/lib/akeyless/models/ds_producer_details.rb +11 -1
  85. data/lib/akeyless/models/email_customization.rb +259 -0
  86. data/lib/akeyless/models/email_customization_account_information.rb +242 -0
  87. data/lib/akeyless/models/email_customization_account_information_values.rb +241 -0
  88. data/lib/akeyless/models/esm_get_secret_output.rb +19 -1
  89. data/lib/akeyless/models/file_download_instructions.rb +223 -0
  90. data/lib/akeyless/models/file_info.rb +358 -0
  91. data/lib/akeyless/models/gateway_create_migration.rb +11 -1
  92. data/lib/akeyless/models/gateway_update_migration.rb +11 -1
  93. data/lib/akeyless/models/get_kube_exec_creds.rb +1 -1
  94. data/lib/akeyless/models/get_pki_certificate.rb +1 -1
  95. data/lib/akeyless/models/grok_target_details.rb +234 -0
  96. data/lib/akeyless/models/hashi_payload.rb +10 -1
  97. data/lib/akeyless/models/item.rb +10 -1
  98. data/lib/akeyless/models/keycloak_target_details.rb +242 -0
  99. data/lib/akeyless/models/okta_target_details.rb +224 -0
  100. data/lib/akeyless/models/runtime_authority_command.rb +21 -1
  101. data/lib/akeyless/models/saml_access_rules.rb +14 -4
  102. data/lib/akeyless/models/static_secret_details_info.rb +10 -1
  103. data/lib/akeyless/models/target_create_anthropic.rb +317 -0
  104. data/lib/akeyless/models/target_create_bedrock.rb +317 -0
  105. data/lib/akeyless/models/target_create_custom_dns.rb +330 -0
  106. data/lib/akeyless/models/target_create_db.rb +11 -1
  107. data/lib/akeyless/models/target_create_grok.rb +327 -0
  108. data/lib/akeyless/models/target_create_keycloak.rb +334 -0
  109. data/lib/akeyless/models/target_create_okta.rb +314 -0
  110. data/lib/akeyless/models/target_type_details_input.rb +55 -1
  111. data/lib/akeyless/models/target_update_anthropic.rb +351 -0
  112. data/lib/akeyless/models/target_update_bedrock.rb +351 -0
  113. data/lib/akeyless/models/target_update_custom_dns.rb +350 -0
  114. data/lib/akeyless/models/target_update_db.rb +11 -1
  115. data/lib/akeyless/models/target_update_grok.rb +361 -0
  116. data/lib/akeyless/models/target_update_keycloak.rb +354 -0
  117. data/lib/akeyless/models/target_update_okta.rb +334 -0
  118. data/lib/akeyless/models/uid_expiration_event.rb +214 -0
  119. data/lib/akeyless/models/update_auth_method_saml.rb +14 -4
  120. data/lib/akeyless/models/update_auth_method_universal_identity.rb +13 -1
  121. data/lib/akeyless/models/update_db_target.rb +11 -1
  122. data/lib/akeyless/models/update_mcp_secret_bearer_token.rb +338 -0
  123. data/lib/akeyless/models/update_mcp_secret_o_auth_auth_code.rb +390 -0
  124. data/lib/akeyless/models/update_mcp_secret_o_auth_client_creds.rb +370 -0
  125. data/lib/akeyless/models/update_pki_cert_issuer.rb +1 -1
  126. data/lib/akeyless/models/usc_get_secret_output.rb +19 -1
  127. data/lib/akeyless/version.rb +1 -1
  128. data/lib/akeyless.rb +30 -0
  129. data/spec/models/anthropic_target_details_spec.rb +42 -0
  130. data/spec/models/bedrock_target_details_spec.rb +42 -0
  131. data/spec/models/create_mcp_secret_bearer_token_spec.rb +120 -0
  132. data/spec/models/create_mcp_secret_o_auth_auth_code_spec.rb +150 -0
  133. data/spec/models/create_mcp_secret_o_auth_client_creds_spec.rb +138 -0
  134. data/spec/models/custom_dns_target_details_spec.rb +42 -0
  135. data/spec/models/email_customization_account_information_spec.rb +54 -0
  136. data/spec/models/email_customization_account_information_values_spec.rb +54 -0
  137. data/spec/models/email_customization_spec.rb +66 -0
  138. data/spec/models/file_download_instructions_spec.rb +42 -0
  139. data/spec/models/file_info_spec.rb +132 -0
  140. data/spec/models/grok_target_details_spec.rb +48 -0
  141. data/spec/models/keycloak_target_details_spec.rb +54 -0
  142. data/spec/models/okta_target_details_spec.rb +42 -0
  143. data/spec/models/target_create_anthropic_spec.rb +90 -0
  144. data/spec/models/target_create_bedrock_spec.rb +90 -0
  145. data/spec/models/target_create_custom_dns_spec.rb +90 -0
  146. data/spec/models/target_create_grok_spec.rb +96 -0
  147. data/spec/models/target_create_keycloak_spec.rb +102 -0
  148. data/spec/models/target_create_okta_spec.rb +90 -0
  149. data/spec/models/target_update_anthropic_spec.rb +108 -0
  150. data/spec/models/target_update_bedrock_spec.rb +108 -0
  151. data/spec/models/target_update_custom_dns_spec.rb +102 -0
  152. data/spec/models/target_update_grok_spec.rb +114 -0
  153. data/spec/models/target_update_keycloak_spec.rb +114 -0
  154. data/spec/models/target_update_okta_spec.rb +102 -0
  155. data/spec/models/uid_expiration_event_spec.rb +36 -0
  156. data/spec/models/update_mcp_secret_bearer_token_spec.rb +102 -0
  157. data/spec/models/update_mcp_secret_o_auth_auth_code_spec.rb +132 -0
  158. data/spec/models/update_mcp_secret_o_auth_client_creds_spec.rb +120 -0
  159. metadata +1295 -1175
@@ -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
@@ -225,6 +225,9 @@ module Akeyless
225
225
  # Target location in Akeyless for imported secrets
226
226
  attr_accessor :target_location
227
227
 
228
+ # Name of existing target to use to create the migration
229
+ attr_accessor :target_name
230
+
228
231
  # Authentication token (see `/auth` and `/configure`)
229
232
  attr_accessor :token
230
233
 
@@ -313,6 +316,7 @@ module Akeyless
313
316
  :'si_users_ignore' => :'si-users-ignore',
314
317
  :'si_users_path_template' => :'si-users-path-template',
315
318
  :'target_location' => :'target-location',
319
+ :'target_name' => :'target-name',
316
320
  :'token' => :'token',
317
321
  :'type' => :'type',
318
322
  :'uid_token' => :'uid-token',
@@ -399,6 +403,7 @@ module Akeyless
399
403
  :'si_users_ignore' => :'String',
400
404
  :'si_users_path_template' => :'String',
401
405
  :'target_location' => :'String',
406
+ :'target_name' => :'String',
402
407
  :'token' => :'String',
403
408
  :'type' => :'String',
404
409
  :'uid_token' => :'String',
@@ -756,6 +761,10 @@ module Akeyless
756
761
  self.target_location = nil
757
762
  end
758
763
 
764
+ if attributes.key?(:'target_name')
765
+ self.target_name = attributes[:'target_name']
766
+ end
767
+
759
768
  if attributes.key?(:'token')
760
769
  self.token = attributes[:'token']
761
770
  end
@@ -892,6 +901,7 @@ module Akeyless
892
901
  si_users_ignore == o.si_users_ignore &&
893
902
  si_users_path_template == o.si_users_path_template &&
894
903
  target_location == o.target_location &&
904
+ target_name == o.target_name &&
895
905
  token == o.token &&
896
906
  type == o.type &&
897
907
  uid_token == o.uid_token &&
@@ -908,7 +918,7 @@ module Akeyless
908
918
  # Calculates hash code according to all attributes.
909
919
  # @return [Integer] Hash code
910
920
  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
921
+ [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, target_name, token, type, uid_token, usc_name, use_gw_cloud_identity].hash
912
922
  end
913
923
 
914
924
  # Builds the object from hash
@@ -231,6 +231,9 @@ module Akeyless
231
231
  # Target location in Akeyless for imported secrets
232
232
  attr_accessor :target_location
233
233
 
234
+ # Name of existing target to use to create the migration
235
+ attr_accessor :target_name
236
+
234
237
  # Authentication token (see `/auth` and `/configure`)
235
238
  attr_accessor :token
236
239
 
@@ -318,6 +321,7 @@ module Akeyless
318
321
  :'si_users_ignore' => :'si-users-ignore',
319
322
  :'si_users_path_template' => :'si-users-path-template',
320
323
  :'target_location' => :'target-location',
324
+ :'target_name' => :'target-name',
321
325
  :'token' => :'token',
322
326
  :'uid_token' => :'uid-token',
323
327
  :'usc_name' => :'usc-name',
@@ -405,6 +409,7 @@ module Akeyless
405
409
  :'si_users_ignore' => :'String',
406
410
  :'si_users_path_template' => :'String',
407
411
  :'target_location' => :'String',
412
+ :'target_name' => :'String',
408
413
  :'token' => :'String',
409
414
  :'uid_token' => :'String',
410
415
  :'usc_name' => :'String',
@@ -767,6 +772,10 @@ module Akeyless
767
772
  self.target_location = nil
768
773
  end
769
774
 
775
+ if attributes.key?(:'target_name')
776
+ self.target_name = attributes[:'target_name']
777
+ end
778
+
770
779
  if attributes.key?(:'token')
771
780
  self.token = attributes[:'token']
772
781
  end
@@ -896,6 +905,7 @@ module Akeyless
896
905
  si_users_ignore == o.si_users_ignore &&
897
906
  si_users_path_template == o.si_users_path_template &&
898
907
  target_location == o.target_location &&
908
+ target_name == o.target_name &&
899
909
  token == o.token &&
900
910
  uid_token == o.uid_token &&
901
911
  usc_name == o.usc_name &&
@@ -911,7 +921,7 @@ module Akeyless
911
921
  # Calculates hash code according to all attributes.
912
922
  # @return [Integer] Hash code
913
923
  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
924
+ [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, target_name, token, uid_token, usc_name, use_gw_cloud_identity].hash
915
925
  end
916
926
 
917
927
  # 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