akeyless 5.0.22 → 5.0.24

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 (312) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +33 -5
  3. data/docs/AccountGeneralSettings.md +4 -0
  4. data/docs/AgenticRule.md +20 -0
  5. data/docs/AgenticRules.md +20 -0
  6. data/docs/AuthMethodCreateUniversalIdentity.md +4 -0
  7. data/docs/AuthMethodUpdateUniversalIdentity.md +4 -0
  8. data/docs/AwsStorage.md +2 -0
  9. data/docs/CreateAuthMethodUniversalIdentity.md +4 -0
  10. data/docs/CreateRole.md +2 -0
  11. data/docs/CreateRotatedSecret.md +3 -1
  12. data/docs/CreateSecret.md +2 -0
  13. data/docs/CreateUSC.md +6 -2
  14. data/docs/DSProducerDetails.md +2 -0
  15. data/docs/DeleteRoleRule.md +1 -1
  16. data/docs/DescribePermissions.md +1 -1
  17. data/docs/DigiCertTargetDetails.md +42 -0
  18. data/docs/EsmListSecretsOutput.md +5 -1
  19. data/docs/GatewayCreateMigration.md +4 -0
  20. data/docs/GatewayMigrationCreateOutput.md +2 -0
  21. data/docs/GatewayUpdateMigration.md +4 -0
  22. data/docs/GatewayUpdateRemoteAccessRdpRecordings.md +2 -0
  23. data/docs/GeneralConfigPart.md +4 -0
  24. data/docs/GoogleTrustTargetDetails.md +42 -0
  25. data/docs/HashiPayload.md +5 -1
  26. data/docs/Item.md +2 -0
  27. data/docs/ItemGeneralInfo.md +2 -0
  28. data/docs/ItemLockingSetting.md +20 -0
  29. data/docs/ListItems.md +2 -0
  30. data/docs/LockItem.md +28 -0
  31. data/docs/LockTarget.md +28 -0
  32. data/docs/LockingInfo.md +24 -0
  33. data/docs/MigrationStatusReplyObj.md +2 -0
  34. data/docs/NetappStorage.md +30 -0
  35. data/docs/ReverseRBAC.md +1 -1
  36. data/docs/RotatedSecretCreateAws.md +3 -1
  37. data/docs/RotatedSecretCreateAzure.md +3 -1
  38. data/docs/RotatedSecretCreateCustom.md +3 -1
  39. data/docs/RotatedSecretCreateLdap.md +3 -1
  40. data/docs/RotatedSecretCreateMongodb.md +3 -1
  41. data/docs/RotatedSecretCreateMssql.md +3 -1
  42. data/docs/RotatedSecretCreateMysql.md +3 -1
  43. data/docs/RotatedSecretCreateOracledb.md +3 -1
  44. data/docs/RotatedSecretCreatePostgresql.md +3 -1
  45. data/docs/RotatedSecretCreateRedshift.md +3 -1
  46. data/docs/RotatedSecretCreateSsh.md +3 -1
  47. data/docs/RotatedSecretCreateWindows.md +3 -1
  48. data/docs/RotatedSecretUpdateAws.md +3 -1
  49. data/docs/RotatedSecretUpdateAzure.md +3 -1
  50. data/docs/RotatedSecretUpdateCustom.md +3 -1
  51. data/docs/RotatedSecretUpdateLdap.md +3 -1
  52. data/docs/RotatedSecretUpdateMongodb.md +3 -1
  53. data/docs/RotatedSecretUpdateMssql.md +3 -1
  54. data/docs/RotatedSecretUpdateMysql.md +3 -1
  55. data/docs/RotatedSecretUpdateOracledb.md +3 -1
  56. data/docs/RotatedSecretUpdatePostgresql.md +3 -1
  57. data/docs/RotatedSecretUpdateRedshift.md +3 -1
  58. data/docs/RotatedSecretUpdateSsh.md +3 -1
  59. data/docs/RotatedSecretUpdateWindows.md +3 -1
  60. data/docs/RuntimeAuthorityCommand.md +28 -0
  61. data/docs/SecretInfo.md +2 -0
  62. data/docs/SecureRemoteAccess.md +4 -0
  63. data/docs/SetDefaultProfile.md +20 -0
  64. data/docs/SetDefaultProfileOutput.md +18 -0
  65. data/docs/SetRoleRule.md +1 -1
  66. data/docs/SyncCounters.md +22 -0
  67. data/docs/SystemAccessCredentialsReplyObj.md +2 -0
  68. data/docs/Target.md +4 -0
  69. data/docs/TargetCreateArtifactory.md +2 -0
  70. data/docs/TargetCreateAws.md +2 -0
  71. data/docs/TargetCreateAzure.md +2 -0
  72. data/docs/TargetCreateDB.md +2 -0
  73. data/docs/TargetCreateDigiCert.md +52 -0
  74. data/docs/TargetCreateDockerhub.md +2 -0
  75. data/docs/TargetCreateEks.md +2 -0
  76. data/docs/TargetCreateGcp.md +2 -0
  77. data/docs/TargetCreateGemini.md +2 -0
  78. data/docs/TargetCreateGithub.md +2 -0
  79. data/docs/TargetCreateGitlab.md +2 -0
  80. data/docs/TargetCreateGke.md +2 -0
  81. data/docs/TargetCreateGlobalSign.md +2 -0
  82. data/docs/TargetCreateGlobalSignAtlas.md +2 -0
  83. data/docs/TargetCreateGodaddy.md +2 -0
  84. data/docs/TargetCreateGoogleTrust.md +52 -0
  85. data/docs/TargetCreateHashiVault.md +2 -0
  86. data/docs/TargetCreateK8s.md +2 -0
  87. data/docs/TargetCreateLdap.md +2 -0
  88. data/docs/TargetCreateLetsEncrypt.md +3 -1
  89. data/docs/TargetCreateLinked.md +2 -0
  90. data/docs/TargetCreateOpenAI.md +2 -0
  91. data/docs/TargetCreatePing.md +2 -0
  92. data/docs/TargetCreateRabbitMq.md +2 -0
  93. data/docs/TargetCreateSalesforce.md +2 -0
  94. data/docs/TargetCreateSectigo.md +2 -0
  95. data/docs/TargetCreateSplunk.md +5 -1
  96. data/docs/TargetCreateSsh.md +2 -0
  97. data/docs/TargetCreateWeb.md +2 -0
  98. data/docs/TargetCreateWindows.md +2 -0
  99. data/docs/TargetCreateZeroSSL.md +2 -0
  100. data/docs/TargetTypeDetailsInput.md +4 -0
  101. data/docs/TargetUpdateArtifactory.md +2 -0
  102. data/docs/TargetUpdateAws.md +2 -0
  103. data/docs/TargetUpdateAzure.md +2 -0
  104. data/docs/TargetUpdateDB.md +2 -0
  105. data/docs/TargetUpdateDigiCert.md +54 -0
  106. data/docs/TargetUpdateDockerhub.md +2 -0
  107. data/docs/TargetUpdateEks.md +2 -0
  108. data/docs/TargetUpdateGcp.md +2 -0
  109. data/docs/TargetUpdateGemini.md +2 -0
  110. data/docs/TargetUpdateGithub.md +2 -0
  111. data/docs/TargetUpdateGitlab.md +2 -0
  112. data/docs/TargetUpdateGke.md +2 -0
  113. data/docs/TargetUpdateGlobalSign.md +2 -0
  114. data/docs/TargetUpdateGlobalSignAtlas.md +2 -0
  115. data/docs/TargetUpdateGodaddy.md +2 -0
  116. data/docs/TargetUpdateGoogleTrust.md +56 -0
  117. data/docs/TargetUpdateHashiVault.md +2 -0
  118. data/docs/TargetUpdateK8s.md +2 -0
  119. data/docs/TargetUpdateLdap.md +2 -0
  120. data/docs/TargetUpdateLetsEncrypt.md +3 -1
  121. data/docs/TargetUpdateOpenAI.md +2 -0
  122. data/docs/TargetUpdatePing.md +2 -0
  123. data/docs/TargetUpdateRabbitMq.md +2 -0
  124. data/docs/TargetUpdateSalesforce.md +2 -0
  125. data/docs/TargetUpdateSectigo.md +2 -0
  126. data/docs/TargetUpdateSsh.md +2 -0
  127. data/docs/TargetUpdateWeb.md +2 -0
  128. data/docs/TargetUpdateWindows.md +2 -0
  129. data/docs/TargetUpdateZeroSSL.md +2 -0
  130. data/docs/UniversalIdentityAccessRules.md +4 -0
  131. data/docs/UnlockItem.md +24 -0
  132. data/docs/UnlockTarget.md +24 -0
  133. data/docs/UpdateAccountSettings.md +4 -0
  134. data/docs/UpdateAuthMethodUniversalIdentity.md +4 -0
  135. data/docs/UpdateItem.md +8 -2
  136. data/docs/UpdateRole.md +2 -0
  137. data/docs/UpdateRotatedSecret.md +3 -1
  138. data/docs/UpdateTarget.md +2 -0
  139. data/docs/UscCreate.md +2 -0
  140. data/docs/UscDelete.md +4 -0
  141. data/docs/UscGet.md +4 -0
  142. data/docs/UscList.md +4 -0
  143. data/docs/UscListSecretsOutput.md +5 -1
  144. data/docs/UscUpdate.md +4 -0
  145. data/docs/V2Api.md +572 -6
  146. data/docs/WebBastionRdpRecord.md +2 -0
  147. data/lib/akeyless/api/v2_api.rb +580 -4
  148. data/lib/akeyless/models/account_general_settings.rb +19 -1
  149. data/lib/akeyless/models/agentic_rule.rb +223 -0
  150. data/lib/akeyless/models/agentic_rules.rb +227 -0
  151. data/lib/akeyless/models/auth_method_create_universal_identity.rb +25 -1
  152. data/lib/akeyless/models/auth_method_update_universal_identity.rb +25 -1
  153. data/lib/akeyless/models/aws_storage.rb +10 -1
  154. data/lib/akeyless/models/create_auth_method_universal_identity.rb +25 -1
  155. data/lib/akeyless/models/create_role.rb +11 -1
  156. data/lib/akeyless/models/create_rotated_secret.rb +12 -4
  157. data/lib/akeyless/models/create_secret.rb +11 -1
  158. data/lib/akeyless/models/create_usc.rb +25 -5
  159. data/lib/akeyless/models/delete_role_rule.rb +1 -1
  160. data/lib/akeyless/models/describe_permissions.rb +1 -1
  161. data/lib/akeyless/models/digi_cert_target_details.rb +333 -0
  162. data/lib/akeyless/models/ds_producer_details.rb +10 -1
  163. data/lib/akeyless/models/esm_list_secrets_output.rb +24 -4
  164. data/lib/akeyless/models/gateway_create_migration.rb +21 -1
  165. data/lib/akeyless/models/gateway_migration_create_output.rb +10 -1
  166. data/lib/akeyless/models/gateway_update_migration.rb +21 -1
  167. data/lib/akeyless/models/gateway_update_remote_access_rdp_recordings.rb +11 -1
  168. data/lib/akeyless/models/general_config_part.rb +19 -1
  169. data/lib/akeyless/models/google_trust_target_details.rb +335 -0
  170. data/lib/akeyless/models/hashi_payload.rb +22 -4
  171. data/lib/akeyless/models/item.rb +10 -1
  172. data/lib/akeyless/models/item_general_info.rb +10 -1
  173. data/lib/akeyless/models/item_locking_setting.rb +223 -0
  174. data/lib/akeyless/models/list_items.rb +13 -1
  175. data/lib/akeyless/models/lock_item.rb +274 -0
  176. data/lib/akeyless/models/lock_target.rb +274 -0
  177. data/lib/akeyless/models/locking_info.rb +243 -0
  178. data/lib/akeyless/models/migration_status_reply_obj.rb +10 -1
  179. data/lib/akeyless/models/netapp_storage.rb +268 -0
  180. data/lib/akeyless/models/reverse_rbac.rb +1 -1
  181. data/lib/akeyless/models/rotated_secret_create_aws.rb +12 -4
  182. data/lib/akeyless/models/rotated_secret_create_azure.rb +12 -4
  183. data/lib/akeyless/models/rotated_secret_create_custom.rb +12 -4
  184. data/lib/akeyless/models/rotated_secret_create_ldap.rb +12 -4
  185. data/lib/akeyless/models/rotated_secret_create_mongodb.rb +12 -4
  186. data/lib/akeyless/models/rotated_secret_create_mssql.rb +12 -4
  187. data/lib/akeyless/models/rotated_secret_create_mysql.rb +12 -4
  188. data/lib/akeyless/models/rotated_secret_create_oracledb.rb +12 -4
  189. data/lib/akeyless/models/rotated_secret_create_postgresql.rb +12 -4
  190. data/lib/akeyless/models/rotated_secret_create_redshift.rb +12 -4
  191. data/lib/akeyless/models/rotated_secret_create_ssh.rb +12 -4
  192. data/lib/akeyless/models/rotated_secret_create_windows.rb +12 -4
  193. data/lib/akeyless/models/rotated_secret_update_aws.rb +12 -4
  194. data/lib/akeyless/models/rotated_secret_update_azure.rb +12 -4
  195. data/lib/akeyless/models/rotated_secret_update_custom.rb +12 -4
  196. data/lib/akeyless/models/rotated_secret_update_ldap.rb +12 -4
  197. data/lib/akeyless/models/rotated_secret_update_mongodb.rb +12 -4
  198. data/lib/akeyless/models/rotated_secret_update_mssql.rb +12 -4
  199. data/lib/akeyless/models/rotated_secret_update_mysql.rb +12 -4
  200. data/lib/akeyless/models/rotated_secret_update_oracledb.rb +12 -4
  201. data/lib/akeyless/models/rotated_secret_update_postgresql.rb +12 -4
  202. data/lib/akeyless/models/rotated_secret_update_redshift.rb +12 -4
  203. data/lib/akeyless/models/rotated_secret_update_ssh.rb +12 -4
  204. data/lib/akeyless/models/rotated_secret_update_windows.rb +12 -4
  205. data/lib/akeyless/models/runtime_authority_command.rb +288 -0
  206. data/lib/akeyless/models/secret_info.rb +10 -1
  207. data/lib/akeyless/models/secure_remote_access.rb +19 -1
  208. data/lib/akeyless/models/set_default_profile.rb +234 -0
  209. data/lib/akeyless/models/set_default_profile_output.rb +214 -0
  210. data/lib/akeyless/models/set_role_rule.rb +1 -1
  211. data/lib/akeyless/models/sync_counters.rb +233 -0
  212. data/lib/akeyless/models/system_access_credentials_reply_obj.rb +11 -1
  213. data/lib/akeyless/models/target.rb +19 -1
  214. data/lib/akeyless/models/target_create_artifactory.rb +11 -1
  215. data/lib/akeyless/models/target_create_aws.rb +11 -1
  216. data/lib/akeyless/models/target_create_azure.rb +11 -1
  217. data/lib/akeyless/models/target_create_db.rb +11 -1
  218. data/lib/akeyless/models/target_create_digi_cert.rb +408 -0
  219. data/lib/akeyless/models/target_create_dockerhub.rb +11 -1
  220. data/lib/akeyless/models/target_create_eks.rb +11 -1
  221. data/lib/akeyless/models/target_create_gcp.rb +11 -1
  222. data/lib/akeyless/models/target_create_gemini.rb +11 -1
  223. data/lib/akeyless/models/target_create_github.rb +11 -1
  224. data/lib/akeyless/models/target_create_gitlab.rb +11 -1
  225. data/lib/akeyless/models/target_create_gke.rb +11 -1
  226. data/lib/akeyless/models/target_create_global_sign.rb +11 -1
  227. data/lib/akeyless/models/target_create_global_sign_atlas.rb +11 -1
  228. data/lib/akeyless/models/target_create_godaddy.rb +11 -1
  229. data/lib/akeyless/models/target_create_google_trust.rb +408 -0
  230. data/lib/akeyless/models/target_create_hashi_vault.rb +11 -1
  231. data/lib/akeyless/models/target_create_k8s.rb +11 -1
  232. data/lib/akeyless/models/target_create_ldap.rb +11 -1
  233. data/lib/akeyless/models/target_create_lets_encrypt.rb +18 -1
  234. data/lib/akeyless/models/target_create_linked.rb +11 -1
  235. data/lib/akeyless/models/target_create_open_ai.rb +11 -1
  236. data/lib/akeyless/models/target_create_ping.rb +11 -1
  237. data/lib/akeyless/models/target_create_rabbit_mq.rb +11 -1
  238. data/lib/akeyless/models/target_create_salesforce.rb +11 -1
  239. data/lib/akeyless/models/target_create_sectigo.rb +11 -1
  240. data/lib/akeyless/models/target_create_splunk.rb +21 -1
  241. data/lib/akeyless/models/target_create_ssh.rb +11 -1
  242. data/lib/akeyless/models/target_create_web.rb +11 -1
  243. data/lib/akeyless/models/target_create_windows.rb +11 -1
  244. data/lib/akeyless/models/target_create_zero_ssl.rb +11 -1
  245. data/lib/akeyless/models/target_type_details_input.rb +19 -1
  246. data/lib/akeyless/models/target_update_artifactory.rb +11 -1
  247. data/lib/akeyless/models/target_update_aws.rb +11 -1
  248. data/lib/akeyless/models/target_update_azure.rb +11 -1
  249. data/lib/akeyless/models/target_update_db.rb +11 -1
  250. data/lib/akeyless/models/target_update_digi_cert.rb +418 -0
  251. data/lib/akeyless/models/target_update_dockerhub.rb +11 -1
  252. data/lib/akeyless/models/target_update_eks.rb +11 -1
  253. data/lib/akeyless/models/target_update_gcp.rb +11 -1
  254. data/lib/akeyless/models/target_update_gemini.rb +11 -1
  255. data/lib/akeyless/models/target_update_github.rb +11 -1
  256. data/lib/akeyless/models/target_update_gitlab.rb +11 -1
  257. data/lib/akeyless/models/target_update_gke.rb +11 -1
  258. data/lib/akeyless/models/target_update_global_sign.rb +11 -1
  259. data/lib/akeyless/models/target_update_global_sign_atlas.rb +11 -1
  260. data/lib/akeyless/models/target_update_godaddy.rb +11 -1
  261. data/lib/akeyless/models/target_update_google_trust.rb +428 -0
  262. data/lib/akeyless/models/target_update_hashi_vault.rb +11 -1
  263. data/lib/akeyless/models/target_update_k8s.rb +11 -1
  264. data/lib/akeyless/models/target_update_ldap.rb +11 -1
  265. data/lib/akeyless/models/target_update_lets_encrypt.rb +18 -1
  266. data/lib/akeyless/models/target_update_open_ai.rb +11 -1
  267. data/lib/akeyless/models/target_update_ping.rb +11 -1
  268. data/lib/akeyless/models/target_update_rabbit_mq.rb +11 -1
  269. data/lib/akeyless/models/target_update_salesforce.rb +11 -1
  270. data/lib/akeyless/models/target_update_sectigo.rb +11 -1
  271. data/lib/akeyless/models/target_update_ssh.rb +11 -1
  272. data/lib/akeyless/models/target_update_web.rb +11 -1
  273. data/lib/akeyless/models/target_update_windows.rb +11 -1
  274. data/lib/akeyless/models/target_update_zero_ssl.rb +11 -1
  275. data/lib/akeyless/models/universal_identity_access_rules.rb +19 -1
  276. data/lib/akeyless/models/unlock_item.rb +254 -0
  277. data/lib/akeyless/models/unlock_target.rb +254 -0
  278. data/lib/akeyless/models/update_account_settings.rb +21 -1
  279. data/lib/akeyless/models/update_auth_method_universal_identity.rb +25 -1
  280. data/lib/akeyless/models/update_item.rb +35 -7
  281. data/lib/akeyless/models/update_role.rb +11 -1
  282. data/lib/akeyless/models/update_rotated_secret.rb +12 -4
  283. data/lib/akeyless/models/update_target.rb +11 -1
  284. data/lib/akeyless/models/usc_create.rb +10 -1
  285. data/lib/akeyless/models/usc_delete.rb +20 -1
  286. data/lib/akeyless/models/usc_get.rb +20 -1
  287. data/lib/akeyless/models/usc_list.rb +21 -1
  288. data/lib/akeyless/models/usc_list_secrets_output.rb +24 -4
  289. data/lib/akeyless/models/usc_update.rb +20 -1
  290. data/lib/akeyless/models/web_bastion_rdp_record.rb +10 -1
  291. data/lib/akeyless/version.rb +1 -1
  292. data/lib/akeyless.rb +19 -0
  293. data/spec/models/agentic_rule_spec.rb +42 -0
  294. data/spec/models/agentic_rules_spec.rb +42 -0
  295. data/spec/models/digi_cert_target_details_spec.rb +108 -0
  296. data/spec/models/google_trust_target_details_spec.rb +108 -0
  297. data/spec/models/item_locking_setting_spec.rb +42 -0
  298. data/spec/models/lock_item_spec.rb +66 -0
  299. data/spec/models/lock_target_spec.rb +66 -0
  300. data/spec/models/locking_info_spec.rb +54 -0
  301. data/spec/models/netapp_storage_spec.rb +72 -0
  302. data/spec/models/runtime_authority_command_spec.rb +66 -0
  303. data/spec/models/set_default_profile_output_spec.rb +36 -0
  304. data/spec/models/set_default_profile_spec.rb +42 -0
  305. data/spec/models/sync_counters_spec.rb +48 -0
  306. data/spec/models/target_create_digi_cert_spec.rb +132 -0
  307. data/spec/models/target_create_google_trust_spec.rb +132 -0
  308. data/spec/models/target_update_digi_cert_spec.rb +144 -0
  309. data/spec/models/target_update_google_trust_spec.rb +144 -0
  310. data/spec/models/unlock_item_spec.rb +54 -0
  311. data/spec/models/unlock_target_spec.rb +54 -0
  312. metadata +1226 -1147
