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,371 @@
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 CreateMcpSecretBearerToken
18
+ # for personal password manager
19
+ attr_accessor :accessibility
20
+
21
+ # Bearer token value
22
+ attr_accessor :bearer_token
23
+
24
+ # Protection from accidental deletion of this object [true/false]
25
+ attr_accessor :delete_protection
26
+
27
+ # Description of the object
28
+ attr_accessor :description
29
+
30
+ # Agentic input rule in name=...,rule=... format (e.g. name=rule1,rule=Sanitize input)
31
+ attr_accessor :input_rule
32
+
33
+ # Set output format to JSON
34
+ attr_accessor :json
35
+
36
+ # Set the maximum number of versions, limited by the account settings defaults.
37
+ attr_accessor :max_versions
38
+
39
+ # Deprecated - use description
40
+ attr_accessor :metadata
41
+
42
+ # Secret name
43
+ attr_accessor :name
44
+
45
+ # Agentic output rule in name=...,rule=... format (e.g. name=rule1,rule=Mask secrets)
46
+ attr_accessor :output_rule
47
+
48
+ attr_accessor :protection_key
49
+
50
+ # Add tags attached to this object
51
+ attr_accessor :tags
52
+
53
+ # Authentication token (see `/auth` and `/configure`)
54
+ attr_accessor :token
55
+
56
+ # The universal identity token, Required only for universal_identity authentication
57
+ attr_accessor :uid_token
58
+
59
+ # URL of the service
60
+ attr_accessor :url
61
+
62
+ # Attribute mapping from ruby-style variable name to JSON key.
63
+ def self.attribute_map
64
+ {
65
+ :'accessibility' => :'accessibility',
66
+ :'bearer_token' => :'bearer-token',
67
+ :'delete_protection' => :'delete_protection',
68
+ :'description' => :'description',
69
+ :'input_rule' => :'input-rule',
70
+ :'json' => :'json',
71
+ :'max_versions' => :'max-versions',
72
+ :'metadata' => :'metadata',
73
+ :'name' => :'name',
74
+ :'output_rule' => :'output-rule',
75
+ :'protection_key' => :'protection_key',
76
+ :'tags' => :'tags',
77
+ :'token' => :'token',
78
+ :'uid_token' => :'uid-token',
79
+ :'url' => :'url'
80
+ }
81
+ end
82
+
83
+ # Returns all the JSON keys this model knows about
84
+ def self.acceptable_attributes
85
+ attribute_map.values
86
+ end
87
+
88
+ # Attribute type mapping.
89
+ def self.openapi_types
90
+ {
91
+ :'accessibility' => :'String',
92
+ :'bearer_token' => :'String',
93
+ :'delete_protection' => :'String',
94
+ :'description' => :'String',
95
+ :'input_rule' => :'Array<String>',
96
+ :'json' => :'Boolean',
97
+ :'max_versions' => :'String',
98
+ :'metadata' => :'String',
99
+ :'name' => :'String',
100
+ :'output_rule' => :'Array<String>',
101
+ :'protection_key' => :'String',
102
+ :'tags' => :'Array<String>',
103
+ :'token' => :'String',
104
+ :'uid_token' => :'String',
105
+ :'url' => :'String'
106
+ }
107
+ end
108
+
109
+ # List of attributes with nullable: true
110
+ def self.openapi_nullable
111
+ Set.new([
112
+ ])
113
+ end
114
+
115
+ # Initializes the object
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ def initialize(attributes = {})
118
+ if (!attributes.is_a?(Hash))
119
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::CreateMcpSecretBearerToken` initialize method"
120
+ end
121
+
122
+ # check to see if the attribute exists and convert string to symbol for hash key
123
+ attributes = attributes.each_with_object({}) { |(k, v), h|
124
+ if (!self.class.attribute_map.key?(k.to_sym))
125
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::CreateMcpSecretBearerToken`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
126
+ end
127
+ h[k.to_sym] = v
128
+ }
129
+
130
+ if attributes.key?(:'accessibility')
131
+ self.accessibility = attributes[:'accessibility']
132
+ else
133
+ self.accessibility = 'regular'
134
+ end
135
+
136
+ if attributes.key?(:'bearer_token')
137
+ self.bearer_token = attributes[:'bearer_token']
138
+ end
139
+
140
+ if attributes.key?(:'delete_protection')
141
+ self.delete_protection = attributes[:'delete_protection']
142
+ end
143
+
144
+ if attributes.key?(:'description')
145
+ self.description = attributes[:'description']
146
+ end
147
+
148
+ if attributes.key?(:'input_rule')
149
+ if (value = attributes[:'input_rule']).is_a?(Array)
150
+ self.input_rule = value
151
+ end
152
+ end
153
+
154
+ if attributes.key?(:'json')
155
+ self.json = attributes[:'json']
156
+ else
157
+ self.json = false
158
+ end
159
+
160
+ if attributes.key?(:'max_versions')
161
+ self.max_versions = attributes[:'max_versions']
162
+ end
163
+
164
+ if attributes.key?(:'metadata')
165
+ self.metadata = attributes[:'metadata']
166
+ end
167
+
168
+ if attributes.key?(:'name')
169
+ self.name = attributes[:'name']
170
+ else
171
+ self.name = nil
172
+ end
173
+
174
+ if attributes.key?(:'output_rule')
175
+ if (value = attributes[:'output_rule']).is_a?(Array)
176
+ self.output_rule = value
177
+ end
178
+ end
179
+
180
+ if attributes.key?(:'protection_key')
181
+ self.protection_key = attributes[:'protection_key']
182
+ end
183
+
184
+ if attributes.key?(:'tags')
185
+ if (value = attributes[:'tags']).is_a?(Array)
186
+ self.tags = value
187
+ end
188
+ end
189
+
190
+ if attributes.key?(:'token')
191
+ self.token = attributes[:'token']
192
+ end
193
+
194
+ if attributes.key?(:'uid_token')
195
+ self.uid_token = attributes[:'uid_token']
196
+ end
197
+
198
+ if attributes.key?(:'url')
199
+ self.url = attributes[:'url']
200
+ end
201
+ end
202
+
203
+ # Show invalid properties with the reasons. Usually used together with valid?
204
+ # @return Array for valid properties with the reasons
205
+ def list_invalid_properties
206
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
207
+ invalid_properties = Array.new
208
+ if @name.nil?
209
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
210
+ end
211
+
212
+ invalid_properties
213
+ end
214
+
215
+ # Check to see if the all the properties in the model are valid
216
+ # @return true if the model is valid
217
+ def valid?
218
+ warn '[DEPRECATED] the `valid?` method is obsolete'
219
+ return false if @name.nil?
220
+ true
221
+ end
222
+
223
+ # Checks equality by comparing each attribute.
224
+ # @param [Object] Object to be compared
225
+ def ==(o)
226
+ return true if self.equal?(o)
227
+ self.class == o.class &&
228
+ accessibility == o.accessibility &&
229
+ bearer_token == o.bearer_token &&
230
+ delete_protection == o.delete_protection &&
231
+ description == o.description &&
232
+ input_rule == o.input_rule &&
233
+ json == o.json &&
234
+ max_versions == o.max_versions &&
235
+ metadata == o.metadata &&
236
+ name == o.name &&
237
+ output_rule == o.output_rule &&
238
+ protection_key == o.protection_key &&
239
+ tags == o.tags &&
240
+ token == o.token &&
241
+ uid_token == o.uid_token &&
242
+ url == o.url
243
+ end
244
+
245
+ # @see the `==` method
246
+ # @param [Object] Object to be compared
247
+ def eql?(o)
248
+ self == o
249
+ end
250
+
251
+ # Calculates hash code according to all attributes.
252
+ # @return [Integer] Hash code
253
+ def hash
254
+ [accessibility, bearer_token, delete_protection, description, input_rule, json, max_versions, metadata, name, output_rule, protection_key, tags, token, uid_token, url].hash
255
+ end
256
+
257
+ # Builds the object from hash
258
+ # @param [Hash] attributes Model attributes in the form of hash
259
+ # @return [Object] Returns the model itself
260
+ def self.build_from_hash(attributes)
261
+ return nil unless attributes.is_a?(Hash)
262
+ attributes = attributes.transform_keys(&:to_sym)
263
+ transformed_hash = {}
264
+ openapi_types.each_pair do |key, type|
265
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
266
+ transformed_hash["#{key}"] = nil
267
+ elsif type =~ /\AArray<(.*)>/i
268
+ # check to ensure the input is an array given that the attribute
269
+ # is documented as an array but the input is not
270
+ if attributes[attribute_map[key]].is_a?(Array)
271
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
272
+ end
273
+ elsif !attributes[attribute_map[key]].nil?
274
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
275
+ end
276
+ end
277
+ new(transformed_hash)
278
+ end
279
+
280
+ # Deserializes the data based on type
281
+ # @param string type Data type
282
+ # @param string value Value to be deserialized
283
+ # @return [Object] Deserialized data
284
+ def self._deserialize(type, value)
285
+ case type.to_sym
286
+ when :Time
287
+ Time.parse(value)
288
+ when :Date
289
+ Date.parse(value)
290
+ when :String
291
+ value.to_s
292
+ when :Integer
293
+ value.to_i
294
+ when :Float
295
+ value.to_f
296
+ when :Boolean
297
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
298
+ true
299
+ else
300
+ false
301
+ end
302
+ when :Object
303
+ # generic object (usually a Hash), return directly
304
+ value
305
+ when /\AArray<(?<inner_type>.+)>\z/
306
+ inner_type = Regexp.last_match[:inner_type]
307
+ value.map { |v| _deserialize(inner_type, v) }
308
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
309
+ k_type = Regexp.last_match[:k_type]
310
+ v_type = Regexp.last_match[:v_type]
311
+ {}.tap do |hash|
312
+ value.each do |k, v|
313
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
314
+ end
315
+ end
316
+ else # model
317
+ # models (e.g. Pet) or oneOf
318
+ klass = Akeyless.const_get(type)
319
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
320
+ end
321
+ end
322
+
323
+ # Returns the string representation of the object
324
+ # @return [String] String presentation of the object
325
+ def to_s
326
+ to_hash.to_s
327
+ end
328
+
329
+ # to_body is an alias to to_hash (backward compatibility)
330
+ # @return [Hash] Returns the object in the form of hash
331
+ def to_body
332
+ to_hash
333
+ end
334
+
335
+ # Returns the object in the form of hash
336
+ # @return [Hash] Returns the object in the form of hash
337
+ def to_hash
338
+ hash = {}
339
+ self.class.attribute_map.each_pair do |attr, param|
340
+ value = self.send(attr)
341
+ if value.nil?
342
+ is_nullable = self.class.openapi_nullable.include?(attr)
343
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
344
+ end
345
+
346
+ hash[param] = _to_hash(value)
347
+ end
348
+ hash
349
+ end
350
+
351
+ # Outputs non-array value in the form of hash
352
+ # For object, use to_hash. Otherwise, just return the value
353
+ # @param [Object] value Any valid value
354
+ # @return [Hash] Returns the value in the form of hash
355
+ def _to_hash(value)
356
+ if value.is_a?(Array)
357
+ value.compact.map { |v| _to_hash(v) }
358
+ elsif value.is_a?(Hash)
359
+ {}.tap do |hash|
360
+ value.each { |k, v| hash[k] = _to_hash(v) }
361
+ end
362
+ elsif value.respond_to? :to_hash
363
+ value.to_hash
364
+ else
365
+ value
366
+ end
367
+ end
368
+
369
+ end
370
+
371
+ end