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
@@ -22,6 +22,9 @@ module Akeyless
22
22
  # AccountDefaultKeyName is the name of the DFC key item configured as the default key This is here simply for the response to include the item name in addition to the display ID so the client can properly show this to the user. It will not be saved to the DB, only the AccountDefaultKeyItemID will.
23
23
  attr_accessor :account_default_key_name
24
24
 
25
+ # AccountFileBytesUsed tracks active + pending file-item plain bytes for quota enforcement.
26
+ attr_accessor :account_file_bytes_used
27
+
25
28
  attr_accessor :ai_insights
26
29
 
27
30
  attr_accessor :allow_auto_fill
@@ -46,6 +49,8 @@ module Akeyless
46
49
 
47
50
  attr_accessor :dynamic_secret_max_ttl
48
51
 
52
+ attr_accessor :email_customization
53
+
49
54
  attr_accessor :enable_request_for_access
50
55
 
51
56
  attr_accessor :enable_search_history
@@ -85,6 +90,7 @@ module Akeyless
85
90
  {
86
91
  :'account_default_key_item_id' => :'account_default_key_item_id',
87
92
  :'account_default_key_name' => :'account_default_key_name',
93
+ :'account_file_bytes_used' => :'account_file_bytes_used',
88
94
  :'ai_insights' => :'ai_insights',
89
95
  :'allow_auto_fill' => :'allow_auto_fill',
90
96
  :'allow_passkeys' => :'allow_passkeys',
@@ -97,6 +103,7 @@ module Akeyless
97
103
  :'default_auth_method' => :'default_auth_method',
98
104
  :'default_home_page' => :'default_home_page',
99
105
  :'dynamic_secret_max_ttl' => :'dynamic_secret_max_ttl',
106
+ :'email_customization' => :'email_customization',
100
107
  :'enable_request_for_access' => :'enable_request_for_access',
101
108
  :'enable_search_history' => :'enable_search_history',
102
109
  :'hide_personal_folder' => :'hide_personal_folder',
@@ -126,6 +133,7 @@ module Akeyless
126
133
  {
127
134
  :'account_default_key_item_id' => :'Integer',
128
135
  :'account_default_key_name' => :'String',
136
+ :'account_file_bytes_used' => :'Integer',
129
137
  :'ai_insights' => :'AiInsightsSetting',
130
138
  :'allow_auto_fill' => :'Boolean',
131
139
  :'allow_passkeys' => :'Boolean',
@@ -138,6 +146,7 @@ module Akeyless
138
146
  :'default_auth_method' => :'DefaultAuthMethodSettings',
139
147
  :'default_home_page' => :'DefaultHomePage',
140
148
  :'dynamic_secret_max_ttl' => :'DynamicSecretMaxTtl',
149
+ :'email_customization' => :'EmailCustomization',
141
150
  :'enable_request_for_access' => :'Boolean',
142
151
  :'enable_search_history' => :'Boolean',
143
152
  :'hide_personal_folder' => :'Boolean',
@@ -186,6 +195,10 @@ module Akeyless
186
195
  self.account_default_key_name = attributes[:'account_default_key_name']
187
196
  end
188
197
 
198
+ if attributes.key?(:'account_file_bytes_used')
199
+ self.account_file_bytes_used = attributes[:'account_file_bytes_used']
200
+ end
201
+
189
202
  if attributes.key?(:'ai_insights')
190
203
  self.ai_insights = attributes[:'ai_insights']
191
204
  end
@@ -234,6 +247,10 @@ module Akeyless
234
247
  self.dynamic_secret_max_ttl = attributes[:'dynamic_secret_max_ttl']
235
248
  end
236
249
 
250
+ if attributes.key?(:'email_customization')
251
+ self.email_customization = attributes[:'email_customization']
252
+ end
253
+
237
254
  if attributes.key?(:'enable_request_for_access')
238
255
  self.enable_request_for_access = attributes[:'enable_request_for_access']
239
256
  end
@@ -321,6 +338,7 @@ module Akeyless
321
338
  self.class == o.class &&
322
339
  account_default_key_item_id == o.account_default_key_item_id &&
323
340
  account_default_key_name == o.account_default_key_name &&
341
+ account_file_bytes_used == o.account_file_bytes_used &&
324
342
  ai_insights == o.ai_insights &&
325
343
  allow_auto_fill == o.allow_auto_fill &&
326
344
  allow_passkeys == o.allow_passkeys &&
@@ -333,6 +351,7 @@ module Akeyless
333
351
  default_auth_method == o.default_auth_method &&
334
352
  default_home_page == o.default_home_page &&
335
353
  dynamic_secret_max_ttl == o.dynamic_secret_max_ttl &&
354
+ email_customization == o.email_customization &&
336
355
  enable_request_for_access == o.enable_request_for_access &&
337
356
  enable_search_history == o.enable_search_history &&
338
357
  hide_personal_folder == o.hide_personal_folder &&
@@ -360,7 +379,7 @@ module Akeyless
360
379
  # Calculates hash code according to all attributes.
361
380
  # @return [Integer] Hash code
362
381
  def hash
363
- [account_default_key_item_id, account_default_key_name, ai_insights, allow_auto_fill, allow_passkeys, allowed_client_types, allowed_clients_ips, allowed_gateways_ips, auth_usage_event, certificate_expiration_events, data_protection_section, default_auth_method, default_home_page, dynamic_secret_max_ttl, enable_request_for_access, enable_search_history, hide_personal_folder, hide_secret_reveal_copy, hide_static_password, invalid_characters, item_locking, item_usage_event, lock_default_key, password_expiration_info, password_policy, password_score, personal_folder_global_mapping, protect_items_by_default, rotation_secret_max_interval, sharing_policy].hash
382
+ [account_default_key_item_id, account_default_key_name, account_file_bytes_used, ai_insights, allow_auto_fill, allow_passkeys, allowed_client_types, allowed_clients_ips, allowed_gateways_ips, auth_usage_event, certificate_expiration_events, data_protection_section, default_auth_method, default_home_page, dynamic_secret_max_ttl, email_customization, enable_request_for_access, enable_search_history, hide_personal_folder, hide_secret_reveal_copy, hide_static_password, invalid_characters, item_locking, item_usage_event, lock_default_key, password_expiration_info, password_policy, password_score, personal_folder_global_mapping, protect_items_by_default, rotation_secret_max_interval, sharing_policy].hash
364
383
  end
365
384
 
366
385
  # Builds the object from hash
@@ -0,0 +1,512 @@
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 AerospikeTargetDetails
18
+ attr_accessor :aerospike_admin_username
19
+
20
+ attr_accessor :aerospike_client_id
21
+
22
+ attr_accessor :aerospike_client_secret
23
+
24
+ attr_accessor :aerospike_cloud
25
+
26
+ attr_accessor :aerospike_cluster_id
27
+
28
+ attr_accessor :aerospike_hostname
29
+
30
+ attr_accessor :aerospike_namespace
31
+
32
+ attr_accessor :aerospike_password
33
+
34
+ attr_accessor :aerospike_port
35
+
36
+ # (Optional) ClientCertificate defines the client certificate for mutual TLS. Must be base64 certificate loaded by UI using file loader field
37
+ attr_accessor :client_certificate
38
+
39
+ # (Optional) ClientKeyPassphrase defines the passphrase for the client private key
40
+ attr_accessor :client_key_passphrase
41
+
42
+ # (Optional) ClientPrivateKey defines the client private key for mutual TLS. Must be base64 private key loaded by UI using file loader field
43
+ attr_accessor :client_private_key
44
+
45
+ attr_accessor :cloud_service_provider
46
+
47
+ attr_accessor :cluster_mode
48
+
49
+ attr_accessor :connection_type
50
+
51
+ attr_accessor :db_client_id
52
+
53
+ attr_accessor :db_client_secret
54
+
55
+ attr_accessor :db_host_name
56
+
57
+ attr_accessor :db_name
58
+
59
+ attr_accessor :db_port
60
+
61
+ # (Optional) Private Key in PEM format
62
+ attr_accessor :db_private_key
63
+
64
+ attr_accessor :db_private_key_passphrase
65
+
66
+ attr_accessor :db_pwd
67
+
68
+ # (Optional) DBServerCertificates defines the set of root certificate authorities that clients use when verifying server certificates. If DBServerCertificates is empty, TLS uses the host's root CA set.
69
+ attr_accessor :db_server_certificates
70
+
71
+ # (Optional) ServerName is used to verify the hostname on the returned certificates unless InsecureSkipVerify is given. It is also included in the client's handshake to support virtual hosting unless it is an IP address.
72
+ attr_accessor :db_server_name
73
+
74
+ attr_accessor :db_tenant_id
75
+
76
+ attr_accessor :db_user_name
77
+
78
+ # (Optional) EnableMTLS defines if mutual TLS will be used to connect to DB
79
+ attr_accessor :enable_mtls
80
+
81
+ attr_accessor :oracle_wallet_details
82
+
83
+ attr_accessor :sf_account
84
+
85
+ # (Optional) SkipServerNameValidation disables server name verification while still validating the certificate chain. Postgres treats empty as legacy \"skip hostname validation\"; MySQL treats empty as false.
86
+ attr_accessor :skip_server_name_validation
87
+
88
+ # (Optional) SSLConnectionCertificate defines the certificate for SSL connection. Must be base64 certificate loaded by UI using file loader field
89
+ attr_accessor :ssl_connection_certificate
90
+
91
+ # (Optional) SSLConnectionMode defines if SSL mode will be used to connect to DB
92
+ attr_accessor :ssl_connection_mode
93
+
94
+ # Attribute mapping from ruby-style variable name to JSON key.
95
+ def self.attribute_map
96
+ {
97
+ :'aerospike_admin_username' => :'aerospike_admin_username',
98
+ :'aerospike_client_id' => :'aerospike_client_id',
99
+ :'aerospike_client_secret' => :'aerospike_client_secret',
100
+ :'aerospike_cloud' => :'aerospike_cloud',
101
+ :'aerospike_cluster_id' => :'aerospike_cluster_id',
102
+ :'aerospike_hostname' => :'aerospike_hostname',
103
+ :'aerospike_namespace' => :'aerospike_namespace',
104
+ :'aerospike_password' => :'aerospike_password',
105
+ :'aerospike_port' => :'aerospike_port',
106
+ :'client_certificate' => :'client_certificate',
107
+ :'client_key_passphrase' => :'client_key_passphrase',
108
+ :'client_private_key' => :'client_private_key',
109
+ :'cloud_service_provider' => :'cloud_service_provider',
110
+ :'cluster_mode' => :'cluster_mode',
111
+ :'connection_type' => :'connection_type',
112
+ :'db_client_id' => :'db_client_id',
113
+ :'db_client_secret' => :'db_client_secret',
114
+ :'db_host_name' => :'db_host_name',
115
+ :'db_name' => :'db_name',
116
+ :'db_port' => :'db_port',
117
+ :'db_private_key' => :'db_private_key',
118
+ :'db_private_key_passphrase' => :'db_private_key_passphrase',
119
+ :'db_pwd' => :'db_pwd',
120
+ :'db_server_certificates' => :'db_server_certificates',
121
+ :'db_server_name' => :'db_server_name',
122
+ :'db_tenant_id' => :'db_tenant_id',
123
+ :'db_user_name' => :'db_user_name',
124
+ :'enable_mtls' => :'enable_mtls',
125
+ :'oracle_wallet_details' => :'oracle_wallet_details',
126
+ :'sf_account' => :'sf_account',
127
+ :'skip_server_name_validation' => :'skip_server_name_validation',
128
+ :'ssl_connection_certificate' => :'ssl_connection_certificate',
129
+ :'ssl_connection_mode' => :'ssl_connection_mode'
130
+ }
131
+ end
132
+
133
+ # Returns all the JSON keys this model knows about
134
+ def self.acceptable_attributes
135
+ attribute_map.values
136
+ end
137
+
138
+ # Attribute type mapping.
139
+ def self.openapi_types
140
+ {
141
+ :'aerospike_admin_username' => :'String',
142
+ :'aerospike_client_id' => :'String',
143
+ :'aerospike_client_secret' => :'String',
144
+ :'aerospike_cloud' => :'Boolean',
145
+ :'aerospike_cluster_id' => :'String',
146
+ :'aerospike_hostname' => :'String',
147
+ :'aerospike_namespace' => :'String',
148
+ :'aerospike_password' => :'String',
149
+ :'aerospike_port' => :'String',
150
+ :'client_certificate' => :'String',
151
+ :'client_key_passphrase' => :'String',
152
+ :'client_private_key' => :'String',
153
+ :'cloud_service_provider' => :'String',
154
+ :'cluster_mode' => :'Boolean',
155
+ :'connection_type' => :'String',
156
+ :'db_client_id' => :'String',
157
+ :'db_client_secret' => :'String',
158
+ :'db_host_name' => :'String',
159
+ :'db_name' => :'String',
160
+ :'db_port' => :'String',
161
+ :'db_private_key' => :'String',
162
+ :'db_private_key_passphrase' => :'String',
163
+ :'db_pwd' => :'String',
164
+ :'db_server_certificates' => :'String',
165
+ :'db_server_name' => :'String',
166
+ :'db_tenant_id' => :'String',
167
+ :'db_user_name' => :'String',
168
+ :'enable_mtls' => :'Boolean',
169
+ :'oracle_wallet_details' => :'WalletDetails',
170
+ :'sf_account' => :'String',
171
+ :'skip_server_name_validation' => :'String',
172
+ :'ssl_connection_certificate' => :'String',
173
+ :'ssl_connection_mode' => :'Boolean'
174
+ }
175
+ end
176
+
177
+ # List of attributes with nullable: true
178
+ def self.openapi_nullable
179
+ Set.new([
180
+ ])
181
+ end
182
+
183
+ # Initializes the object
184
+ # @param [Hash] attributes Model attributes in the form of hash
185
+ def initialize(attributes = {})
186
+ if (!attributes.is_a?(Hash))
187
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::AerospikeTargetDetails` initialize method"
188
+ end
189
+
190
+ # check to see if the attribute exists and convert string to symbol for hash key
191
+ attributes = attributes.each_with_object({}) { |(k, v), h|
192
+ if (!self.class.attribute_map.key?(k.to_sym))
193
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::AerospikeTargetDetails`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
194
+ end
195
+ h[k.to_sym] = v
196
+ }
197
+
198
+ if attributes.key?(:'aerospike_admin_username')
199
+ self.aerospike_admin_username = attributes[:'aerospike_admin_username']
200
+ end
201
+
202
+ if attributes.key?(:'aerospike_client_id')
203
+ self.aerospike_client_id = attributes[:'aerospike_client_id']
204
+ end
205
+
206
+ if attributes.key?(:'aerospike_client_secret')
207
+ self.aerospike_client_secret = attributes[:'aerospike_client_secret']
208
+ end
209
+
210
+ if attributes.key?(:'aerospike_cloud')
211
+ self.aerospike_cloud = attributes[:'aerospike_cloud']
212
+ end
213
+
214
+ if attributes.key?(:'aerospike_cluster_id')
215
+ self.aerospike_cluster_id = attributes[:'aerospike_cluster_id']
216
+ end
217
+
218
+ if attributes.key?(:'aerospike_hostname')
219
+ self.aerospike_hostname = attributes[:'aerospike_hostname']
220
+ end
221
+
222
+ if attributes.key?(:'aerospike_namespace')
223
+ self.aerospike_namespace = attributes[:'aerospike_namespace']
224
+ end
225
+
226
+ if attributes.key?(:'aerospike_password')
227
+ self.aerospike_password = attributes[:'aerospike_password']
228
+ end
229
+
230
+ if attributes.key?(:'aerospike_port')
231
+ self.aerospike_port = attributes[:'aerospike_port']
232
+ end
233
+
234
+ if attributes.key?(:'client_certificate')
235
+ self.client_certificate = attributes[:'client_certificate']
236
+ end
237
+
238
+ if attributes.key?(:'client_key_passphrase')
239
+ self.client_key_passphrase = attributes[:'client_key_passphrase']
240
+ end
241
+
242
+ if attributes.key?(:'client_private_key')
243
+ self.client_private_key = attributes[:'client_private_key']
244
+ end
245
+
246
+ if attributes.key?(:'cloud_service_provider')
247
+ self.cloud_service_provider = attributes[:'cloud_service_provider']
248
+ end
249
+
250
+ if attributes.key?(:'cluster_mode')
251
+ self.cluster_mode = attributes[:'cluster_mode']
252
+ end
253
+
254
+ if attributes.key?(:'connection_type')
255
+ self.connection_type = attributes[:'connection_type']
256
+ end
257
+
258
+ if attributes.key?(:'db_client_id')
259
+ self.db_client_id = attributes[:'db_client_id']
260
+ end
261
+
262
+ if attributes.key?(:'db_client_secret')
263
+ self.db_client_secret = attributes[:'db_client_secret']
264
+ end
265
+
266
+ if attributes.key?(:'db_host_name')
267
+ self.db_host_name = attributes[:'db_host_name']
268
+ end
269
+
270
+ if attributes.key?(:'db_name')
271
+ self.db_name = attributes[:'db_name']
272
+ end
273
+
274
+ if attributes.key?(:'db_port')
275
+ self.db_port = attributes[:'db_port']
276
+ end
277
+
278
+ if attributes.key?(:'db_private_key')
279
+ self.db_private_key = attributes[:'db_private_key']
280
+ end
281
+
282
+ if attributes.key?(:'db_private_key_passphrase')
283
+ self.db_private_key_passphrase = attributes[:'db_private_key_passphrase']
284
+ end
285
+
286
+ if attributes.key?(:'db_pwd')
287
+ self.db_pwd = attributes[:'db_pwd']
288
+ end
289
+
290
+ if attributes.key?(:'db_server_certificates')
291
+ self.db_server_certificates = attributes[:'db_server_certificates']
292
+ end
293
+
294
+ if attributes.key?(:'db_server_name')
295
+ self.db_server_name = attributes[:'db_server_name']
296
+ end
297
+
298
+ if attributes.key?(:'db_tenant_id')
299
+ self.db_tenant_id = attributes[:'db_tenant_id']
300
+ end
301
+
302
+ if attributes.key?(:'db_user_name')
303
+ self.db_user_name = attributes[:'db_user_name']
304
+ end
305
+
306
+ if attributes.key?(:'enable_mtls')
307
+ self.enable_mtls = attributes[:'enable_mtls']
308
+ end
309
+
310
+ if attributes.key?(:'oracle_wallet_details')
311
+ self.oracle_wallet_details = attributes[:'oracle_wallet_details']
312
+ end
313
+
314
+ if attributes.key?(:'sf_account')
315
+ self.sf_account = attributes[:'sf_account']
316
+ end
317
+
318
+ if attributes.key?(:'skip_server_name_validation')
319
+ self.skip_server_name_validation = attributes[:'skip_server_name_validation']
320
+ end
321
+
322
+ if attributes.key?(:'ssl_connection_certificate')
323
+ self.ssl_connection_certificate = attributes[:'ssl_connection_certificate']
324
+ end
325
+
326
+ if attributes.key?(:'ssl_connection_mode')
327
+ self.ssl_connection_mode = attributes[:'ssl_connection_mode']
328
+ end
329
+ end
330
+
331
+ # Show invalid properties with the reasons. Usually used together with valid?
332
+ # @return Array for valid properties with the reasons
333
+ def list_invalid_properties
334
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
335
+ invalid_properties = Array.new
336
+ invalid_properties
337
+ end
338
+
339
+ # Check to see if the all the properties in the model are valid
340
+ # @return true if the model is valid
341
+ def valid?
342
+ warn '[DEPRECATED] the `valid?` method is obsolete'
343
+ true
344
+ end
345
+
346
+ # Checks equality by comparing each attribute.
347
+ # @param [Object] Object to be compared
348
+ def ==(o)
349
+ return true if self.equal?(o)
350
+ self.class == o.class &&
351
+ aerospike_admin_username == o.aerospike_admin_username &&
352
+ aerospike_client_id == o.aerospike_client_id &&
353
+ aerospike_client_secret == o.aerospike_client_secret &&
354
+ aerospike_cloud == o.aerospike_cloud &&
355
+ aerospike_cluster_id == o.aerospike_cluster_id &&
356
+ aerospike_hostname == o.aerospike_hostname &&
357
+ aerospike_namespace == o.aerospike_namespace &&
358
+ aerospike_password == o.aerospike_password &&
359
+ aerospike_port == o.aerospike_port &&
360
+ client_certificate == o.client_certificate &&
361
+ client_key_passphrase == o.client_key_passphrase &&
362
+ client_private_key == o.client_private_key &&
363
+ cloud_service_provider == o.cloud_service_provider &&
364
+ cluster_mode == o.cluster_mode &&
365
+ connection_type == o.connection_type &&
366
+ db_client_id == o.db_client_id &&
367
+ db_client_secret == o.db_client_secret &&
368
+ db_host_name == o.db_host_name &&
369
+ db_name == o.db_name &&
370
+ db_port == o.db_port &&
371
+ db_private_key == o.db_private_key &&
372
+ db_private_key_passphrase == o.db_private_key_passphrase &&
373
+ db_pwd == o.db_pwd &&
374
+ db_server_certificates == o.db_server_certificates &&
375
+ db_server_name == o.db_server_name &&
376
+ db_tenant_id == o.db_tenant_id &&
377
+ db_user_name == o.db_user_name &&
378
+ enable_mtls == o.enable_mtls &&
379
+ oracle_wallet_details == o.oracle_wallet_details &&
380
+ sf_account == o.sf_account &&
381
+ skip_server_name_validation == o.skip_server_name_validation &&
382
+ ssl_connection_certificate == o.ssl_connection_certificate &&
383
+ ssl_connection_mode == o.ssl_connection_mode
384
+ end
385
+
386
+ # @see the `==` method
387
+ # @param [Object] Object to be compared
388
+ def eql?(o)
389
+ self == o
390
+ end
391
+
392
+ # Calculates hash code according to all attributes.
393
+ # @return [Integer] Hash code
394
+ def hash
395
+ [aerospike_admin_username, aerospike_client_id, aerospike_client_secret, aerospike_cloud, aerospike_cluster_id, aerospike_hostname, aerospike_namespace, aerospike_password, aerospike_port, client_certificate, client_key_passphrase, client_private_key, cloud_service_provider, cluster_mode, connection_type, db_client_id, db_client_secret, db_host_name, db_name, db_port, db_private_key, db_private_key_passphrase, db_pwd, db_server_certificates, db_server_name, db_tenant_id, db_user_name, enable_mtls, oracle_wallet_details, sf_account, skip_server_name_validation, ssl_connection_certificate, ssl_connection_mode].hash
396
+ end
397
+
398
+ # Builds the object from hash
399
+ # @param [Hash] attributes Model attributes in the form of hash
400
+ # @return [Object] Returns the model itself
401
+ def self.build_from_hash(attributes)
402
+ return nil unless attributes.is_a?(Hash)
403
+ attributes = attributes.transform_keys(&:to_sym)
404
+ transformed_hash = {}
405
+ openapi_types.each_pair do |key, type|
406
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
407
+ transformed_hash["#{key}"] = nil
408
+ elsif type =~ /\AArray<(.*)>/i
409
+ # check to ensure the input is an array given that the attribute
410
+ # is documented as an array but the input is not
411
+ if attributes[attribute_map[key]].is_a?(Array)
412
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
413
+ end
414
+ elsif !attributes[attribute_map[key]].nil?
415
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
416
+ end
417
+ end
418
+ new(transformed_hash)
419
+ end
420
+
421
+ # Deserializes the data based on type
422
+ # @param string type Data type
423
+ # @param string value Value to be deserialized
424
+ # @return [Object] Deserialized data
425
+ def self._deserialize(type, value)
426
+ case type.to_sym
427
+ when :Time
428
+ Time.parse(value)
429
+ when :Date
430
+ Date.parse(value)
431
+ when :String
432
+ value.to_s
433
+ when :Integer
434
+ value.to_i
435
+ when :Float
436
+ value.to_f
437
+ when :Boolean
438
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
439
+ true
440
+ else
441
+ false
442
+ end
443
+ when :Object
444
+ # generic object (usually a Hash), return directly
445
+ value
446
+ when /\AArray<(?<inner_type>.+)>\z/
447
+ inner_type = Regexp.last_match[:inner_type]
448
+ value.map { |v| _deserialize(inner_type, v) }
449
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
450
+ k_type = Regexp.last_match[:k_type]
451
+ v_type = Regexp.last_match[:v_type]
452
+ {}.tap do |hash|
453
+ value.each do |k, v|
454
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
455
+ end
456
+ end
457
+ else # model
458
+ # models (e.g. Pet) or oneOf
459
+ klass = Akeyless.const_get(type)
460
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
461
+ end
462
+ end
463
+
464
+ # Returns the string representation of the object
465
+ # @return [String] String presentation of the object
466
+ def to_s
467
+ to_hash.to_s
468
+ end
469
+
470
+ # to_body is an alias to to_hash (backward compatibility)
471
+ # @return [Hash] Returns the object in the form of hash
472
+ def to_body
473
+ to_hash
474
+ end
475
+
476
+ # Returns the object in the form of hash
477
+ # @return [Hash] Returns the object in the form of hash
478
+ def to_hash
479
+ hash = {}
480
+ self.class.attribute_map.each_pair do |attr, param|
481
+ value = self.send(attr)
482
+ if value.nil?
483
+ is_nullable = self.class.openapi_nullable.include?(attr)
484
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
485
+ end
486
+
487
+ hash[param] = _to_hash(value)
488
+ end
489
+ hash
490
+ end
491
+
492
+ # Outputs non-array value in the form of hash
493
+ # For object, use to_hash. Otherwise, just return the value
494
+ # @param [Object] value Any valid value
495
+ # @return [Hash] Returns the value in the form of hash
496
+ def _to_hash(value)
497
+ if value.is_a?(Array)
498
+ value.compact.map { |v| _to_hash(v) }
499
+ elsif value.is_a?(Hash)
500
+ {}.tap do |hash|
501
+ value.each { |k, v| hash[k] = _to_hash(v) }
502
+ end
503
+ elsif value.respond_to? :to_hash
504
+ value.to_hash
505
+ else
506
+ value
507
+ end
508
+ end
509
+
510
+ end
511
+
512
+ end