@@ -0,0 +1,418 @@
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
+ # targetUpdateDigiCert is a command that updates an existing DigiCert target
18
+ class TargetUpdateDigiCert
19
+ # ACME challenge type. Options: [dns]
20
+ attr_accessor :acme_challenge
21
+
22
+ # Description of the object
23
+ attr_accessor :description
24
+
25
+ # DigiCert ACME endpoint selector. Options: [us-production/eu-production/us-demo/eu-demo]
26
+ attr_accessor :digicert_url
27
+
28
+ # Name of existing cloud target for DNS credentials. Required when challenge type is dns. Supported providers: AWS, Azure, GCP
29
+ attr_accessor :dns_target_creds
30
+
31
+ # External Account Binding HMAC key (required for ACME account bootstrap on create)
32
+ attr_accessor :eab_hmac_key
33
+
34
+ # External Account Binding key identifier (required for ACME account bootstrap on create)
35
+ attr_accessor :eab_key_id
36
+
37
+ # Email address for ACME account registration
38
+ attr_accessor :email
39
+
40
+ # GCP Cloud DNS project ID. Optional and can be derived from service account
41
+ attr_accessor :gcp_project
42
+
43
+ # AWS Route53 hosted zone ID. Required when DNS credentials target is AWS
44
+ attr_accessor :hosted_zone
45
+
46
+ # Set output format to JSON
47
+ attr_accessor :json
48
+
49
+ # Whether to keep previous version [true/false]. If not set, use default according to account settings
50
+ attr_accessor :keep_prev_version
51
+
52
+ # The name of a key that used to encrypt the target secret value (if empty, the account default protectionKey key will be used)
53
+ attr_accessor :key
54
+
55
+ # Set the maximum number of versions, limited by the account settings defaults.
56
+ attr_accessor :max_versions
57
+
58
+ # Target name
59
+ attr_accessor :name
60
+
61
+ # New target name
62
+ attr_accessor :new_name
63
+
64
+ # Azure resource group name. Required when DNS credentials target is Azure
65
+ attr_accessor :resource_group
66
+
67
+ # Timeout for challenge validation
68
+ attr_accessor :timeout
69
+
70
+ # Authentication token (see `/auth` and `/configure`)
71
+ attr_accessor :token
72
+
73
+ # The universal identity token, Required only for universal_identity authentication
74
+ attr_accessor :uid_token
75
+
76
+ # Attribute mapping from ruby-style variable name to JSON key.
77
+ def self.attribute_map
78
+ {
79
+ :'acme_challenge' => :'acme-challenge',
80
+ :'description' => :'description',
81
+ :'digicert_url' => :'digicert-url',
82
+ :'dns_target_creds' => :'dns-target-creds',
83
+ :'eab_hmac_key' => :'eab-hmac-key',
84
+ :'eab_key_id' => :'eab-key-id',
85
+ :'email' => :'email',
86
+ :'gcp_project' => :'gcp-project',
87
+ :'hosted_zone' => :'hosted-zone',
88
+ :'json' => :'json',
89
+ :'keep_prev_version' => :'keep-prev-version',
90
+ :'key' => :'key',
91
+ :'max_versions' => :'max-versions',
92
+ :'name' => :'name',
93
+ :'new_name' => :'new-name',
94
+ :'resource_group' => :'resource-group',
95
+ :'timeout' => :'timeout',
96
+ :'token' => :'token',
97
+ :'uid_token' => :'uid-token'
98
+ }
99
+ end
100
+
101
+ # Returns all the JSON keys this model knows about
102
+ def self.acceptable_attributes
103
+ attribute_map.values
104
+ end
105
+
106
+ # Attribute type mapping.
107
+ def self.openapi_types
108
+ {
109
+ :'acme_challenge' => :'String',
110
+ :'description' => :'String',
111
+ :'digicert_url' => :'String',
112
+ :'dns_target_creds' => :'String',
113
+ :'eab_hmac_key' => :'String',
114
+ :'eab_key_id' => :'String',
115
+ :'email' => :'String',
116
+ :'gcp_project' => :'String',
117
+ :'hosted_zone' => :'String',
118
+ :'json' => :'Boolean',
119
+ :'keep_prev_version' => :'String',
120
+ :'key' => :'String',
121
+ :'max_versions' => :'String',
122
+ :'name' => :'String',
123
+ :'new_name' => :'String',
124
+ :'resource_group' => :'String',
125
+ :'timeout' => :'String',
126
+ :'token' => :'String',
127
+ :'uid_token' => :'String'
128
+ }
129
+ end
130
+
131
+ # List of attributes with nullable: true
132
+ def self.openapi_nullable
133
+ Set.new([
134
+ ])
135
+ end
136
+
137
+ # Initializes the object
138
+ # @param [Hash] attributes Model attributes in the form of hash
139
+ def initialize(attributes = {})
140
+ if (!attributes.is_a?(Hash))
141
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::TargetUpdateDigiCert` initialize method"
142
+ end
143
+
144
+ # check to see if the attribute exists and convert string to symbol for hash key
145
+ attributes = attributes.each_with_object({}) { |(k, v), h|
146
+ if (!self.class.attribute_map.key?(k.to_sym))
147
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::TargetUpdateDigiCert`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
148
+ end
149
+ h[k.to_sym] = v
150
+ }
151
+
152
+ if attributes.key?(:'acme_challenge')
153
+ self.acme_challenge = attributes[:'acme_challenge']
154
+ else
155
+ self.acme_challenge = 'dns'
156
+ end
157
+
158
+ if attributes.key?(:'description')
159
+ self.description = attributes[:'description']
160
+ end
161
+
162
+ if attributes.key?(:'digicert_url')
163
+ self.digicert_url = attributes[:'digicert_url']
164
+ else
165
+ self.digicert_url = 'us-production'
166
+ end
167
+
168
+ if attributes.key?(:'dns_target_creds')
169
+ self.dns_target_creds = attributes[:'dns_target_creds']
170
+ end
171
+
172
+ if attributes.key?(:'eab_hmac_key')
173
+ self.eab_hmac_key = attributes[:'eab_hmac_key']
174
+ end
175
+
176
+ if attributes.key?(:'eab_key_id')
177
+ self.eab_key_id = attributes[:'eab_key_id']
178
+ end
179
+
180
+ if attributes.key?(:'email')
181
+ self.email = attributes[:'email']
182
+ else
183
+ self.email = nil
184
+ end
185
+
186
+ if attributes.key?(:'gcp_project')
187
+ self.gcp_project = attributes[:'gcp_project']
188
+ end
189
+
190
+ if attributes.key?(:'hosted_zone')
191
+ self.hosted_zone = attributes[:'hosted_zone']
192
+ end
193
+
194
+ if attributes.key?(:'json')
195
+ self.json = attributes[:'json']
196
+ else
197
+ self.json = false
198
+ end
199
+
200
+ if attributes.key?(:'keep_prev_version')
201
+ self.keep_prev_version = attributes[:'keep_prev_version']
202
+ end
203
+
204
+ if attributes.key?(:'key')
205
+ self.key = attributes[:'key']
206
+ end
207
+
208
+ if attributes.key?(:'max_versions')
209
+ self.max_versions = attributes[:'max_versions']
210
+ end
211
+
212
+ if attributes.key?(:'name')
213
+ self.name = attributes[:'name']
214
+ else
215
+ self.name = nil
216
+ end
217
+
218
+ if attributes.key?(:'new_name')
219
+ self.new_name = attributes[:'new_name']
220
+ end
221
+
222
+ if attributes.key?(:'resource_group')
223
+ self.resource_group = attributes[:'resource_group']
224
+ end
225
+
226
+ if attributes.key?(:'timeout')
227
+ self.timeout = attributes[:'timeout']
228
+ else
229
+ self.timeout = '5m'
230
+ end
231
+
232
+ if attributes.key?(:'token')
233
+ self.token = attributes[:'token']
234
+ end
235
+
236
+ if attributes.key?(:'uid_token')
237
+ self.uid_token = attributes[:'uid_token']
238
+ end
239
+ end
240
+
241
+ # Show invalid properties with the reasons. Usually used together with valid?
242
+ # @return Array for valid properties with the reasons
243
+ def list_invalid_properties
244
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
245
+ invalid_properties = Array.new
246
+ if @email.nil?
247
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
248
+ end
249
+
250
+ if @name.nil?
251
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
252
+ end
253
+
254
+ invalid_properties
255
+ end
256
+
257
+ # Check to see if the all the properties in the model are valid
258
+ # @return true if the model is valid
259
+ def valid?
260
+ warn '[DEPRECATED] the `valid?` method is obsolete'
261
+ return false if @email.nil?
262
+ return false if @name.nil?
263
+ true
264
+ end
265
+
266
+ # Checks equality by comparing each attribute.
267
+ # @param [Object] Object to be compared
268
+ def ==(o)
269
+ return true if self.equal?(o)
270
+ self.class == o.class &&
271
+ acme_challenge == o.acme_challenge &&
272
+ description == o.description &&
273
+ digicert_url == o.digicert_url &&
274
+ dns_target_creds == o.dns_target_creds &&
275
+ eab_hmac_key == o.eab_hmac_key &&
276
+ eab_key_id == o.eab_key_id &&
277
+ email == o.email &&
278
+ gcp_project == o.gcp_project &&
279
+ hosted_zone == o.hosted_zone &&
280
+ json == o.json &&
281
+ keep_prev_version == o.keep_prev_version &&
282
+ key == o.key &&
283
+ max_versions == o.max_versions &&
284
+ name == o.name &&
285
+ new_name == o.new_name &&
286
+ resource_group == o.resource_group &&
287
+ timeout == o.timeout &&
288
+ token == o.token &&
289
+ uid_token == o.uid_token
290
+ end
291
+
292
+ # @see the `==` method
293
+ # @param [Object] Object to be compared
294
+ def eql?(o)
295
+ self == o
296
+ end
297
+
298
+ # Calculates hash code according to all attributes.
299
+ # @return [Integer] Hash code
300
+ def hash
301
+ [acme_challenge, description, digicert_url, dns_target_creds, eab_hmac_key, eab_key_id, email, gcp_project, hosted_zone, json, keep_prev_version, key, max_versions, name, new_name, resource_group, timeout, token, uid_token].hash
302
+ end
303
+
304
+ # Builds the object from hash
305
+ # @param [Hash] attributes Model attributes in the form of hash
306
+ # @return [Object] Returns the model itself
307
+ def self.build_from_hash(attributes)
308
+ return nil unless attributes.is_a?(Hash)
309
+ attributes = attributes.transform_keys(&:to_sym)
310
+ transformed_hash = {}
311
+ openapi_types.each_pair do |key, type|
312
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
313
+ transformed_hash["#{key}"] = nil
314
+ elsif type =~ /\AArray<(.*)>/i
315
+ # check to ensure the input is an array given that the attribute
316
+ # is documented as an array but the input is not
317
+ if attributes[attribute_map[key]].is_a?(Array)
318
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
319
+ end
320
+ elsif !attributes[attribute_map[key]].nil?
321
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
322
+ end
323
+ end
324
+ new(transformed_hash)
325
+ end
326
+
327
+ # Deserializes the data based on type
328
+ # @param string type Data type
329
+ # @param string value Value to be deserialized
330
+ # @return [Object] Deserialized data
331
+ def self._deserialize(type, value)
332
+ case type.to_sym
333
+ when :Time
334
+ Time.parse(value)
335
+ when :Date
336
+ Date.parse(value)
337
+ when :String
338
+ value.to_s
339
+ when :Integer
340
+ value.to_i
341
+ when :Float
342
+ value.to_f
343
+ when :Boolean
344
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
345
+ true
346
+ else
347
+ false
348
+ end
349
+ when :Object
350
+ # generic object (usually a Hash), return directly
351
+ value
352
+ when /\AArray<(?<inner_type>.+)>\z/
353
+ inner_type = Regexp.last_match[:inner_type]
354
+ value.map { |v| _deserialize(inner_type, v) }
355
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
356
+ k_type = Regexp.last_match[:k_type]
357
+ v_type = Regexp.last_match[:v_type]
358
+ {}.tap do |hash|
359
+ value.each do |k, v|
360
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
361
+ end
362
+ end
363
+ else # model
364
+ # models (e.g. Pet) or oneOf
365
+ klass = Akeyless.const_get(type)
366
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
367
+ end
368
+ end
369
+
370
+ # Returns the string representation of the object
371
+ # @return [String] String presentation of the object
372
+ def to_s
373
+ to_hash.to_s
374
+ end
375
+
376
+ # to_body is an alias to to_hash (backward compatibility)
377
+ # @return [Hash] Returns the object in the form of hash
378
+ def to_body
379
+ to_hash
380
+ end
381
+
382
+ # Returns the object in the form of hash
383
+ # @return [Hash] Returns the object in the form of hash
384
+ def to_hash
385
+ hash = {}
386
+ self.class.attribute_map.each_pair do |attr, param|
387
+ value = self.send(attr)
388
+ if value.nil?
389
+ is_nullable = self.class.openapi_nullable.include?(attr)
390
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
391
+ end
392
+
393
+ hash[param] = _to_hash(value)
394
+ end
395
+ hash
396
+ end
397
+
398
+ # Outputs non-array value in the form of hash
399
+ # For object, use to_hash. Otherwise, just return the value
400
+ # @param [Object] value Any valid value
401
+ # @return [Hash] Returns the value in the form of hash
402
+ def _to_hash(value)
403
+ if value.is_a?(Array)
404
+ value.compact.map { |v| _to_hash(v) }
405
+ elsif value.is_a?(Hash)
406
+ {}.tap do |hash|
407
+ value.each { |k, v| hash[k] = _to_hash(v) }
408
+ end
409
+ elsif value.respond_to? :to_hash
410
+ value.to_hash
411
+ else
412
+ value
413
+ end
414
+ end
415
+
416
+ end
417
+
418
+ end
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class TargetUpdateDockerhub
18
+ # Protection from accidental deletion of this object [true/false]
19
+ attr_accessor :delete_protection
20
+
18
21
  # Description of the object
19
22
  attr_accessor :description
20
23
 
@@ -51,6 +54,7 @@ module Akeyless
51
54
  # Attribute mapping from ruby-style variable name to JSON key.
52
55
  def self.attribute_map
53
56
  {
57
+ :'delete_protection' => :'delete_protection',
54
58
  :'description' => :'description',
55
59
  :'dockerhub_password' => :'dockerhub-password',
56
60
  :'dockerhub_username' => :'dockerhub-username',
@@ -73,6 +77,7 @@ module Akeyless
73
77
  # Attribute type mapping.
74
78
  def self.openapi_types
75
79
  {
80
+ :'delete_protection' => :'String',
76
81
  :'description' => :'String',
77
82
  :'dockerhub_password' => :'String',
78
83
  :'dockerhub_username' => :'String',
@@ -108,6 +113,10 @@ module Akeyless
108
113
  h[k.to_sym] = v
109
114
  }
110
115
 
116
+ if attributes.key?(:'delete_protection')
117
+ self.delete_protection = attributes[:'delete_protection']
118
+ end
119
+
111
120
  if attributes.key?(:'description')
112
121
  self.description = attributes[:'description']
113
122
  end
@@ -182,6 +191,7 @@ module Akeyless
182
191
  def ==(o)
183
192
  return true if self.equal?(o)
184
193
  self.class == o.class &&
194
+ delete_protection == o.delete_protection &&
185
195
  description == o.description &&
186
196
  dockerhub_password == o.dockerhub_password &&
187
197
  dockerhub_username == o.dockerhub_username &&
@@ -204,7 +214,7 @@ module Akeyless
204
214
  # Calculates hash code according to all attributes.
205
215
  # @return [Integer] Hash code
206
216
  def hash
207
- [description, dockerhub_password, dockerhub_username, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token].hash
217
+ [delete_protection, description, dockerhub_password, dockerhub_username, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token].hash
208
218
  end
209
219
 
210
220
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class TargetUpdateEks
18
+ # Protection from accidental deletion of this object [true/false]
19
+ attr_accessor :delete_protection
20
+
18
21
  # Description of the object
19
22
  attr_accessor :description
20
23
 
@@ -65,6 +68,7 @@ module Akeyless
65
68
  # Attribute mapping from ruby-style variable name to JSON key.
66
69
  def self.attribute_map
67
70
  {
71
+ :'delete_protection' => :'delete_protection',
68
72
  :'description' => :'description',
69
73
  :'eks_access_key_id' => :'eks-access-key-id',
70
74
  :'eks_cluster_ca_cert' => :'eks-cluster-ca-cert',
@@ -92,6 +96,7 @@ module Akeyless
92
96
  # Attribute type mapping.
93
97
  def self.openapi_types
94
98
  {
99
+ :'delete_protection' => :'String',
95
100
  :'description' => :'String',
96
101
  :'eks_access_key_id' => :'String',
97
102
  :'eks_cluster_ca_cert' => :'String',
@@ -132,6 +137,10 @@ module Akeyless
132
137
  h[k.to_sym] = v
133
138
  }
134
139
 
140
+ if attributes.key?(:'delete_protection')
141
+ self.delete_protection = attributes[:'delete_protection']
142
+ end
143
+
135
144
  if attributes.key?(:'description')
136
145
  self.description = attributes[:'description']
137
146
  end
@@ -263,6 +272,7 @@ module Akeyless
263
272
  def ==(o)
264
273
  return true if self.equal?(o)
265
274
  self.class == o.class &&
275
+ delete_protection == o.delete_protection &&
266
276
  description == o.description &&
267
277
  eks_access_key_id == o.eks_access_key_id &&
268
278
  eks_cluster_ca_cert == o.eks_cluster_ca_cert &&
@@ -290,7 +300,7 @@ module Akeyless
290
300
  # Calculates hash code according to all attributes.
291
301
  # @return [Integer] Hash code
292
302
  def hash
293
- [description, eks_access_key_id, eks_cluster_ca_cert, eks_cluster_endpoint, eks_cluster_name, eks_region, eks_secret_access_key, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token, use_gw_cloud_identity].hash
303
+ [delete_protection, description, eks_access_key_id, eks_cluster_ca_cert, eks_cluster_endpoint, eks_cluster_name, eks_region, eks_secret_access_key, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token, use_gw_cloud_identity].hash
294
304
  end
295
305
 
296
306
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class TargetUpdateGcp
18
+ # Protection from accidental deletion of this object [true/false]
19
+ attr_accessor :delete_protection
20
+
18
21
  # Description of the object
19
22
  attr_accessor :description
20
23
 
@@ -50,6 +53,7 @@ module Akeyless
50
53
  # Attribute mapping from ruby-style variable name to JSON key.
51
54
  def self.attribute_map
52
55
  {
56
+ :'delete_protection' => :'delete_protection',
53
57
  :'description' => :'description',
54
58
  :'gcp_key' => :'gcp-key',
55
59
  :'json' => :'json',
@@ -72,6 +76,7 @@ module Akeyless
72
76
  # Attribute type mapping.
73
77
  def self.openapi_types
74
78
  {
79
+ :'delete_protection' => :'String',
75
80
  :'description' => :'String',
76
81
  :'gcp_key' => :'String',
77
82
  :'json' => :'Boolean',
@@ -107,6 +112,10 @@ module Akeyless
107
112
  h[k.to_sym] = v
108
113
  }
109
114
 
115
+ if attributes.key?(:'delete_protection')
116
+ self.delete_protection = attributes[:'delete_protection']
117
+ end
118
+
110
119
  if attributes.key?(:'description')
111
120
  self.description = attributes[:'description']
112
121
  end
@@ -181,6 +190,7 @@ module Akeyless
181
190
  def ==(o)
182
191
  return true if self.equal?(o)
183
192
  self.class == o.class &&
193
+ delete_protection == o.delete_protection &&
184
194
  description == o.description &&
185
195
  gcp_key == o.gcp_key &&
186
196
  json == o.json &&
@@ -203,7 +213,7 @@ module Akeyless
203
213
  # Calculates hash code according to all attributes.
204
214
  # @return [Integer] Hash code
205
215
  def hash
206
- [description, gcp_key, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token, use_gw_cloud_identity].hash
216
+ [delete_protection, description, gcp_key, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token, use_gw_cloud_identity].hash
207
217
  end
208
218
 
209
219
  # Builds the object from hash
@@ -19,6 +19,9 @@ module Akeyless
19
19
  # API key for Gemini
20
20
  attr_accessor :api_key
21
21
 
22
+ # Protection from accidental deletion of this object [true/false]
23
+ attr_accessor :delete_protection
24
+
22
25
  # Description of the object
23
26
  attr_accessor :description
24
27
 
@@ -56,6 +59,7 @@ module Akeyless
56
59
  def self.attribute_map
57
60
  {
58
61
  :'api_key' => :'api-key',
62
+ :'delete_protection' => :'delete_protection',
59
63
  :'description' => :'description',
60
64
  :'gemini_url' => :'gemini-url',
61
65
  :'json' => :'json',
@@ -79,6 +83,7 @@ module Akeyless
79
83
  def self.openapi_types
80
84
  {
81
85
  :'api_key' => :'String',
86
+ :'delete_protection' => :'String',
82
87
  :'description' => :'String',
83
88
  :'gemini_url' => :'String',
84
89
  :'json' => :'Boolean',
@@ -118,6 +123,10 @@ module Akeyless
118
123
  self.api_key = attributes[:'api_key']
119
124
  end
120
125
 
126
+ if attributes.key?(:'delete_protection')
127
+ self.delete_protection = attributes[:'delete_protection']
128
+ end
129
+
121
130
  if attributes.key?(:'description')
122
131
  self.description = attributes[:'description']
123
132
  else
@@ -199,6 +208,7 @@ module Akeyless
199
208
  return true if self.equal?(o)
200
209
  self.class == o.class &&
201
210
  api_key == o.api_key &&
211
+ delete_protection == o.delete_protection &&
202
212
  description == o.description &&
203
213
  gemini_url == o.gemini_url &&
204
214
  json == o.json &&
@@ -221,7 +231,7 @@ module Akeyless
221
231
  # Calculates hash code according to all attributes.
222
232
  # @return [Integer] Hash code
223
233
  def hash
224
- [api_key, description, gemini_url, json, keep_prev_version, key, max_versions, name, new_comment, new_name, token, uid_token].hash
234
+ [api_key, delete_protection, description, gemini_url, json, keep_prev_version, key, max_versions, name, new_comment, new_name, token, uid_token].hash
225
235
  end
226
236
 
227
237
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class TargetUpdateGithub
18
+ # Protection from accidental deletion of this object [true/false]
19
+ attr_accessor :delete_protection
20
+
18
21
  # Description of the object
19
22
  attr_accessor :description
20
23
 
@@ -54,6 +57,7 @@ module Akeyless
54
57
  # Attribute mapping from ruby-style variable name to JSON key.
55
58
  def self.attribute_map
56
59
  {
60
+ :'delete_protection' => :'delete_protection',
57
61
  :'description' => :'description',
58
62
  :'github_app_id' => :'github-app-id',
59
63
  :'github_app_private_key' => :'github-app-private-key',
@@ -77,6 +81,7 @@ module Akeyless
77
81
  # Attribute type mapping.
78
82
  def self.openapi_types
79
83
  {
84
+ :'delete_protection' => :'String',
80
85
  :'description' => :'String',
81
86
  :'github_app_id' => :'Integer',
82
87
  :'github_app_private_key' => :'String',
@@ -113,6 +118,10 @@ module Akeyless
113
118
  h[k.to_sym] = v
114
119
  }
115
120
 
121
+ if attributes.key?(:'delete_protection')
122
+ self.delete_protection = attributes[:'delete_protection']
123
+ end
124
+
116
125
  if attributes.key?(:'description')
117
126
  self.description = attributes[:'description']
118
127
  end
@@ -193,6 +202,7 @@ module Akeyless
193
202
  def ==(o)
194
203
  return true if self.equal?(o)
195
204
  self.class == o.class &&
205
+ delete_protection == o.delete_protection &&
196
206
  description == o.description &&
197
207
  github_app_id == o.github_app_id &&
198
208
  github_app_private_key == o.github_app_private_key &&
@@ -216,7 +226,7 @@ module Akeyless
216
226
  # Calculates hash code according to all attributes.
217
227
  # @return [Integer] Hash code
218
228
  def hash
219
- [description, github_app_id, github_app_private_key, github_base_url, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token].hash
229
+ [delete_protection, description, github_app_id, github_app_private_key, github_base_url, json, keep_prev_version, key, max_versions, name, new_name, token, uid_token].hash
220
230
  end
221
231
 
222
232
  # Builds the object from hash