ibm_cloud_power 3.0.0 → 3.1.0

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 (931) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +423 -11
  3. data/docs/AddHost.md +1 -1
  4. data/docs/AuxiliaryVolumesForOnboarding.md +2 -2
  5. data/docs/AuxiliaryVolumesForOnboardingAuxiliaryVolumesInner.md +20 -0
  6. data/docs/AvailableHostCapacity.md +2 -2
  7. data/docs/AvailableHostCapacityCores.md +18 -0
  8. data/docs/CapabilitiesDetails.md +2 -2
  9. data/docs/CapabilitiesDetailsDisasterRecovery.md +20 -0
  10. data/docs/CapabilitiesDetailsSupportedSystems.md +20 -0
  11. data/docs/CloneTaskReference.md +2 -2
  12. data/docs/ClonedVolumeDetail.md +2 -2
  13. data/docs/ClonedVolumeDetailClone.md +22 -0
  14. data/docs/CloudConnection.md +2 -2
  15. data/docs/CloudConnectionClassic.md +20 -0
  16. data/docs/CloudConnectionCreate.md +2 -2
  17. data/docs/CloudConnectionCreateClassic.md +20 -0
  18. data/docs/CloudConnectionCreateResponse.md +5 -5
  19. data/docs/CloudConnectionUpdate.md +2 -2
  20. data/docs/CloudConnectionVirtualPrivateClouds.md +1 -1
  21. data/docs/CloudConnectionVpc.md +4 -4
  22. data/docs/CloudInstance.md +2 -2
  23. data/docs/CloudInstanceReference.md +1 -1
  24. data/docs/CloudInstanceUsageLimits.md +4 -4
  25. data/docs/CreateCosImageImportJob.md +4 -4
  26. data/docs/CreateDataVolume.md +2 -2
  27. data/docs/CreateImage.md +2 -2
  28. data/docs/CreateServerVirtualSerialNumber.md +3 -1
  29. data/docs/CreateWorkspaceSSHKey.md +24 -0
  30. data/docs/Datacenter.md +2 -2
  31. data/docs/DisasterRecovery.md +2 -2
  32. data/docs/DisasterRecoveryAsynchronousReplication.md +20 -0
  33. data/docs/DisasterRecoveryLocation.md +1 -1
  34. data/docs/GetServerVirtualSerialNumber.md +3 -1
  35. data/docs/Host.md +3 -3
  36. data/docs/HostCapacity.md +2 -2
  37. data/docs/HostCapacityCores.md +24 -0
  38. data/docs/HostHostGroup.md +22 -0
  39. data/docs/Image.md +3 -3
  40. data/docs/ImageReference.md +1 -1
  41. data/docs/ImageTaskref.md +20 -0
  42. data/docs/Job.md +2 -2
  43. data/docs/JobAction.md +24 -0
  44. data/docs/JobOperation.md +22 -0
  45. data/docs/JobResourceDetails.md +22 -0
  46. data/docs/JobResources.md +20 -0
  47. data/docs/JobStatus.md +22 -0
  48. data/docs/JobWorkflow.md +20 -0
  49. data/docs/MaximumStorageAllocation.md +1 -1
  50. data/docs/MetadataService.md +18 -0
  51. data/docs/MultiVolumesCreate.md +2 -2
  52. data/docs/Network.md +9 -3
  53. data/docs/NetworkAddressGroup.md +1 -1
  54. data/docs/NetworkAddressGroupCreate.md +1 -1
  55. data/docs/NetworkCreate.md +8 -2
  56. data/docs/NetworkInterface.md +3 -1
  57. data/docs/NetworkInterfaceCreate.md +1 -1
  58. data/docs/NetworkPeer.md +50 -0
  59. data/docs/NetworkPeerCreate.md +36 -0
  60. data/docs/NetworkPeerUpdate.md +36 -0
  61. data/docs/NetworkPeers.md +18 -0
  62. data/docs/NetworkPeersApi.md +576 -0
  63. data/docs/NetworkReference.md +6 -2
  64. data/docs/NetworkSecurityGroup.md +1 -1
  65. data/docs/NetworkSecurityGroupAddRule.md +4 -4
  66. data/docs/NetworkSecurityGroupCreate.md +1 -1
  67. data/docs/NetworkUpdate.md +4 -0
  68. data/docs/NetworksApi.md +4 -4
  69. data/docs/PCloudImagesApi.md +1 -1
  70. data/docs/PCloudPVMInstancesApi.md +1 -1
  71. data/docs/PCloudSnapshotsApi.md +4 -4
  72. data/docs/PCloudVPMemVolumesApi.md +346 -0
  73. data/docs/PCloudVPNConnectionsApi.md +2 -2
  74. data/docs/PCloudVPNPoliciesApi.md +4 -4
  75. data/docs/PCloudVirtualSerialNumberApi.md +60 -0
  76. data/docs/PCloudVolumeGroupsApi.md +2 -2
  77. data/docs/PCloudVolumeOnboardingApi.md +1 -1
  78. data/docs/PVMInstance.md +25 -13
  79. data/docs/PVMInstanceAction.md +1 -1
  80. data/docs/PVMInstanceCapture.md +1 -1
  81. data/docs/PVMInstanceConfiguration.md +4 -4
  82. data/docs/PVMInstanceCreate.md +19 -9
  83. data/docs/PVMInstanceMemory.md +2 -2
  84. data/docs/PVMInstanceReference.md +24 -12
  85. data/docs/PVMInstanceReferenceV2.md +14 -10
  86. data/docs/PVMInstanceUpdate.md +12 -4
  87. data/docs/PVMInstanceUpdateResponse.md +12 -4
  88. data/docs/PeerInterface.md +26 -0
  89. data/docs/PlacementGroup.md +5 -1
  90. data/docs/PlacementGroupCreate.md +3 -1
  91. data/docs/PodData.md +6 -6
  92. data/docs/Route.md +40 -0
  93. data/docs/RouteCreate.md +34 -0
  94. data/docs/RouteFilter.md +36 -0
  95. data/docs/RouteFilterCreate.md +28 -0
  96. data/docs/RouteReport.md +18 -0
  97. data/docs/RouteReportRoute.md +20 -0
  98. data/docs/RouteUpdate.md +32 -0
  99. data/docs/Routes.md +18 -0
  100. data/docs/RoutesApi.md +383 -0
  101. data/docs/SAPCreate.md +15 -5
  102. data/docs/SAPProfile.md +7 -1
  103. data/docs/SAPProfileVpmemVolume.md +20 -0
  104. data/docs/SPPPlacementGroup.md +5 -1
  105. data/docs/SPPPlacementGroupCreate.md +3 -1
  106. data/docs/SSHKeysApi.md +321 -0
  107. data/docs/SharedProcessorPool.md +4 -2
  108. data/docs/SharedProcessorPoolCreate.md +1 -1
  109. data/docs/SharedProcessorPoolDetail.md +1 -1
  110. data/docs/SharedProcessorPoolDetailSharedProcessorPool.md +44 -0
  111. data/docs/Snapshot.md +1 -1
  112. data/docs/SnapshotCreate.md +1 -1
  113. data/docs/SnapshotCreateResponse.md +2 -2
  114. data/docs/SnapshotUpdate.md +1 -1
  115. data/docs/SnapshotsApi.md +9 -9
  116. data/docs/SoftwareLicenses.md +1 -1
  117. data/docs/{CloudConnectionSpeed.md → SoftwareTier.md} +2 -2
  118. data/docs/StorageController.md +2 -2
  119. data/docs/StoragePoolCapacity.md +3 -3
  120. data/docs/StoragePoolCombined.md +2 -2
  121. data/docs/StoragePoolsCapacity.md +1 -1
  122. data/docs/StoragePoolsCapacityMaximumStorageAllocation.md +22 -0
  123. data/docs/StorageTypeCapacity.md +1 -1
  124. data/docs/StorageTypesCapacity.md +1 -1
  125. data/docs/SupportedSoftwareTier.md +20 -0
  126. data/docs/System.md +1 -1
  127. data/docs/SystemPool.md +6 -6
  128. data/docs/SystemPoolCapacity.md +14 -8
  129. data/docs/SystemPoolSharedCoreRatio.md +22 -0
  130. data/docs/SystemResources.md +1 -1
  131. data/docs/TargetTrustedProfile.md +22 -0
  132. data/docs/TrustedProfile.md +20 -0
  133. data/docs/UpdateMetadataService.md +20 -0
  134. data/docs/UpdateServerVirtualSerialNumber.md +3 -1
  135. data/docs/UpdateTrustedProfile.md +20 -0
  136. data/docs/UpdateWorkspaceSSHKey.md +24 -0
  137. data/docs/VPMemVolumeAttach.md +20 -0
  138. data/docs/VPMemVolumeCreate.md +20 -0
  139. data/docs/VPMemVolumeReference.md +38 -0
  140. data/docs/VPMemVolumeUpdate.md +18 -0
  141. data/docs/VPMemVolumes.md +18 -0
  142. data/docs/VPNConnectionCreateResponse.md +4 -4
  143. data/docs/VirtualSerialNumber.md +3 -1
  144. data/docs/Volume.md +2 -2
  145. data/docs/VolumeGroup.md +1 -1
  146. data/docs/VolumeGroupDetails.md +1 -1
  147. data/docs/VolumeInfo.md +1 -1
  148. data/docs/VolumeOnboarding.md +7 -7
  149. data/docs/VolumeOnboardingAllOfResults.md +20 -0
  150. data/docs/VolumeOnboardingAllOfResultsVolumeOnboardingFailures.md +20 -0
  151. data/docs/VolumeOnboardingCreate.md +2 -2
  152. data/docs/VolumeOnboardingCreateVolumesInner.md +20 -0
  153. data/docs/VolumeReference.md +2 -2
  154. data/docs/VolumeRemoteCopyRelationship.md +5 -5
  155. data/docs/VolumesCloneAsyncRequest.md +1 -1
  156. data/docs/VolumesCloneExecute.md +1 -1
  157. data/docs/Workspace.md +2 -2
  158. data/docs/WorkspaceDetails.md +2 -2
  159. data/docs/WorkspaceSSHKey.md +30 -0
  160. data/docs/WorkspaceSSHKeys.md +18 -0
  161. data/docs/WorkspacesApi.md +10 -5
  162. data/ibm_cloud_power.gemspec +5 -4
  163. data/lib/ibm_cloud_power/api/datacenters_api.rb +9 -9
  164. data/lib/ibm_cloud_power/api/host_groups_api.rb +18 -18
  165. data/lib/ibm_cloud_power/api/network_address_groups_api.rb +15 -15
  166. data/lib/ibm_cloud_power/api/network_peers_api.rb +598 -0
  167. data/lib/ibm_cloud_power/api/network_security_groups_api.rb +24 -24
  168. data/lib/ibm_cloud_power/api/networks_api.rb +15 -15
  169. data/lib/ibm_cloud_power/api/p_cloud_cloud_connections_api.rb +19 -19
  170. data/lib/ibm_cloud_power/api/p_cloud_disaster_recovery_api.rb +6 -6
  171. data/lib/ibm_cloud_power/api/p_cloud_events_api.rb +7 -7
  172. data/lib/ibm_cloud_power/api/p_cloud_images_api.rb +28 -28
  173. data/lib/ibm_cloud_power/api/p_cloud_instances_api.rb +5 -5
  174. data/lib/ibm_cloud_power/api/p_cloud_jobs_api.rb +9 -9
  175. data/lib/ibm_cloud_power/api/p_cloud_networks_api.rb +23 -23
  176. data/lib/ibm_cloud_power/api/p_cloud_placement_groups_api.rb +15 -15
  177. data/lib/ibm_cloud_power/api/p_cloud_pod_capacity_api.rb +5 -5
  178. data/lib/ibm_cloud_power/api/p_cloud_pvm_instances_api.rb +45 -45
  179. data/lib/ibm_cloud_power/api/p_cloud_sap_api.rb +11 -11
  180. data/lib/ibm_cloud_power/api/p_cloud_shared_processor_pools_api.rb +13 -13
  181. data/lib/ibm_cloud_power/api/p_cloud_snapshots_api.rb +14 -14
  182. data/lib/ibm_cloud_power/api/p_cloud_spp_placement_groups_api.rb +15 -15
  183. data/lib/ibm_cloud_power/api/p_cloud_storage_capacity_api.rb +11 -11
  184. data/lib/ibm_cloud_power/api/p_cloud_storage_tiers_api.rb +5 -5
  185. data/lib/ibm_cloud_power/api/p_cloud_tasks_api.rb +7 -7
  186. data/lib/ibm_cloud_power/api/p_cloud_tenants_api.rb +7 -7
  187. data/lib/ibm_cloud_power/api/p_cloud_tenants_ssh_keys_api.rb +13 -13
  188. data/lib/ibm_cloud_power/api/p_cloud_virtual_serial_number_api.rb +73 -18
  189. data/lib/ibm_cloud_power/api/p_cloud_volume_groups_api.rb +25 -25
  190. data/lib/ibm_cloud_power/api/p_cloud_volume_onboarding_api.rb +9 -9
  191. data/lib/ibm_cloud_power/api/p_cloud_volumes_api.rb +59 -59
  192. data/lib/ibm_cloud_power/api/p_cloud_vp_mem_volumes_api.rb +401 -0
  193. data/lib/ibm_cloud_power/api/p_cloud_vpn_connections_api.rb +27 -27
  194. data/lib/ibm_cloud_power/api/p_cloud_vpn_policies_api.rb +27 -27
  195. data/lib/ibm_cloud_power/api/routes_api.rb +388 -0
  196. data/lib/ibm_cloud_power/api/snapshots_api.rb +16 -16
  197. data/lib/ibm_cloud_power/api/ssh_keys_api.rb +337 -0
  198. data/lib/ibm_cloud_power/api/workspaces_api.rb +9 -6
  199. data/lib/ibm_cloud_power/api_client.rb +34 -27
  200. data/lib/ibm_cloud_power/api_error.rb +4 -3
  201. data/lib/ibm_cloud_power/api_model_base.rb +88 -0
  202. data/lib/ibm_cloud_power/configuration.rb +40 -10
  203. data/lib/ibm_cloud_power/models/access_config.rb +9 -6
  204. data/lib/ibm_cloud_power/models/add_host.rb +102 -99
  205. data/lib/ibm_cloud_power/models/add_server_virtual_serial_number.rb +37 -96
  206. data/lib/ibm_cloud_power/models/auxiliary_volume_for_onboarding.rb +43 -98
  207. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding.rb +51 -98
  208. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding_auxiliary_volumes_inner.rb +212 -0
  209. data/lib/ibm_cloud_power/models/available_host.rb +25 -97
  210. data/lib/ibm_cloud_power/models/available_host_capacity.rb +34 -100
  211. data/lib/ibm_cloud_power/models/available_host_capacity_cores.rb +171 -0
  212. data/lib/ibm_cloud_power/models/available_host_resource_capacity.rb +37 -96
  213. data/lib/ibm_cloud_power/models/capabilities_details.rb +61 -100
  214. data/lib/ibm_cloud_power/models/capabilities_details_disaster_recovery.rb +180 -0
  215. data/lib/ibm_cloud_power/models/capabilities_details_supported_systems.rb +203 -0
  216. data/lib/ibm_cloud_power/models/clone_task_reference.rb +51 -98
  217. data/lib/ibm_cloud_power/models/clone_task_status.rb +39 -96
  218. data/lib/ibm_cloud_power/models/cloned_volume.rb +25 -96
  219. data/lib/ibm_cloud_power/models/cloned_volume_detail.rb +61 -100
  220. data/lib/ibm_cloud_power/models/cloned_volume_detail_clone.rb +175 -0
  221. data/lib/ibm_cloud_power/models/cloud_connection.rb +147 -100
  222. data/lib/ibm_cloud_power/models/cloud_connection_classic.rb +164 -0
  223. data/lib/ibm_cloud_power/models/cloud_connection_create.rb +41 -100
  224. data/lib/ibm_cloud_power/models/cloud_connection_create_classic.rb +164 -0
  225. data/lib/ibm_cloud_power/models/cloud_connection_create_response.rb +159 -112
  226. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic.rb +25 -97
  227. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic_update.rb +25 -97
  228. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_vpc.rb +25 -96
  229. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel.rb +49 -96
  230. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel_create.rb +49 -96
  231. data/lib/ibm_cloud_power/models/cloud_connection_update.rb +27 -100
  232. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds.rb +38 -97
  233. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner.rb +246 -0
  234. data/lib/ibm_cloud_power/models/cloud_connection_vpc.rb +49 -116
  235. data/lib/ibm_cloud_power/models/cloud_connections.rb +37 -96
  236. data/lib/ibm_cloud_power/models/cloud_instance.rb +157 -98
  237. data/lib/ibm_cloud_power/models/cloud_instance_reference.rb +115 -97
  238. data/lib/ibm_cloud_power/models/cloud_instance_usage_limits.rb +89 -100
  239. data/lib/ibm_cloud_power/models/console_language.rb +37 -96
  240. data/lib/ibm_cloud_power/models/console_languages.rb +37 -96
  241. data/lib/ibm_cloud_power/models/create_cos_image_import_job.rb +85 -104
  242. data/lib/ibm_cloud_power/models/create_data_volume.rb +74 -100
  243. data/lib/ibm_cloud_power/models/create_image.rb +52 -100
  244. data/lib/ibm_cloud_power/models/create_server_virtual_serial_number.rb +72 -100
  245. data/lib/ibm_cloud_power/models/create_workspace_ssh_key.rb +268 -0
  246. data/lib/ibm_cloud_power/models/datacenter.rb +60 -98
  247. data/lib/ibm_cloud_power/models/datacenter_location.rb +73 -96
  248. data/lib/ibm_cloud_power/models/datacenters.rb +37 -96
  249. data/lib/ibm_cloud_power/models/dead_peer_detection.rb +27 -96
  250. data/lib/ibm_cloud_power/models/delete_server_virtual_serial_number.rb +25 -96
  251. data/lib/ibm_cloud_power/models/deployment_target.rb +39 -96
  252. data/lib/ibm_cloud_power/models/disaster_recovery.rb +44 -100
  253. data/lib/ibm_cloud_power/models/disaster_recovery_asynchronous_replication.rb +201 -0
  254. data/lib/ibm_cloud_power/models/disaster_recovery_location.rb +30 -99
  255. data/lib/ibm_cloud_power/models/disaster_recovery_locations.rb +37 -96
  256. data/lib/ibm_cloud_power/models/error.rb +25 -96
  257. data/lib/ibm_cloud_power/models/event.rb +99 -96
  258. data/lib/ibm_cloud_power/models/event_user.rb +37 -96
  259. data/lib/ibm_cloud_power/models/events.rb +37 -96
  260. data/lib/ibm_cloud_power/models/export_image.rb +49 -96
  261. data/lib/ibm_cloud_power/models/flash_copy_mapping.rb +37 -96
  262. data/lib/ibm_cloud_power/models/get_bulk_volume.rb +37 -96
  263. data/lib/ibm_cloud_power/models/get_server_virtual_serial_number.rb +84 -100
  264. data/lib/ibm_cloud_power/models/host.rb +51 -103
  265. data/lib/ibm_cloud_power/models/host_capacity.rb +34 -100
  266. data/lib/ibm_cloud_power/models/host_capacity_cores.rb +249 -0
  267. data/lib/ibm_cloud_power/models/host_create.rb +49 -96
  268. data/lib/ibm_cloud_power/models/host_group.rb +25 -96
  269. data/lib/ibm_cloud_power/models/host_group_create.rb +49 -96
  270. data/lib/ibm_cloud_power/models/host_group_share_op.rb +25 -96
  271. data/lib/ibm_cloud_power/models/host_group_summary.rb +25 -96
  272. data/lib/ibm_cloud_power/models/host_host_group.rb +175 -0
  273. data/lib/ibm_cloud_power/models/host_put.rb +66 -96
  274. data/lib/ibm_cloud_power/models/host_resource_capacity.rb +73 -96
  275. data/lib/ibm_cloud_power/models/ike_policies.rb +37 -96
  276. data/lib/ibm_cloud_power/models/ike_policy.rb +69 -96
  277. data/lib/ibm_cloud_power/models/ike_policy_authentication.rb +9 -6
  278. data/lib/ibm_cloud_power/models/ike_policy_create.rb +49 -98
  279. data/lib/ibm_cloud_power/models/ike_policy_ref.rb +49 -96
  280. data/lib/ibm_cloud_power/models/ike_policy_update.rb +39 -102
  281. data/lib/ibm_cloud_power/models/image.rb +147 -103
  282. data/lib/ibm_cloud_power/models/image_import_details.rb +31 -96
  283. data/lib/ibm_cloud_power/models/image_reference.rb +151 -98
  284. data/lib/ibm_cloud_power/models/image_specifications.rb +32 -96
  285. data/lib/ibm_cloud_power/models/image_taskref.rb +199 -0
  286. data/lib/ibm_cloud_power/models/image_volume.rb +73 -96
  287. data/lib/ibm_cloud_power/models/images.rb +37 -96
  288. data/lib/ibm_cloud_power/models/ip_address_range.rb +49 -96
  289. data/lib/ibm_cloud_power/models/ip_sec_policies.rb +37 -96
  290. data/lib/ibm_cloud_power/models/ip_sec_policy.rb +79 -96
  291. data/lib/ibm_cloud_power/models/ip_sec_policy_create.rb +47 -98
  292. data/lib/ibm_cloud_power/models/ip_sec_policy_ref.rb +49 -96
  293. data/lib/ibm_cloud_power/models/ip_sec_policy_update.rb +39 -102
  294. data/lib/ibm_cloud_power/models/ipsec_policy_authentication.rb +9 -6
  295. data/lib/ibm_cloud_power/models/job.rb +73 -100
  296. data/lib/ibm_cloud_power/models/job_action.rb +212 -0
  297. data/lib/ibm_cloud_power/models/job_operation.rb +226 -0
  298. data/lib/ibm_cloud_power/models/job_reference.rb +49 -96
  299. data/lib/ibm_cloud_power/models/job_resource_details.rb +202 -0
  300. data/lib/ibm_cloud_power/models/job_resources.rb +160 -0
  301. data/lib/ibm_cloud_power/models/job_status.rb +209 -0
  302. data/lib/ibm_cloud_power/models/job_workflow.rb +177 -0
  303. data/lib/ibm_cloud_power/models/jobs.rb +37 -96
  304. data/lib/ibm_cloud_power/models/maximum_storage_allocation.rb +62 -97
  305. data/lib/ibm_cloud_power/models/metadata_service.rb +166 -0
  306. data/lib/ibm_cloud_power/models/min_max_default.rb +61 -96
  307. data/lib/ibm_cloud_power/models/multi_volumes_create.rb +74 -100
  308. data/lib/ibm_cloud_power/models/network.rb +194 -102
  309. data/lib/ibm_cloud_power/models/network_address_group.rb +81 -97
  310. data/lib/ibm_cloud_power/models/network_address_group_add_member.rb +37 -96
  311. data/lib/ibm_cloud_power/models/network_address_group_create.rb +57 -97
  312. data/lib/ibm_cloud_power/models/network_address_group_member.rb +49 -96
  313. data/lib/ibm_cloud_power/models/network_address_group_update.rb +25 -96
  314. data/lib/ibm_cloud_power/models/network_address_groups.rb +25 -96
  315. data/lib/ibm_cloud_power/models/network_address_translation.rb +26 -97
  316. data/lib/ibm_cloud_power/models/network_cloud_connections_inner.rb +158 -0
  317. data/lib/ibm_cloud_power/models/network_create.rb +123 -107
  318. data/lib/ibm_cloud_power/models/network_id.rb +37 -96
  319. data/lib/ibm_cloud_power/models/network_ids.rb +25 -96
  320. data/lib/ibm_cloud_power/models/network_interface.rb +128 -98
  321. data/lib/ibm_cloud_power/models/network_interface_create.rb +45 -97
  322. data/lib/ibm_cloud_power/models/network_interface_instance.rb +25 -96
  323. data/lib/ibm_cloud_power/models/network_interface_update.rb +25 -96
  324. data/lib/ibm_cloud_power/models/network_interfaces.rb +37 -96
  325. data/lib/ibm_cloud_power/models/network_ip_address_metrics.rb +73 -96
  326. data/lib/ibm_cloud_power/models/network_peer.rb +631 -0
  327. data/lib/ibm_cloud_power/models/network_peer_create.rb +422 -0
  328. data/lib/ibm_cloud_power/models/network_peer_update.rb +310 -0
  329. data/lib/ibm_cloud_power/models/network_peers.rb +167 -0
  330. data/lib/ibm_cloud_power/models/network_port.rb +85 -96
  331. data/lib/ibm_cloud_power/models/network_port_create.rb +25 -96
  332. data/lib/ibm_cloud_power/models/network_port_pvm_instance.rb +25 -96
  333. data/lib/ibm_cloud_power/models/network_port_update.rb +25 -96
  334. data/lib/ibm_cloud_power/models/network_ports.rb +37 -96
  335. data/lib/ibm_cloud_power/models/network_reference.rb +126 -101
  336. data/lib/ibm_cloud_power/models/network_security_group.rb +81 -97
  337. data/lib/ibm_cloud_power/models/network_security_group_add_member.rb +39 -96
  338. data/lib/ibm_cloud_power/models/network_security_group_add_rule.rb +55 -100
  339. data/lib/ibm_cloud_power/models/network_security_group_clone.rb +37 -96
  340. data/lib/ibm_cloud_power/models/network_security_group_create.rb +57 -97
  341. data/lib/ibm_cloud_power/models/network_security_group_member.rb +51 -96
  342. data/lib/ibm_cloud_power/models/network_security_group_move_member.rb +49 -96
  343. data/lib/ibm_cloud_power/models/network_security_group_rule.rb +63 -96
  344. data/lib/ibm_cloud_power/models/network_security_group_rule_port.rb +35 -98
  345. data/lib/ibm_cloud_power/models/network_security_group_rule_protocol.rb +25 -96
  346. data/lib/ibm_cloud_power/models/network_security_group_rule_protocol_tcp_flag.rb +25 -96
  347. data/lib/ibm_cloud_power/models/network_security_group_rule_remote.rb +25 -96
  348. data/lib/ibm_cloud_power/models/network_security_group_update.rb +25 -96
  349. data/lib/ibm_cloud_power/models/network_security_groups.rb +25 -96
  350. data/lib/ibm_cloud_power/models/network_security_groups_action.rb +27 -96
  351. data/lib/ibm_cloud_power/models/network_update.rb +92 -97
  352. data/lib/ibm_cloud_power/models/networks.rb +37 -96
  353. data/lib/ibm_cloud_power/models/operation.rb +61 -96
  354. data/lib/ibm_cloud_power/models/operations.rb +27 -98
  355. data/lib/ibm_cloud_power/models/peer_interface.rb +297 -0
  356. data/lib/ibm_cloud_power/models/peer_subnet_update.rb +37 -96
  357. data/lib/ibm_cloud_power/models/peer_subnets.rb +25 -96
  358. data/lib/ibm_cloud_power/models/peering_network.rb +49 -96
  359. data/lib/ibm_cloud_power/models/pin_policy.rb +9 -6
  360. data/lib/ibm_cloud_power/models/placement_group.rb +108 -100
  361. data/lib/ibm_cloud_power/models/placement_group_create.rb +74 -100
  362. data/lib/ibm_cloud_power/models/placement_group_server.rb +37 -96
  363. data/lib/ibm_cloud_power/models/placement_groups.rb +37 -96
  364. data/lib/ibm_cloud_power/models/pod_capacity.rb +25 -96
  365. data/lib/ibm_cloud_power/models/pod_data.rb +151 -102
  366. data/lib/ibm_cloud_power/models/pvm_instance.rb +258 -114
  367. data/lib/ibm_cloud_power/models/pvm_instance_action.rb +30 -99
  368. data/lib/ibm_cloud_power/models/pvm_instance_add_network.rb +37 -96
  369. data/lib/ibm_cloud_power/models/pvm_instance_capture.rb +61 -99
  370. data/lib/ibm_cloud_power/models/pvm_instance_configuration.rb +29 -100
  371. data/lib/ibm_cloud_power/models/pvm_instance_console.rb +37 -96
  372. data/lib/ibm_cloud_power/models/pvm_instance_cores.rb +37 -96
  373. data/lib/ibm_cloud_power/models/pvm_instance_create.rb +167 -111
  374. data/lib/ibm_cloud_power/models/pvm_instance_delete.rb +25 -96
  375. data/lib/ibm_cloud_power/models/pvm_instance_deployment.rb +25 -96
  376. data/lib/ibm_cloud_power/models/pvm_instance_fault.rb +25 -96
  377. data/lib/ibm_cloud_power/models/pvm_instance_health.rb +25 -96
  378. data/lib/ibm_cloud_power/models/pvm_instance_host.rb +25 -96
  379. data/lib/ibm_cloud_power/models/pvm_instance_memory.rb +39 -98
  380. data/lib/ibm_cloud_power/models/pvm_instance_multi_create.rb +25 -96
  381. data/lib/ibm_cloud_power/models/pvm_instance_network.rb +25 -96
  382. data/lib/ibm_cloud_power/models/pvm_instance_networks.rb +37 -96
  383. data/lib/ibm_cloud_power/models/pvm_instance_operating_system.rb +37 -96
  384. data/lib/ibm_cloud_power/models/pvm_instance_operation.rb +39 -96
  385. data/lib/ibm_cloud_power/models/pvm_instance_placement_group.rb +37 -96
  386. data/lib/ibm_cloud_power/models/pvm_instance_reference.rb +212 -113
  387. data/lib/ibm_cloud_power/models/pvm_instance_reference_v2.rb +188 -109
  388. data/lib/ibm_cloud_power/models/pvm_instance_remove_network.rb +25 -96
  389. data/lib/ibm_cloud_power/models/pvm_instance_update.rb +70 -101
  390. data/lib/ibm_cloud_power/models/pvm_instance_update_response.rb +70 -101
  391. data/lib/ibm_cloud_power/models/pvm_instance_v2_health.rb +37 -96
  392. data/lib/ibm_cloud_power/models/pvm_instance_v2_network_port.rb +25 -96
  393. data/lib/ibm_cloud_power/models/pvm_instance_virtual_cores.rb +27 -96
  394. data/lib/ibm_cloud_power/models/pvm_instance_volume_update.rb +37 -96
  395. data/lib/ibm_cloud_power/models/pvm_instances.rb +37 -96
  396. data/lib/ibm_cloud_power/models/pvm_instances_v2.rb +37 -96
  397. data/lib/ibm_cloud_power/models/remote_copy_relationship.rb +49 -96
  398. data/lib/ibm_cloud_power/models/remove_virtual_serial_number.rb +37 -96
  399. data/lib/ibm_cloud_power/models/replication_service.rb +49 -96
  400. data/lib/ibm_cloud_power/models/replication_target_location.rb +25 -96
  401. data/lib/ibm_cloud_power/models/route.rb +518 -0
  402. data/lib/ibm_cloud_power/models/route_create.rb +400 -0
  403. data/lib/ibm_cloud_power/models/route_filter.rb +452 -0
  404. data/lib/ibm_cloud_power/models/route_filter_create.rb +361 -0
  405. data/lib/ibm_cloud_power/models/route_report.rb +167 -0
  406. data/lib/ibm_cloud_power/models/route_report_route.rb +216 -0
  407. data/lib/ibm_cloud_power/models/route_update.rb +318 -0
  408. data/lib/ibm_cloud_power/models/routes.rb +167 -0
  409. data/lib/ibm_cloud_power/models/sap_create.rb +170 -106
  410. data/lib/ibm_cloud_power/models/sap_profile.rb +104 -98
  411. data/lib/ibm_cloud_power/models/sap_profile_reference.rb +49 -96
  412. data/lib/ibm_cloud_power/models/sap_profile_vpmem_volume.rb +159 -0
  413. data/lib/ibm_cloud_power/models/sap_profiles.rb +37 -96
  414. data/lib/ibm_cloud_power/models/secondary.rb +37 -96
  415. data/lib/ibm_cloud_power/models/shared_processor_pool.rb +121 -101
  416. data/lib/ibm_cloud_power/models/shared_processor_pool_create.rb +75 -99
  417. data/lib/ibm_cloud_power/models/shared_processor_pool_detail.rb +55 -98
  418. data/lib/ibm_cloud_power/models/shared_processor_pool_detail_shared_processor_pool.rb +393 -0
  419. data/lib/ibm_cloud_power/models/shared_processor_pool_placement_group.rb +61 -96
  420. data/lib/ibm_cloud_power/models/shared_processor_pool_server.rb +25 -96
  421. data/lib/ibm_cloud_power/models/shared_processor_pool_update.rb +25 -96
  422. data/lib/ibm_cloud_power/models/shared_processor_pools.rb +25 -96
  423. data/lib/ibm_cloud_power/models/site.rb +25 -96
  424. data/lib/ibm_cloud_power/models/snapshot.rb +74 -97
  425. data/lib/ibm_cloud_power/models/snapshot_create.rb +70 -99
  426. data/lib/ibm_cloud_power/models/snapshot_create_response.rb +62 -100
  427. data/lib/ibm_cloud_power/models/snapshot_list.rb +37 -96
  428. data/lib/ibm_cloud_power/models/snapshot_restore.rb +25 -96
  429. data/lib/ibm_cloud_power/models/snapshot_update.rb +51 -99
  430. data/lib/ibm_cloud_power/models/snapshot_v1.rb +85 -96
  431. data/lib/ibm_cloud_power/models/snapshots.rb +37 -96
  432. data/lib/ibm_cloud_power/models/software_licenses.rb +26 -97
  433. data/lib/ibm_cloud_power/models/software_tier.rb +42 -0
  434. data/lib/ibm_cloud_power/models/spp_placement_group.rb +106 -100
  435. data/lib/ibm_cloud_power/models/spp_placement_group_create.rb +66 -102
  436. data/lib/ibm_cloud_power/models/spp_placement_groups.rb +25 -96
  437. data/lib/ibm_cloud_power/models/src.rb +25 -96
  438. data/lib/ibm_cloud_power/models/ssh_key.rb +49 -96
  439. data/lib/ibm_cloud_power/models/ssh_keys.rb +37 -96
  440. data/lib/ibm_cloud_power/models/status.rb +49 -96
  441. data/lib/ibm_cloud_power/models/status_description.rb +25 -96
  442. data/lib/ibm_cloud_power/models/status_description_error.rb +25 -96
  443. data/lib/ibm_cloud_power/models/stock_image.rb +25 -96
  444. data/lib/ibm_cloud_power/models/storage_affinity.rb +25 -96
  445. data/lib/ibm_cloud_power/models/storage_controller.rb +87 -98
  446. data/lib/ibm_cloud_power/models/storage_pool_capacity.rb +40 -99
  447. data/lib/ibm_cloud_power/models/storage_pool_combined.rb +63 -98
  448. data/lib/ibm_cloud_power/models/storage_pool_map.rb +25 -96
  449. data/lib/ibm_cloud_power/models/storage_pools_capacity.rb +26 -98
  450. data/lib/ibm_cloud_power/models/storage_pools_capacity_maximum_storage_allocation.rb +226 -0
  451. data/lib/ibm_cloud_power/models/storage_tier.rb +25 -96
  452. data/lib/ibm_cloud_power/models/storage_type_capacity.rb +26 -98
  453. data/lib/ibm_cloud_power/models/storage_types_capacity.rb +26 -98
  454. data/lib/ibm_cloud_power/models/supported_software_tier.rb +180 -0
  455. data/lib/ibm_cloud_power/models/supported_systems.rb +49 -96
  456. data/lib/ibm_cloud_power/models/system.rb +50 -97
  457. data/lib/ibm_cloud_power/models/system_pool.rb +31 -107
  458. data/lib/ibm_cloud_power/models/system_pool_capacity.rb +102 -135
  459. data/lib/ibm_cloud_power/models/system_pool_shared_core_ratio.rb +226 -0
  460. data/lib/ibm_cloud_power/models/system_resources.rb +110 -97
  461. data/lib/ibm_cloud_power/models/target_trusted_profile.rb +229 -0
  462. data/lib/ibm_cloud_power/models/task.rb +133 -96
  463. data/lib/ibm_cloud_power/models/task_reference.rb +49 -96
  464. data/lib/ibm_cloud_power/models/tenant.rb +73 -96
  465. data/lib/ibm_cloud_power/models/tenant_update.rb +25 -96
  466. data/lib/ibm_cloud_power/models/trusted_profile.rb +177 -0
  467. data/lib/ibm_cloud_power/models/update_metadata_service.rb +176 -0
  468. data/lib/ibm_cloud_power/models/update_server_virtual_serial_number.rb +60 -100
  469. data/lib/ibm_cloud_power/models/update_trusted_profile.rb +158 -0
  470. data/lib/ibm_cloud_power/models/update_virtual_serial_number.rb +37 -96
  471. data/lib/ibm_cloud_power/models/update_volume.rb +25 -96
  472. data/lib/ibm_cloud_power/models/update_workspace_ssh_key.rb +244 -0
  473. data/lib/ibm_cloud_power/models/virtual_cores.rb +27 -96
  474. data/lib/ibm_cloud_power/models/virtual_serial_number.rb +96 -100
  475. data/lib/ibm_cloud_power/models/volume.rb +110 -100
  476. data/lib/ibm_cloud_power/models/volume_action.rb +25 -96
  477. data/lib/ibm_cloud_power/models/volume_group.rb +50 -97
  478. data/lib/ibm_cloud_power/models/volume_group_action.rb +25 -96
  479. data/lib/ibm_cloud_power/models/volume_group_action_reset.rb +25 -96
  480. data/lib/ibm_cloud_power/models/volume_group_action_start.rb +25 -96
  481. data/lib/ibm_cloud_power/models/volume_group_action_stop.rb +37 -96
  482. data/lib/ibm_cloud_power/models/volume_group_create.rb +43 -98
  483. data/lib/ibm_cloud_power/models/volume_group_create_response.rb +61 -96
  484. data/lib/ibm_cloud_power/models/volume_group_details.rb +50 -97
  485. data/lib/ibm_cloud_power/models/volume_group_remote_copy_relationships.rb +25 -96
  486. data/lib/ibm_cloud_power/models/volume_group_storage_details.rb +37 -96
  487. data/lib/ibm_cloud_power/models/volume_group_update.rb +25 -96
  488. data/lib/ibm_cloud_power/models/volume_groups.rb +37 -96
  489. data/lib/ibm_cloud_power/models/volume_groups_details.rb +37 -96
  490. data/lib/ibm_cloud_power/models/volume_info.rb +26 -97
  491. data/lib/ibm_cloud_power/models/volume_onboarding.rb +70 -132
  492. data/lib/ibm_cloud_power/models/volume_onboarding_all_of_results.rb +161 -0
  493. data/lib/ibm_cloud_power/models/volume_onboarding_all_of_results_volume_onboarding_failures.rb +167 -0
  494. data/lib/ibm_cloud_power/models/volume_onboarding_common.rb +37 -96
  495. data/lib/ibm_cloud_power/models/volume_onboarding_create.rb +62 -100
  496. data/lib/ibm_cloud_power/models/volume_onboarding_create_response.rb +25 -96
  497. data/lib/ibm_cloud_power/models/volume_onboarding_create_volumes_inner.rb +200 -0
  498. data/lib/ibm_cloud_power/models/volume_onboarding_failure.rb +25 -96
  499. data/lib/ibm_cloud_power/models/volume_onboardings.rb +37 -96
  500. data/lib/ibm_cloud_power/models/volume_reference.rb +182 -100
  501. data/lib/ibm_cloud_power/models/volume_remote_copy_relationship.rb +73 -120
  502. data/lib/ibm_cloud_power/models/volume_snapshot_list.rb +25 -96
  503. data/lib/ibm_cloud_power/models/volumes.rb +37 -96
  504. data/lib/ibm_cloud_power/models/volumes_attach.rb +37 -96
  505. data/lib/ibm_cloud_power/models/volumes_attachment_response.rb +37 -96
  506. data/lib/ibm_cloud_power/models/volumes_clone.rb +37 -96
  507. data/lib/ibm_cloud_power/models/volumes_clone_async_request.rb +73 -99
  508. data/lib/ibm_cloud_power/models/volumes_clone_cancel.rb +25 -96
  509. data/lib/ibm_cloud_power/models/volumes_clone_create.rb +49 -96
  510. data/lib/ibm_cloud_power/models/volumes_clone_detail.rb +37 -96
  511. data/lib/ibm_cloud_power/models/volumes_clone_execute.rb +61 -99
  512. data/lib/ibm_cloud_power/models/volumes_clone_request.rb +49 -96
  513. data/lib/ibm_cloud_power/models/volumes_clone_response.rb +25 -96
  514. data/lib/ibm_cloud_power/models/volumes_clones.rb +25 -96
  515. data/lib/ibm_cloud_power/models/volumes_delete.rb +37 -96
  516. data/lib/ibm_cloud_power/models/volumes_delete_response.rb +25 -96
  517. data/lib/ibm_cloud_power/models/volumes_detach.rb +25 -96
  518. data/lib/ibm_cloud_power/models/volumes_detachment_response.rb +37 -96
  519. data/lib/ibm_cloud_power/models/vp_mem_volume_attach.rb +198 -0
  520. data/lib/ibm_cloud_power/models/vp_mem_volume_create.rb +230 -0
  521. data/lib/ibm_cloud_power/models/vp_mem_volume_reference.rb +367 -0
  522. data/lib/ibm_cloud_power/models/vp_mem_volume_update.rb +194 -0
  523. data/lib/ibm_cloud_power/models/vp_mem_volumes.rb +167 -0
  524. data/lib/ibm_cloud_power/models/vpn_connection.rb +149 -96
  525. data/lib/ibm_cloud_power/models/vpn_connection_create.rb +99 -96
  526. data/lib/ibm_cloud_power/models/vpn_connection_create_response.rb +162 -109
  527. data/lib/ibm_cloud_power/models/vpn_connection_update.rb +25 -96
  528. data/lib/ibm_cloud_power/models/vpn_connections.rb +25 -96
  529. data/lib/ibm_cloud_power/models/workspace.rb +111 -98
  530. data/lib/ibm_cloud_power/models/workspace_details.rb +51 -98
  531. data/lib/ibm_cloud_power/models/workspace_location.rb +37 -96
  532. data/lib/ibm_cloud_power/models/workspace_network_security_groups_details.rb +27 -96
  533. data/lib/ibm_cloud_power/models/workspace_power_edge_router_details.rb +29 -96
  534. data/lib/ibm_cloud_power/models/workspace_ssh_key.rb +332 -0
  535. data/lib/ibm_cloud_power/models/workspace_ssh_keys.rb +167 -0
  536. data/lib/ibm_cloud_power/models/workspaces.rb +37 -96
  537. data/lib/ibm_cloud_power/version.rb +4 -4
  538. data/lib/ibm_cloud_power.rb +63 -5
  539. data/spec/api/datacenters_api_spec.rb +7 -7
  540. data/spec/api/host_groups_api_spec.rb +13 -13
  541. data/spec/api/network_address_groups_api_spec.rb +10 -10
  542. data/spec/api/network_peers_api_spec.rb +136 -0
  543. data/spec/api/network_security_groups_api_spec.rb +15 -15
  544. data/spec/api/networks_api_spec.rb +9 -9
  545. data/spec/api/p_cloud_cloud_connections_api_spec.rb +11 -11
  546. data/spec/api/p_cloud_disaster_recovery_api_spec.rb +5 -5
  547. data/spec/api/p_cloud_events_api_spec.rb +5 -5
  548. data/spec/api/p_cloud_images_api_spec.rb +16 -16
  549. data/spec/api/p_cloud_instances_api_spec.rb +4 -4
  550. data/spec/api/p_cloud_jobs_api_spec.rb +6 -6
  551. data/spec/api/p_cloud_networks_api_spec.rb +13 -13
  552. data/spec/api/p_cloud_placement_groups_api_spec.rb +9 -9
  553. data/spec/api/p_cloud_pod_capacity_api_spec.rb +4 -4
  554. data/spec/api/p_cloud_pvm_instances_api_spec.rb +24 -24
  555. data/spec/api/p_cloud_sap_api_spec.rb +6 -6
  556. data/spec/api/p_cloud_shared_processor_pools_api_spec.rb +8 -8
  557. data/spec/api/p_cloud_snapshots_api_spec.rb +8 -8
  558. data/spec/api/p_cloud_spp_placement_groups_api_spec.rb +9 -9
  559. data/spec/api/p_cloud_storage_capacity_api_spec.rb +7 -7
  560. data/spec/api/p_cloud_storage_tiers_api_spec.rb +4 -4
  561. data/spec/api/p_cloud_tasks_api_spec.rb +5 -5
  562. data/spec/api/p_cloud_tenants_api_spec.rb +5 -5
  563. data/spec/api/p_cloud_tenants_ssh_keys_api_spec.rb +8 -8
  564. data/spec/api/p_cloud_virtual_serial_number_api_spec.rb +21 -11
  565. data/spec/api/p_cloud_volume_groups_api_spec.rb +13 -13
  566. data/spec/api/p_cloud_volume_onboarding_api_spec.rb +6 -6
  567. data/spec/api/p_cloud_volumes_api_spec.rb +31 -31
  568. data/spec/api/p_cloud_vp_mem_volumes_api_spec.rb +102 -0
  569. data/spec/api/p_cloud_vpn_connections_api_spec.rb +14 -14
  570. data/spec/api/p_cloud_vpn_policies_api_spec.rb +13 -13
  571. data/spec/api/routes_api_spec.rb +100 -0
  572. data/spec/api/snapshots_api_spec.rb +9 -9
  573. data/spec/api/ssh_keys_api_spec.rb +90 -0
  574. data/spec/api/workspaces_api_spec.rb +6 -5
  575. data/spec/models/access_config_spec.rb +7 -5
  576. data/spec/models/add_host_spec.rb +10 -8
  577. data/spec/models/add_server_virtual_serial_number_spec.rb +9 -7
  578. data/spec/models/auxiliary_volume_for_onboarding_spec.rb +9 -7
  579. data/spec/models/auxiliary_volumes_for_onboarding_auxiliary_volumes_inner_spec.rb +42 -0
  580. data/spec/models/auxiliary_volumes_for_onboarding_spec.rb +9 -7
  581. data/spec/models/available_host_capacity_cores_spec.rb +36 -0
  582. data/spec/models/available_host_capacity_spec.rb +9 -7
  583. data/spec/models/available_host_resource_capacity_spec.rb +8 -6
  584. data/spec/models/available_host_spec.rb +10 -8
  585. data/spec/models/capabilities_details_disaster_recovery_spec.rb +42 -0
  586. data/spec/models/capabilities_details_spec.rb +9 -7
  587. data/spec/models/capabilities_details_supported_systems_spec.rb +42 -0
  588. data/spec/models/clone_task_reference_spec.rb +9 -7
  589. data/spec/models/clone_task_status_spec.rb +11 -9
  590. data/spec/models/cloned_volume_detail_clone_spec.rb +48 -0
  591. data/spec/models/cloned_volume_detail_spec.rb +9 -7
  592. data/spec/models/cloned_volume_spec.rb +9 -7
  593. data/spec/models/cloud_connection_classic_spec.rb +42 -0
  594. data/spec/models/cloud_connection_create_classic_spec.rb +42 -0
  595. data/spec/models/cloud_connection_create_response_spec.rb +26 -24
  596. data/spec/models/cloud_connection_create_spec.rb +15 -13
  597. data/spec/models/cloud_connection_endpoint_classic_spec.rb +9 -7
  598. data/spec/models/cloud_connection_endpoint_classic_update_spec.rb +9 -7
  599. data/spec/models/cloud_connection_endpoint_vpc_spec.rb +9 -7
  600. data/spec/models/cloud_connection_gre_tunnel_create_spec.rb +9 -7
  601. data/spec/models/cloud_connection_gre_tunnel_spec.rb +9 -7
  602. data/spec/models/cloud_connection_spec.rb +21 -19
  603. data/spec/models/cloud_connection_update_spec.rb +13 -11
  604. data/spec/models/cloud_connection_virtual_private_clouds_spec.rb +8 -6
  605. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner_spec.rb +54 -0
  606. data/spec/models/cloud_connection_vpc_spec.rb +11 -9
  607. data/spec/models/cloud_connections_spec.rb +8 -6
  608. data/spec/models/cloud_instance_reference_spec.rb +15 -13
  609. data/spec/models/cloud_instance_spec.rb +18 -16
  610. data/spec/models/cloud_instance_usage_limits_spec.rb +18 -16
  611. data/spec/models/console_language_spec.rb +9 -7
  612. data/spec/models/console_languages_spec.rb +8 -6
  613. data/spec/models/create_cos_image_import_job_spec.rb +20 -18
  614. data/spec/models/create_data_volume_spec.rb +19 -17
  615. data/spec/models/create_image_spec.rb +21 -19
  616. data/spec/models/create_server_virtual_serial_number_spec.rb +15 -7
  617. data/spec/models/create_workspace_ssh_key_spec.rb +58 -0
  618. data/spec/models/datacenter_location_spec.rb +11 -9
  619. data/spec/models/datacenter_spec.rb +13 -11
  620. data/spec/models/datacenters_spec.rb +8 -6
  621. data/spec/models/dead_peer_detection_spec.rb +10 -8
  622. data/spec/models/delete_server_virtual_serial_number_spec.rb +8 -6
  623. data/spec/models/deployment_target_spec.rb +9 -7
  624. data/spec/models/disaster_recovery_asynchronous_replication_spec.rb +42 -0
  625. data/spec/models/disaster_recovery_location_spec.rb +9 -7
  626. data/spec/models/disaster_recovery_locations_spec.rb +8 -6
  627. data/spec/models/disaster_recovery_spec.rb +9 -7
  628. data/spec/models/error_spec.rb +9 -7
  629. data/spec/models/event_spec.rb +16 -14
  630. data/spec/models/event_user_spec.rb +10 -8
  631. data/spec/models/events_spec.rb +8 -6
  632. data/spec/models/export_image_spec.rb +11 -9
  633. data/spec/models/flash_copy_mapping_spec.rb +14 -12
  634. data/spec/models/get_bulk_volume_spec.rb +8 -6
  635. data/spec/models/get_server_virtual_serial_number_spec.rb +15 -7
  636. data/spec/models/host_capacity_cores_spec.rb +54 -0
  637. data/spec/models/host_capacity_spec.rb +9 -7
  638. data/spec/models/host_create_spec.rb +9 -7
  639. data/spec/models/host_group_create_spec.rb +10 -8
  640. data/spec/models/host_group_share_op_spec.rb +9 -7
  641. data/spec/models/host_group_spec.rb +13 -11
  642. data/spec/models/host_group_summary_spec.rb +10 -8
  643. data/spec/models/host_host_group_spec.rb +48 -0
  644. data/spec/models/host_put_spec.rb +8 -6
  645. data/spec/models/host_resource_capacity_spec.rb +11 -9
  646. data/spec/models/host_spec.rb +16 -14
  647. data/spec/models/ike_policies_spec.rb +8 -6
  648. data/spec/models/ike_policy_authentication_spec.rb +7 -5
  649. data/spec/models/ike_policy_create_spec.rb +14 -12
  650. data/spec/models/ike_policy_ref_spec.rb +9 -7
  651. data/spec/models/ike_policy_spec.rb +14 -12
  652. data/spec/models/ike_policy_update_spec.rb +14 -12
  653. data/spec/models/image_import_details_spec.rb +10 -8
  654. data/spec/models/image_reference_spec.rb +18 -16
  655. data/spec/models/image_spec.rb +23 -21
  656. data/spec/models/image_specifications_spec.rb +14 -12
  657. data/spec/models/image_taskref_spec.rb +42 -0
  658. data/spec/models/image_volume_spec.rb +11 -9
  659. data/spec/models/images_spec.rb +8 -6
  660. data/spec/models/ip_address_range_spec.rb +9 -7
  661. data/spec/models/ip_sec_policies_spec.rb +8 -6
  662. data/spec/models/ip_sec_policy_create_spec.rb +13 -11
  663. data/spec/models/ip_sec_policy_ref_spec.rb +9 -7
  664. data/spec/models/ip_sec_policy_spec.rb +14 -12
  665. data/spec/models/ip_sec_policy_update_spec.rb +13 -11
  666. data/spec/models/ipsec_policy_authentication_spec.rb +7 -5
  667. data/spec/models/job_action_spec.rb +58 -0
  668. data/spec/models/job_operation_spec.rb +48 -0
  669. data/spec/models/job_reference_spec.rb +9 -7
  670. data/spec/models/job_resource_details_spec.rb +52 -0
  671. data/spec/models/job_resources_spec.rb +42 -0
  672. data/spec/models/job_spec.rb +11 -9
  673. data/spec/models/job_status_spec.rb +48 -0
  674. data/spec/models/job_workflow_spec.rb +42 -0
  675. data/spec/models/jobs_spec.rb +8 -6
  676. data/spec/models/maximum_storage_allocation_spec.rb +10 -8
  677. data/spec/models/metadata_service_spec.rb +36 -0
  678. data/spec/models/min_max_default_spec.rb +10 -8
  679. data/spec/models/multi_volumes_create_spec.rb +20 -18
  680. data/spec/models/network_address_group_add_member_spec.rb +8 -6
  681. data/spec/models/network_address_group_create_spec.rb +9 -7
  682. data/spec/models/network_address_group_member_spec.rb +9 -7
  683. data/spec/models/network_address_group_spec.rb +12 -10
  684. data/spec/models/network_address_group_update_spec.rb +8 -6
  685. data/spec/models/network_address_groups_spec.rb +8 -6
  686. data/spec/models/network_address_translation_spec.rb +8 -6
  687. data/spec/models/network_cloud_connections_inner_spec.rb +42 -0
  688. data/spec/models/network_create_spec.rb +43 -15
  689. data/spec/models/network_id_spec.rb +8 -6
  690. data/spec/models/network_ids_spec.rb +8 -6
  691. data/spec/models/network_interface_create_spec.rb +10 -8
  692. data/spec/models/network_interface_instance_spec.rb +9 -7
  693. data/spec/models/network_interface_spec.rb +23 -15
  694. data/spec/models/network_interface_update_spec.rb +9 -7
  695. data/spec/models/network_interfaces_spec.rb +8 -6
  696. data/spec/models/network_ip_address_metrics_spec.rb +11 -9
  697. data/spec/models/network_peer_create_spec.rb +102 -0
  698. data/spec/models/network_peer_spec.rb +148 -0
  699. data/spec/models/network_peer_update_spec.rb +102 -0
  700. data/spec/models/network_peers_spec.rb +36 -0
  701. data/spec/models/network_port_create_spec.rb +9 -7
  702. data/spec/models/network_port_pvm_instance_spec.rb +9 -7
  703. data/spec/models/network_port_spec.rb +15 -13
  704. data/spec/models/network_port_update_spec.rb +9 -7
  705. data/spec/models/network_ports_spec.rb +8 -6
  706. data/spec/models/network_reference_spec.rb +37 -15
  707. data/spec/models/network_security_group_add_member_spec.rb +9 -7
  708. data/spec/models/network_security_group_add_rule_spec.rb +14 -12
  709. data/spec/models/network_security_group_clone_spec.rb +8 -6
  710. data/spec/models/network_security_group_create_spec.rb +9 -7
  711. data/spec/models/network_security_group_member_spec.rb +12 -10
  712. data/spec/models/network_security_group_move_member_spec.rb +9 -7
  713. data/spec/models/network_security_group_rule_port_spec.rb +9 -7
  714. data/spec/models/network_security_group_rule_protocol_spec.rb +10 -8
  715. data/spec/models/network_security_group_rule_protocol_tcp_flag_spec.rb +8 -6
  716. data/spec/models/network_security_group_rule_remote_spec.rb +9 -7
  717. data/spec/models/network_security_group_rule_spec.rb +13 -11
  718. data/spec/models/network_security_group_spec.rb +14 -12
  719. data/spec/models/network_security_group_update_spec.rb +8 -6
  720. data/spec/models/network_security_groups_action_spec.rb +8 -6
  721. data/spec/models/network_security_groups_spec.rb +8 -6
  722. data/spec/models/network_spec.rb +49 -21
  723. data/spec/models/network_update_spec.rb +31 -9
  724. data/spec/models/networks_spec.rb +8 -6
  725. data/spec/models/operation_spec.rb +10 -8
  726. data/spec/models/operations_spec.rb +11 -9
  727. data/spec/models/peer_interface_spec.rb +64 -0
  728. data/spec/models/peer_subnet_update_spec.rb +8 -6
  729. data/spec/models/peer_subnets_spec.rb +8 -6
  730. data/spec/models/peering_network_spec.rb +10 -8
  731. data/spec/models/pin_policy_spec.rb +7 -5
  732. data/spec/models/placement_group_create_spec.rb +15 -7
  733. data/spec/models/placement_group_server_spec.rb +8 -6
  734. data/spec/models/placement_group_spec.rb +23 -9
  735. data/spec/models/placement_groups_spec.rb +8 -6
  736. data/spec/models/pod_capacity_spec.rb +10 -8
  737. data/spec/models/pod_data_spec.rb +17 -15
  738. data/spec/models/pvm_instance_action_spec.rb +9 -7
  739. data/spec/models/pvm_instance_add_network_spec.rb +10 -8
  740. data/spec/models/pvm_instance_capture_spec.rb +15 -13
  741. data/spec/models/pvm_instance_configuration_spec.rb +12 -10
  742. data/spec/models/pvm_instance_console_spec.rb +8 -6
  743. data/spec/models/pvm_instance_cores_spec.rb +10 -8
  744. data/spec/models/pvm_instance_create_spec.rb +67 -35
  745. data/spec/models/pvm_instance_delete_spec.rb +8 -6
  746. data/spec/models/pvm_instance_deployment_spec.rb +11 -9
  747. data/spec/models/pvm_instance_fault_spec.rb +11 -9
  748. data/spec/models/pvm_instance_health_spec.rb +10 -8
  749. data/spec/models/pvm_instance_host_spec.rb +9 -7
  750. data/spec/models/pvm_instance_memory_spec.rb +10 -8
  751. data/spec/models/pvm_instance_multi_create_spec.rb +10 -8
  752. data/spec/models/pvm_instance_network_spec.rb +19 -17
  753. data/spec/models/pvm_instance_networks_spec.rb +8 -6
  754. data/spec/models/pvm_instance_operating_system_spec.rb +9 -7
  755. data/spec/models/pvm_instance_operation_spec.rb +9 -7
  756. data/spec/models/pvm_instance_placement_group_spec.rb +8 -6
  757. data/spec/models/pvm_instance_reference_spec.rb +86 -48
  758. data/spec/models/pvm_instance_reference_v2_spec.rb +35 -21
  759. data/spec/models/pvm_instance_remove_network_spec.rb +8 -6
  760. data/spec/models/pvm_instance_spec.rb +89 -51
  761. data/spec/models/pvm_instance_update_response_spec.rb +40 -14
  762. data/spec/models/pvm_instance_update_spec.rb +42 -16
  763. data/spec/models/pvm_instance_v2_health_spec.rb +8 -6
  764. data/spec/models/pvm_instance_v2_network_port_spec.rb +12 -10
  765. data/spec/models/pvm_instance_virtual_cores_spec.rb +10 -8
  766. data/spec/models/pvm_instance_volume_update_spec.rb +8 -6
  767. data/spec/models/pvm_instances_spec.rb +8 -6
  768. data/spec/models/pvm_instances_v2_spec.rb +8 -6
  769. data/spec/models/remote_copy_relationship_spec.rb +21 -19
  770. data/spec/models/remove_virtual_serial_number_spec.rb +8 -6
  771. data/spec/models/replication_service_spec.rb +9 -7
  772. data/spec/models/replication_target_location_spec.rb +9 -7
  773. data/spec/models/route_create_spec.rb +100 -0
  774. data/spec/models/route_filter_create_spec.rb +74 -0
  775. data/spec/models/route_filter_spec.rb +102 -0
  776. data/spec/models/route_report_route_spec.rb +46 -0
  777. data/spec/models/route_report_spec.rb +36 -0
  778. data/spec/models/route_spec.rb +122 -0
  779. data/spec/models/route_update_spec.rb +94 -0
  780. data/spec/models/routes_spec.rb +36 -0
  781. data/spec/models/sap_create_spec.rb +55 -23
  782. data/spec/models/sap_profile_reference_spec.rb +9 -7
  783. data/spec/models/sap_profile_spec.rb +36 -16
  784. data/spec/models/sap_profile_vpmem_volume_spec.rb +42 -0
  785. data/spec/models/sap_profiles_spec.rb +8 -6
  786. data/spec/models/secondary_spec.rb +9 -7
  787. data/spec/models/shared_processor_pool_create_spec.rb +13 -11
  788. data/spec/models/shared_processor_pool_detail_shared_processor_pool_spec.rb +114 -0
  789. data/spec/models/shared_processor_pool_detail_spec.rb +9 -7
  790. data/spec/models/shared_processor_pool_placement_group_spec.rb +10 -8
  791. data/spec/models/shared_processor_pool_server_spec.rb +15 -13
  792. data/spec/models/shared_processor_pool_spec.rb +26 -18
  793. data/spec/models/shared_processor_pool_update_spec.rb +9 -7
  794. data/spec/models/shared_processor_pools_spec.rb +8 -6
  795. data/spec/models/site_spec.rb +9 -7
  796. data/spec/models/snapshot_create_response_spec.rb +10 -8
  797. data/spec/models/snapshot_create_spec.rb +11 -9
  798. data/spec/models/snapshot_list_spec.rb +8 -6
  799. data/spec/models/snapshot_restore_spec.rb +8 -6
  800. data/spec/models/snapshot_spec.rb +18 -16
  801. data/spec/models/snapshot_update_spec.rb +9 -7
  802. data/spec/models/snapshot_v1_spec.rb +14 -12
  803. data/spec/models/snapshots_spec.rb +8 -6
  804. data/spec/models/software_licenses_spec.rb +12 -10
  805. data/spec/models/software_tier_spec.rb +30 -0
  806. data/spec/models/spp_placement_group_create_spec.rb +15 -7
  807. data/spec/models/spp_placement_group_spec.rb +23 -9
  808. data/spec/models/spp_placement_groups_spec.rb +8 -6
  809. data/spec/models/src_spec.rb +9 -7
  810. data/spec/models/ssh_key_spec.rb +10 -8
  811. data/spec/models/ssh_keys_spec.rb +8 -6
  812. data/spec/models/status_description_error_spec.rb +10 -8
  813. data/spec/models/status_description_spec.rb +8 -6
  814. data/spec/models/status_spec.rb +10 -8
  815. data/spec/models/stock_image_spec.rb +10 -8
  816. data/spec/models/storage_affinity_spec.rb +12 -10
  817. data/spec/models/storage_controller_spec.rb +12 -10
  818. data/spec/models/storage_pool_capacity_spec.rb +14 -12
  819. data/spec/models/storage_pool_combined_spec.rb +10 -8
  820. data/spec/models/storage_pool_map_spec.rb +9 -7
  821. data/spec/models/storage_pools_capacity_maximum_storage_allocation_spec.rb +48 -0
  822. data/spec/models/storage_pools_capacity_spec.rb +9 -7
  823. data/spec/models/storage_tier_spec.rb +10 -8
  824. data/spec/models/storage_type_capacity_spec.rb +10 -8
  825. data/spec/models/storage_types_capacity_spec.rb +9 -7
  826. data/spec/models/supported_software_tier_spec.rb +42 -0
  827. data/spec/models/supported_systems_spec.rb +9 -7
  828. data/spec/models/system_pool_capacity_spec.rb +34 -14
  829. data/spec/models/system_pool_shared_core_ratio_spec.rb +48 -0
  830. data/spec/models/system_pool_spec.rb +16 -14
  831. data/spec/models/system_resources_spec.rb +15 -13
  832. data/spec/models/system_spec.rb +17 -15
  833. data/spec/models/target_trusted_profile_spec.rb +48 -0
  834. data/spec/models/task_reference_spec.rb +9 -7
  835. data/spec/models/task_spec.rb +16 -14
  836. data/spec/models/tenant_spec.rb +14 -12
  837. data/spec/models/tenant_update_spec.rb +9 -7
  838. data/spec/models/trusted_profile_spec.rb +42 -0
  839. data/spec/models/update_metadata_service_spec.rb +42 -0
  840. data/spec/models/update_server_virtual_serial_number_spec.rb +14 -6
  841. data/spec/models/update_trusted_profile_spec.rb +42 -0
  842. data/spec/models/update_virtual_serial_number_spec.rb +8 -6
  843. data/spec/models/update_volume_spec.rb +11 -9
  844. data/spec/models/update_workspace_ssh_key_spec.rb +58 -0
  845. data/spec/models/virtual_cores_spec.rb +10 -8
  846. data/spec/models/virtual_serial_number_spec.rb +16 -8
  847. data/spec/models/volume_action_spec.rb +9 -7
  848. data/spec/models/volume_group_action_reset_spec.rb +8 -6
  849. data/spec/models/volume_group_action_spec.rb +10 -8
  850. data/spec/models/volume_group_action_start_spec.rb +8 -6
  851. data/spec/models/volume_group_action_stop_spec.rb +8 -6
  852. data/spec/models/volume_group_create_response_spec.rb +11 -9
  853. data/spec/models/volume_group_create_spec.rb +10 -8
  854. data/spec/models/volume_group_details_spec.rb +17 -15
  855. data/spec/models/volume_group_remote_copy_relationships_spec.rb +9 -7
  856. data/spec/models/volume_group_spec.rb +16 -14
  857. data/spec/models/volume_group_storage_details_spec.rb +16 -14
  858. data/spec/models/volume_group_update_spec.rb +9 -7
  859. data/spec/models/volume_groups_details_spec.rb +8 -6
  860. data/spec/models/volume_groups_spec.rb +8 -6
  861. data/spec/models/volume_info_spec.rb +10 -8
  862. data/spec/models/volume_onboarding_all_of_results_spec.rb +42 -0
  863. data/spec/models/volume_onboarding_all_of_results_volume_onboarding_failures_spec.rb +42 -0
  864. data/spec/models/volume_onboarding_common_spec.rb +11 -9
  865. data/spec/models/volume_onboarding_create_response_spec.rb +9 -7
  866. data/spec/models/volume_onboarding_create_spec.rb +10 -8
  867. data/spec/models/volume_onboarding_create_volumes_inner_spec.rb +42 -0
  868. data/spec/models/volume_onboarding_failure_spec.rb +9 -7
  869. data/spec/models/volume_onboarding_spec.rb +21 -19
  870. data/spec/models/volume_onboardings_spec.rb +8 -6
  871. data/spec/models/volume_reference_spec.rb +38 -36
  872. data/spec/models/volume_remote_copy_relationship_spec.rb +32 -30
  873. data/spec/models/volume_snapshot_list_spec.rb +8 -6
  874. data/spec/models/volume_spec.rb +36 -34
  875. data/spec/models/volumes_attach_spec.rb +8 -6
  876. data/spec/models/volumes_attachment_response_spec.rb +8 -6
  877. data/spec/models/volumes_clone_async_request_spec.rb +12 -10
  878. data/spec/models/volumes_clone_cancel_spec.rb +8 -6
  879. data/spec/models/volumes_clone_create_spec.rb +9 -7
  880. data/spec/models/volumes_clone_detail_spec.rb +16 -14
  881. data/spec/models/volumes_clone_execute_spec.rb +12 -10
  882. data/spec/models/volumes_clone_request_spec.rb +9 -7
  883. data/spec/models/volumes_clone_response_spec.rb +9 -7
  884. data/spec/models/volumes_clone_spec.rb +15 -13
  885. data/spec/models/volumes_clones_spec.rb +8 -6
  886. data/spec/models/volumes_delete_response_spec.rb +8 -6
  887. data/spec/models/volumes_delete_spec.rb +8 -6
  888. data/spec/models/volumes_detach_spec.rb +10 -8
  889. data/spec/models/volumes_detachment_response_spec.rb +8 -6
  890. data/spec/models/volumes_spec.rb +8 -6
  891. data/spec/models/vp_mem_volume_attach_spec.rb +42 -0
  892. data/spec/models/vp_mem_volume_create_spec.rb +42 -0
  893. data/spec/models/vp_mem_volume_reference_spec.rb +96 -0
  894. data/spec/models/vp_mem_volume_update_spec.rb +36 -0
  895. data/spec/models/vp_mem_volumes_spec.rb +36 -0
  896. data/spec/models/vpn_connection_create_response_spec.rb +24 -22
  897. data/spec/models/vpn_connection_create_spec.rb +14 -12
  898. data/spec/models/vpn_connection_spec.rb +19 -17
  899. data/spec/models/vpn_connection_update_spec.rb +11 -9
  900. data/spec/models/vpn_connections_spec.rb +8 -6
  901. data/spec/models/workspace_details_spec.rb +12 -10
  902. data/spec/models/workspace_location_spec.rb +10 -8
  903. data/spec/models/workspace_network_security_groups_details_spec.rb +8 -6
  904. data/spec/models/workspace_power_edge_router_details_spec.rb +10 -8
  905. data/spec/models/workspace_spec.rb +14 -12
  906. data/spec/models/workspace_ssh_key_spec.rb +76 -0
  907. data/spec/models/workspace_ssh_keys_spec.rb +36 -0
  908. data/spec/models/workspaces_spec.rb +8 -6
  909. data/spec/spec_helper.rb +3 -3
  910. metadata +237 -28
  911. data/docs/CloudConnectionEndpointGRE.md +0 -20
  912. data/docs/CloudConnectionVPC.md +0 -20
  913. data/docs/CloudConnectionVirtualPrivateCloudsVirtualPrivateClouds.md +0 -24
  914. data/docs/CloudInstanceCreate.md +0 -30
  915. data/docs/CloudInstanceUpdate.md +0 -26
  916. data/docs/IKEPolicyOptions.md +0 -24
  917. data/docs/IKEPolicyTemplate.md +0 -26
  918. data/docs/IPSecPolicyOptions.md +0 -22
  919. data/docs/IPSecPolicyTemplate.md +0 -24
  920. data/docs/NetworkCloudConnections.md +0 -20
  921. data/docs/Options.md +0 -18
  922. data/docs/PCloudSystemPoolsApi.md +0 -70
  923. data/docs/PVMInstanceClone.md +0 -32
  924. data/docs/VPNaaSOptions.md +0 -26
  925. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds.rb +0 -269
  926. data/lib/ibm_cloud_power/models/network_cloud_connections.rb +0 -229
  927. data/lib/ibm_cloud_power/models/network_create.rb.orig +0 -393
  928. data/spec/api_client_spec.rb +0 -226
  929. data/spec/configuration_spec.rb +0 -42
  930. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_spec.rb +0 -52
  931. data/spec/models/network_cloud_connections_spec.rb +0 -40
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Power Cloud API
3
3
 
4
- #IBM Power Cloud API for Power Hardware / Infrastructure
4
+ ### Introduction You can use the IBM® Power® Virtual Server to easily deploy and configure virtual servers that are running AIX, IBM i, or Linux (RHEL and SLES) workloads. To learn about using Power Virtual Server, see: - [Getting started with IBM Power Virtual Servers](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-getting-started) - [IBM Power Virtual Server CLI Reference](https://cloud.ibm.com/docs/power-iaas-cli-plugin?topic=power-iaas-cli-plugin-power-iaas-cli-reference-v1) ## Endpoint URLs The Power Virtual Server service uses regional endpoints over both public and private network. Automatically generated regional API endpoints (service URL) will default to IBM Cloud Regions which may cause your request to fail. You should always use the Power Virtual Server regions in the service URL. The following table shows the IBM Cloud® regions and their corresponding Power Virtual Server region where the APIs are available: <!-- | Country | Power Virtual Server region | Location | Public endpoint (service URL) | | ------------- | ------------------------------------------ | -------- | ------------------------------------------- | | United States | Washington DC | us-south | `https://us-south.power-iaas.cloud.ibm.com` | | Washington DC, USA | us-east | us-east | `https://us-east.power-iaas.cloud.ibm.com` | | S----------------l | b-----o | s-----o | `----------------------------------------` | | Toronto, Canada | ca-tor | tor | `https://tor.power-iaas.cloud.ibm.com` | | Montreal, Canada | ca-mon | mon | `https://mon.power-iaas.cloud.ibm.com` | | Frankfurt, Germany | eu-de | eu-de | `https://eu-de.power-iaas.cloud.ibm.com` | | London, UK | eu-gb | lon | `https://lon.power-iaas.cloud.ibm.com` | | Sydney, Australia | au-syd | syd | `https://syd.power-iaas.cloud.ibm.com` | | Tokyo, Japan | jp-tok | tok | `https://tok.power-iaas.cloud.ibm.com` | | Osaka, Japan | jp-osa | osa | `https://osa.power-iaas.cloud.ibm.com` | --> | Country | Power Virtual Server region | Location | Public end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ----------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://lon.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://mad.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://us-south.power-iaas.cloud.ibm.com | | Country | Power Virtual Server region | Location | Private end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ------------------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://private.au-syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://private.br-sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://private.ca-mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://private.ca-tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://private.eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://private.eu-gb.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://private.in-che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://private.in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://private.jp-tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://private.jp-osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://private.eu-es.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://private.us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://private.us-south.power-iaas.cloud.ibm.com | ## Curl service URL intro To call the API, select the service URL that corresponds to the region of your choice and add a method path to form the complete request URL. For example, to list all the workspaces available in the `us-south` region, make a `GET` request to `https://us-south.iaas.cloud.ibm.com/v1/workspaces`. Example request to call the `us-south` service URL: ```codeblock curl -H \"Authorization: Bearer {token}\" -X {http_method} \"https://us-south.iaas.cloud.ibm.com/v1{path}\" ``` Replace `{token}`, `{http_method}`, and `{path}` in this example with the values for your particular request. ## Authentication The Power Virtual Server API uses Identity and Access Management ([IAM](https://cloud.ibm.com/docs/account?topic=account-iamoverview)) to authenticate requests. To call each API method, you must be assigned a role that includes the required IAM actions. Each method has an Authorization section that lists the required actions and, if applicable, the conditions under which each action is required. Check your access on the [IBM Cloud console](https://cloud.ibm.com/login) by navigating to **[Users](https://cloud.ibm.com/iam/users) > _User_ > Access**. For more information about IAM actions and how they map to roles, see [Assigning access to account management services](https://cloud.ibm.com/docs/account?topic=account-account-services) and [Managing IAM access for Power Virtual Server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-managing-resources-and-users). Learn about obtaining an IAM token for an authenticated user or service ID in the [IAM Identity Services API](https://cloud.ibm.com/apidocs/iam-identity-token-api). If you first [create an API key](https://cloud.ibm.com/docs/account?topic=account-userapikey#create_user_key), you can [use it to generate an IAM token](https://cloud.ibm.com/docs/account?topic=account-iamtoken_from_apikey). To use the API, add a valid IAM token to the HTTP `Authorization` request header. For example, `-H 'Authorization: Bearer {token}'`. For specific APIs you must need to include your IBM Cloud IAM access token and the Power Virtual Server instance ID, also known as your **Cloud Resource Name** (CRN), in each request. The first part of your CRN contains your **Tenant ID** and the second part contains your **Cloud Instance ID**. The following example shows a typical CRN: ```text crn:v1:staging:public:power-iaas:us-east:a/abcdefghijklmnopqrstuvwxyzabcdef:121d5ee5-b87d-4a0e-86b8-aaff422135478:: Tenant ID {tenant_id} = abcdefghijklmnopqrstuvwxyzabcdef Cloud Instance ID {cloud_instance_id} = 121d5ee5-b87d-4a0e-86b8-aaff422135478 ``` You can retrieve an access token by first creating an API key, and then exchanging your API key for a IBM Cloud IAM token. For more information, see [Retrieving an access token programmatically](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-access-token) and [Retrieving your instance ID](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-instance-ID). To retrieve your access token: ```sh curl -X POST \\ \"https://iam.cloud.ibm.com/identity/token\" \\ --header 'Content-Type: application/x-www-form-urlencoded' \\ --header 'Accept: application/json' \\ --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \\ --data-urlencode 'apikey={api_key}' ``` To use the API, replace `{token}` with the token obtained above from IAM, replace `{http_method}` with an HTTP method such as `POST`, and replace `{url}` with a request URL such as `https://us-south.iaas.cloud.ibm.com/v1/workspaces/{workspace_id}`: ```sh curl -H \"Authorization: Bearer {token}\" -X {http_method} \"{url}\" -H \"CRN\" ``` ## Auditing Monitor API activity within your account by using the IBM Cloud Activity Tracker service. Each time you make an API call, one or more events are generated that you can track and audit from within Activity Tracker. Specific auditing event types are listed for each individual method. For more information about Power Virtual Server activity tracking, see [Activity Tracker events](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-at-events). ## Error handling This API uses standard HTTP response codes to indicate whether a method completed successfully. A `200` response indicates success. A `400` type response indicates a failure, and a `500` type response indicates an internal system error. | HTTP Error Code | Description | Recovery | | --------------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `400` | Bad Request | The input parameters in the request body are either incomplete, malformed, or too large. Be sure to include all required parameters in your request. | | `401` | Unauthorized | You are not authorized to make this request. Log in to IBM Cloud and try submitting the request again. If this error persists, contact the account owner to check your permissions. | | `403` | Forbidden | The supplied authentication is not authorized to perform the requested operation. Either you do not have valid access through IAM access policies or your request is denied. If this error persists, contact the account owner to check your permissions. | | `404` | Not Found | The requested resource could not be found but may be available in the future. | | `405` | Method Not Allowed | The requested resource does not support the request method. | | `406` | Not Acceptable | The resource the client requested is not available in a format allowed by the `Accept` header supplied by the client. | | `408` | Request Timeout | The connection to the server timed out. Wait a few minutes, and try submitting the request again. | | `409` | Conflict | The request cannot be completed because of a conflict between the request and the current state of the resource. | | `412` | Precondition Failed | The client specified one or more preconditions in its headers, and the server cannot meet those preconditions. | | `426` | Upgrade Required | The server refuses to perform the request using the current protocol but might perform the request after the client upgrades to a different protocol. | | `500` | Internal Server Error | The request cannot be processed because the client encountered an unexpected condition on the server. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `501` | Not Implemented | The server either does not recognize the request method, or it lacks the ability to fulfill the request. | | `502` | Bad Gateway | The server was acting as a gateway or proxy and received an invalid response from the upstream server. | | `503` | Service Unavailable | The server cannot process the request. Generally, this condition is temporary, such as when a server is overloaded or down for scheduled maintenance. This condition could also be due to an unplanned outage of a service that is needed to process the request. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `504` | Gateway Timeout | The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. | | `505` | HTTP Version Not Supported | The server does not support the HTTP protocol version that is used in the request. | ## Release notes Use the release notes to learn about the latest changes to the Power Virtual Server API. <!-- ## 2025 --> ### June 2026 Added the following APIs associated with vPMEM volumes: - [Update a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/docs/apis/power-cloud#pcloud-pvminstances-vpmem-volumes-put) ### December 2025 Added the following APIs associated with vPMEM volumes: - [List all vPMEM volumes attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-getall) - [Create a vPMEM volume to be attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-post) - [Delete a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-delete) - [Get information about a vPMEM volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-get) ### September 2025 Added the following APIs associated with network peers: - [Get the list of Network Peers for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-getall) - [Create a new Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-post) - [Get the list of Network Interfaces for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-interfaces-getall) - [Delete a Network Peer from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-delete) - [Get the details of a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-get) - [Update a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-put) - [Create a new Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-post) - [Delete a Route Filter from a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-delete) - [Get the details of a Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-get) ### July 2025 Added the following APIs associated with routes: - [Get all routes in the workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-getall) - [Perform a route creation](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-post) - [Get the route report for a workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-report-get) - [Delete a route](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-delete) - [Get a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-get) - [Update a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-put) Added the following APIs associated with ssh keys: - [List SSH Keys](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-getall) - [Add a new SSH key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-post) - [Delete ssh-key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-delete) - [Get ssh-key information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-get) - [Update the ssh key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-put) Added an API to list the supported IBM i software tiers: [List supported software tiers (IBMi licensing)](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#pcloud-virtualserialnumber-softwaretiers-getall) ### February 2025 Added the following APIs associated with network address groups: - [Get the list of Network Address Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-get) - [Create a new Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-post) - [Delete a Network Address Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-delete) - [Get the detail of a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-get) - [Update a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-put) - [Add a member to a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-post) - [Delete the member from a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-delete) Added the following APIs associated with network security groups: - [Get the list of Network Security Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-list) - [Create a new Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-post) - [Perform a Network Security Groups action (enable, disable) on a workspace.](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-action-post) - [Delete a Network Security Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-delete) - [Get the detail of a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-get) - [Clone a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-post) - [Update a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-put) - [Add a member to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-post) - [Delete the member from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-delete) - [Move a Network Security Group member to another Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-move-member-post) - [Add a rule to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-post) - [Delete the rule from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-delete) ### December 2023 The following APIs are availavle: - [Get all Datacenters information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-getall) - [Get a Datacenter's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-get) - [Get all Workspaces information and capabilities for a tenant](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-getall) - [Get a Workspace's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-get) ### November 2023 - New API [List all supported storage tiers for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-storagetiers-getall) is available. ### September 2023 - Added parameters `availableCapacity`, `maxAllocationSize`, `replicationEnabled`, `storageHost` in the [Storage capacity for a storage pool in a region (GET)](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get). ### December 2022 - You can now get new error messages for undefined response codes for new service endpoint response codes. ### September 2022 - Added the following APIs associated with shared processor pool: - [Get the list of Shared Processor Pools for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-getall) - [Create a new Shared Processor Pool](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-post) - [Get the detail of a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-get) - [Update a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-put) - [Delete a Shared Processor Pool from a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-delete) - Added the following APIs associated with global recovery service: - Disaster recovery - [Get the disaster recovery site details for the current location](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-get) - [Get all disaster recovery locations supported by Power Virtual Server](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-getall) - Volume - [Perform an action on a Volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-action-post) - [Get a list of flashcopy mappings of a given volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-flashcopymappings-ge) - [Get remote copy relationship of a volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-remotecopyrelationsh) - Volume onboarding - [List all volume onboardings for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-getall) - [Onboard auxiliary volumes to target site](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-post) - [Get the information of volume onboarding operation](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-get) - Volume groups - [Get all volume groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getall) - [Create a new volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-post) - [Get all volume groups with details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getalldetails) - [Get volume Group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-get) - [updates the volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-put) - [Delete a cloud instance volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-delete) - [Perform an action (start stop reset ) on a volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-action-post) - [Get volume Group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getdetails) - [Get remote copy relationships of the volume belonging to volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-remotecopyrelationships-get) - [Get storage details of volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-storagedetails-get) ### October 2021 - Added the following APIs associated with VPN connections: - [Get VPN connections](https://cloud.ibm.com/apidocs/power-cloud#pcloud-vpnconnections-getall) - [Add IKE policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ikepolicies-post) - [Add IPsec policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ipsecpolicies-post) ### September 2021 - Added the following APIs associated with Image Capture, Image Import, and Image Export: - [Capture a PVM instance and create a deployable image](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-pvminstances-capture-post) - [Add image export job to the jobs queue](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-images-export-post) - [Create a new image from available images in COS](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v1-cloudinstances-cosimages-post) - [List up to the last 5 jobs initiated by the cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-jobs-getall) - Added the following APIs associated with storage volumes: - [Create multiple data volumes from a single definition](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumes-post) - Added the following APIs associated with private endpoint: - [Endpoint URL](https://cloud.ibm.com/apidocs/power-cloud#endpoint) ### June 2021 - Added the following APIs associated with placement groups: - [Create a server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-post) - [Get all server placement groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-getall) - [Get server placement group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-get) - [Delete server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-delete) - [Add server to placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-post) - [Remove server from placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-delete) ### May 2021 - Added the following APIs associated with Cloud connections: - [Create a new Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-post) - [Get all Cloud connections in a specific cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-getall) - [Get a Cloud connection's state or information](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-get) - [Update a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-put) - [Delete a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-delete) - [Get information about a Cloud connections attached network](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-get) - [Add a network to the Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-put) - [Delete a network from a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-delete) ### February 2021 - Added the following APIs associated with volume clone requests: - [Create a new volumes clone request and initiate the Prepare action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-post) - [Get the list of volumes-clone request for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-getall) - [Get the details for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-get) - [Delete a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-delete) - [Initiate the Start action for a volume-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-start-post) - [Initiate the Execute action for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-execute-post) - [Cancel a volume-clone request and initiate the Cleanup action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-cancel-post) - Added the following APIs for requests related to storage capacity: - [Get storage capacity for all available storage types in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-getall) - [Get storage capacity for a storage type in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-get) - [Get storage capacity for all available storage pools in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-getall) - [Get storage capacity for a storage pool in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get)
5
5
 
6
- The version of the OpenAPI document: 2.3.1
6
+ The version of the OpenAPI document: 2.5.0
7
7
  Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ Generator version: 7.23.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module IbmCloudPower
17
- class VolumesClone
17
+ class VolumesClone < ApiModelBase
18
18
  # Current action performed for the volumes-clone request
19
19
  attr_accessor :action
20
20
 
@@ -53,9 +53,14 @@ module IbmCloudPower
53
53
  }
54
54
  end
55
55
 
56
+ # Returns attribute mapping this model knows about
57
+ def self.acceptable_attribute_map
58
+ attribute_map
59
+ end
60
+
56
61
  # Returns all the JSON keys this model knows about
57
62
  def self.acceptable_attributes
58
- attribute_map.values
63
+ acceptable_attribute_map.values
59
64
  end
60
65
 
61
66
  # Attribute type mapping.
@@ -86,9 +91,10 @@ module IbmCloudPower
86
91
  end
87
92
 
88
93
  # check to see if the attribute exists and convert string to symbol for hash key
94
+ acceptable_attribute_map = self.class.acceptable_attribute_map
89
95
  attributes = attributes.each_with_object({}) { |(k, v), h|
90
- if (!self.class.attribute_map.key?(k.to_sym))
91
- fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::VolumesClone`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
96
+ if (!acceptable_attribute_map.key?(k.to_sym))
97
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::VolumesClone`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
92
98
  end
93
99
  h[k.to_sym] = v
94
100
  }
@@ -115,6 +121,8 @@ module IbmCloudPower
115
121
 
116
122
  if attributes.key?(:'percent_complete')
117
123
  self.percent_complete = attributes[:'percent_complete']
124
+ else
125
+ self.percent_complete = nil
118
126
  end
119
127
 
120
128
  if attributes.key?(:'status')
@@ -129,6 +137,7 @@ module IbmCloudPower
129
137
  # Show invalid properties with the reasons. Usually used together with valid?
130
138
  # @return Array for valid properties with the reasons
131
139
  def list_invalid_properties
140
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
132
141
  invalid_properties = Array.new
133
142
  if @percent_complete.nil?
134
143
  invalid_properties.push('invalid value for "percent_complete", percent_complete cannot be nil.')
@@ -140,10 +149,21 @@ module IbmCloudPower
140
149
  # Check to see if the all the properties in the model are valid
141
150
  # @return true if the model is valid
142
151
  def valid?
152
+ warn '[DEPRECATED] the `valid?` method is obsolete'
143
153
  return false if @percent_complete.nil?
144
154
  true
145
155
  end
146
156
 
157
+ # Custom attribute writer method with validation
158
+ # @param [Object] percent_complete Value to be assigned
159
+ def percent_complete=(percent_complete)
160
+ if percent_complete.nil?
161
+ fail ArgumentError, 'percent_complete cannot be nil'
162
+ end
163
+
164
+ @percent_complete = percent_complete
165
+ end
166
+
147
167
  # Checks equality by comparing each attribute.
148
168
  # @param [Object] Object to be compared
149
169
  def ==(o)
@@ -175,84 +195,23 @@ module IbmCloudPower
175
195
  # @param [Hash] attributes Model attributes in the form of hash
176
196
  # @return [Object] Returns the model itself
177
197
  def self.build_from_hash(attributes)
178
- new.build_from_hash(attributes)
179
- end
180
-
181
- # Builds the object from hash
182
- # @param [Hash] attributes Model attributes in the form of hash
183
- # @return [Object] Returns the model itself
184
- def build_from_hash(attributes)
185
198
  return nil unless attributes.is_a?(Hash)
186
- self.class.openapi_types.each_pair do |key, type|
187
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
188
- self.send("#{key}=", nil)
199
+ attributes = attributes.transform_keys(&:to_sym)
200
+ transformed_hash = {}
201
+ openapi_types.each_pair do |key, type|
202
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
203
+ transformed_hash["#{key}"] = nil
189
204
  elsif type =~ /\AArray<(.*)>/i
190
205
  # check to ensure the input is an array given that the attribute
191
206
  # is documented as an array but the input is not
192
- if attributes[self.class.attribute_map[key]].is_a?(Array)
193
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
207
+ if attributes[attribute_map[key]].is_a?(Array)
208
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
194
209
  end
195
- elsif !attributes[self.class.attribute_map[key]].nil?
196
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
210
+ elsif !attributes[attribute_map[key]].nil?
211
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
197
212
  end
198
213
  end
199
-
200
- self
201
- end
202
-
203
- # Deserializes the data based on type
204
- # @param string type Data type
205
- # @param string value Value to be deserialized
206
- # @return [Object] Deserialized data
207
- def _deserialize(type, value)
208
- case type.to_sym
209
- when :Time
210
- Time.parse(value)
211
- when :Date
212
- Date.parse(value)
213
- when :String
214
- value.to_s
215
- when :Integer
216
- value.to_i
217
- when :Float
218
- value.to_f
219
- when :Boolean
220
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
221
- true
222
- else
223
- false
224
- end
225
- when :Object
226
- # generic object (usually a Hash), return directly
227
- value
228
- when /\AArray<(?<inner_type>.+)>\z/
229
- inner_type = Regexp.last_match[:inner_type]
230
- value.map { |v| _deserialize(inner_type, v) }
231
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
232
- k_type = Regexp.last_match[:k_type]
233
- v_type = Regexp.last_match[:v_type]
234
- {}.tap do |hash|
235
- value.each do |k, v|
236
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
237
- end
238
- end
239
- else # model
240
- # models (e.g. Pet) or oneOf
241
- klass = IbmCloudPower.const_get(type)
242
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
243
- end
244
- end
245
-
246
- # Returns the string representation of the object
247
- # @return [String] String presentation of the object
248
- def to_s
249
- to_hash.to_s
250
- end
251
-
252
- # to_body is an alias to to_hash (backward compatibility)
253
- # @return [Hash] Returns the object in the form of hash
254
- def to_body
255
- to_hash
214
+ new(transformed_hash)
256
215
  end
257
216
 
258
217
  # Returns the object in the form of hash
@@ -271,24 +230,6 @@ module IbmCloudPower
271
230
  hash
272
231
  end
273
232
 
274
- # Outputs non-array value in the form of hash
275
- # For object, use to_hash. Otherwise, just return the value
276
- # @param [Object] value Any valid value
277
- # @return [Hash] Returns the value in the form of hash
278
- def _to_hash(value)
279
- if value.is_a?(Array)
280
- value.compact.map { |v| _to_hash(v) }
281
- elsif value.is_a?(Hash)
282
- {}.tap do |hash|
283
- value.each { |k, v| hash[k] = _to_hash(v) }
284
- end
285
- elsif value.respond_to? :to_hash
286
- value.to_hash
287
- else
288
- value
289
- end
290
- end
291
-
292
233
  end
293
234
 
294
235
  end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Power Cloud API
3
3
 
4
- #IBM Power Cloud API for Power Hardware / Infrastructure
4
+ ### Introduction You can use the IBM® Power® Virtual Server to easily deploy and configure virtual servers that are running AIX, IBM i, or Linux (RHEL and SLES) workloads. To learn about using Power Virtual Server, see: - [Getting started with IBM Power Virtual Servers](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-getting-started) - [IBM Power Virtual Server CLI Reference](https://cloud.ibm.com/docs/power-iaas-cli-plugin?topic=power-iaas-cli-plugin-power-iaas-cli-reference-v1) ## Endpoint URLs The Power Virtual Server service uses regional endpoints over both public and private network. Automatically generated regional API endpoints (service URL) will default to IBM Cloud Regions which may cause your request to fail. You should always use the Power Virtual Server regions in the service URL. The following table shows the IBM Cloud® regions and their corresponding Power Virtual Server region where the APIs are available: <!-- | Country | Power Virtual Server region | Location | Public endpoint (service URL) | | ------------- | ------------------------------------------ | -------- | ------------------------------------------- | | United States | Washington DC | us-south | `https://us-south.power-iaas.cloud.ibm.com` | | Washington DC, USA | us-east | us-east | `https://us-east.power-iaas.cloud.ibm.com` | | S----------------l | b-----o | s-----o | `----------------------------------------` | | Toronto, Canada | ca-tor | tor | `https://tor.power-iaas.cloud.ibm.com` | | Montreal, Canada | ca-mon | mon | `https://mon.power-iaas.cloud.ibm.com` | | Frankfurt, Germany | eu-de | eu-de | `https://eu-de.power-iaas.cloud.ibm.com` | | London, UK | eu-gb | lon | `https://lon.power-iaas.cloud.ibm.com` | | Sydney, Australia | au-syd | syd | `https://syd.power-iaas.cloud.ibm.com` | | Tokyo, Japan | jp-tok | tok | `https://tok.power-iaas.cloud.ibm.com` | | Osaka, Japan | jp-osa | osa | `https://osa.power-iaas.cloud.ibm.com` | --> | Country | Power Virtual Server region | Location | Public end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ----------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://lon.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://mad.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://us-south.power-iaas.cloud.ibm.com | | Country | Power Virtual Server region | Location | Private end-point (service URL) | | ---------------- | ------------------------------------------ | -------------------------- | ------------------------------------------------- | | Australia | Sydney | syd04 \\n syd05 | https://private.au-syd.power-iaas.cloud.ibm.com | | Brazil | Sao Paulo | sao01 \\n sao04 | https://private.br-sao.power-iaas.cloud.ibm.com | | Canada | Montreal | mon01 | https://private.ca-mon.power-iaas.cloud.ibm.com | | | Toronto | tor01 | https://private.ca-tor.power-iaas.cloud.ibm.com | | Germany | Frankfurt | eu-de-1 \\n eu-de-2 | https://private.eu-de.power-iaas.cloud.ibm.com | | UK/Great Britain | London | lon04 \\n lon06 | https://private.eu-gb.power-iaas.cloud.ibm.com | | India | Chennai | che01 \\n che02 \\n che03 | https://private.in-che.power-iaas.cloud.ibm.com | | | Mumbai | in-mum-1 \\n in-mum-2 | https://private.in-mum.power-iaas.cloud.ibm.com | | Japan | Tokyo | tok04 | https://private.jp-tok.power-iaas.cloud.ibm.com | | | Osaka | osa21 | https://private.jp-osa.power-iaas.cloud.ibm.com | | Spain | Madrid | mad02 \\n mad04 | https://private.eu-es.power-iaas.cloud.ibm.com | | United States | Washington DC | us-east \\n wdc06 \\n wdc07 | https://private.us-east.power-iaas.cloud.ibm.com | | | Dallas | dal10 \\n dal12 \\n us-south | https://private.us-south.power-iaas.cloud.ibm.com | ## Curl service URL intro To call the API, select the service URL that corresponds to the region of your choice and add a method path to form the complete request URL. For example, to list all the workspaces available in the `us-south` region, make a `GET` request to `https://us-south.iaas.cloud.ibm.com/v1/workspaces`. Example request to call the `us-south` service URL: ```codeblock curl -H \"Authorization: Bearer {token}\" -X {http_method} \"https://us-south.iaas.cloud.ibm.com/v1{path}\" ``` Replace `{token}`, `{http_method}`, and `{path}` in this example with the values for your particular request. ## Authentication The Power Virtual Server API uses Identity and Access Management ([IAM](https://cloud.ibm.com/docs/account?topic=account-iamoverview)) to authenticate requests. To call each API method, you must be assigned a role that includes the required IAM actions. Each method has an Authorization section that lists the required actions and, if applicable, the conditions under which each action is required. Check your access on the [IBM Cloud console](https://cloud.ibm.com/login) by navigating to **[Users](https://cloud.ibm.com/iam/users) > _User_ > Access**. For more information about IAM actions and how they map to roles, see [Assigning access to account management services](https://cloud.ibm.com/docs/account?topic=account-account-services) and [Managing IAM access for Power Virtual Server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-managing-resources-and-users). Learn about obtaining an IAM token for an authenticated user or service ID in the [IAM Identity Services API](https://cloud.ibm.com/apidocs/iam-identity-token-api). If you first [create an API key](https://cloud.ibm.com/docs/account?topic=account-userapikey#create_user_key), you can [use it to generate an IAM token](https://cloud.ibm.com/docs/account?topic=account-iamtoken_from_apikey). To use the API, add a valid IAM token to the HTTP `Authorization` request header. For example, `-H 'Authorization: Bearer {token}'`. For specific APIs you must need to include your IBM Cloud IAM access token and the Power Virtual Server instance ID, also known as your **Cloud Resource Name** (CRN), in each request. The first part of your CRN contains your **Tenant ID** and the second part contains your **Cloud Instance ID**. The following example shows a typical CRN: ```text crn:v1:staging:public:power-iaas:us-east:a/abcdefghijklmnopqrstuvwxyzabcdef:121d5ee5-b87d-4a0e-86b8-aaff422135478:: Tenant ID {tenant_id} = abcdefghijklmnopqrstuvwxyzabcdef Cloud Instance ID {cloud_instance_id} = 121d5ee5-b87d-4a0e-86b8-aaff422135478 ``` You can retrieve an access token by first creating an API key, and then exchanging your API key for a IBM Cloud IAM token. For more information, see [Retrieving an access token programmatically](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-access-token) and [Retrieving your instance ID](https://cloud.ibm.com/docs/services/key-protect?topic=key-protect-retrieve-instance-ID). To retrieve your access token: ```sh curl -X POST \\ \"https://iam.cloud.ibm.com/identity/token\" \\ --header 'Content-Type: application/x-www-form-urlencoded' \\ --header 'Accept: application/json' \\ --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \\ --data-urlencode 'apikey={api_key}' ``` To use the API, replace `{token}` with the token obtained above from IAM, replace `{http_method}` with an HTTP method such as `POST`, and replace `{url}` with a request URL such as `https://us-south.iaas.cloud.ibm.com/v1/workspaces/{workspace_id}`: ```sh curl -H \"Authorization: Bearer {token}\" -X {http_method} \"{url}\" -H \"CRN\" ``` ## Auditing Monitor API activity within your account by using the IBM Cloud Activity Tracker service. Each time you make an API call, one or more events are generated that you can track and audit from within Activity Tracker. Specific auditing event types are listed for each individual method. For more information about Power Virtual Server activity tracking, see [Activity Tracker events](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-at-events). ## Error handling This API uses standard HTTP response codes to indicate whether a method completed successfully. A `200` response indicates success. A `400` type response indicates a failure, and a `500` type response indicates an internal system error. | HTTP Error Code | Description | Recovery | | --------------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `400` | Bad Request | The input parameters in the request body are either incomplete, malformed, or too large. Be sure to include all required parameters in your request. | | `401` | Unauthorized | You are not authorized to make this request. Log in to IBM Cloud and try submitting the request again. If this error persists, contact the account owner to check your permissions. | | `403` | Forbidden | The supplied authentication is not authorized to perform the requested operation. Either you do not have valid access through IAM access policies or your request is denied. If this error persists, contact the account owner to check your permissions. | | `404` | Not Found | The requested resource could not be found but may be available in the future. | | `405` | Method Not Allowed | The requested resource does not support the request method. | | `406` | Not Acceptable | The resource the client requested is not available in a format allowed by the `Accept` header supplied by the client. | | `408` | Request Timeout | The connection to the server timed out. Wait a few minutes, and try submitting the request again. | | `409` | Conflict | The request cannot be completed because of a conflict between the request and the current state of the resource. | | `412` | Precondition Failed | The client specified one or more preconditions in its headers, and the server cannot meet those preconditions. | | `426` | Upgrade Required | The server refuses to perform the request using the current protocol but might perform the request after the client upgrades to a different protocol. | | `500` | Internal Server Error | The request cannot be processed because the client encountered an unexpected condition on the server. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `501` | Not Implemented | The server either does not recognize the request method, or it lacks the ability to fulfill the request. | | `502` | Bad Gateway | The server was acting as a gateway or proxy and received an invalid response from the upstream server. | | `503` | Service Unavailable | The server cannot process the request. Generally, this condition is temporary, such as when a server is overloaded or down for scheduled maintenance. This condition could also be due to an unplanned outage of a service that is needed to process the request. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support. | | `504` | Gateway Timeout | The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. | | `505` | HTTP Version Not Supported | The server does not support the HTTP protocol version that is used in the request. | ## Release notes Use the release notes to learn about the latest changes to the Power Virtual Server API. <!-- ## 2025 --> ### June 2026 Added the following APIs associated with vPMEM volumes: - [Update a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/docs/apis/power-cloud#pcloud-pvminstances-vpmem-volumes-put) ### December 2025 Added the following APIs associated with vPMEM volumes: - [List all vPMEM volumes attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-getall) - [Create a vPMEM volume to be attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-post) - [Delete a vPMEM volume attached to this PVM Instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-delete) - [Get information about a vPMEM volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-pvminstances-vpmem-volumes-get) ### September 2025 Added the following APIs associated with network peers: - [Get the list of Network Peers for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-getall) - [Create a new Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-post) - [Get the list of Network Interfaces for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-interfaces-getall) - [Delete a Network Peer from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-delete) - [Get the details of a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-get) - [Update a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-id-put) - [Create a new Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-post) - [Delete a Route Filter from a Network Peer](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-delete) - [Get the details of a Route Filter](https://cloud.ibm.com/apidocs/power-cloud#v1-networkpeers-routefilter-id-get) ### July 2025 Added the following APIs associated with routes: - [Get all routes in the workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-getall) - [Perform a route creation](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-post) - [Get the route report for a workspace](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-report-get) - [Delete a route](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-delete) - [Get a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-get) - [Update a route's information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-routes-put) Added the following APIs associated with ssh keys: - [List SSH Keys](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-getall) - [Add a new SSH key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-post) - [Delete ssh-key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-delete) - [Get ssh-key information](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-get) - [Update the ssh key](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#v1-sshkeys-put) Added an API to list the supported IBM i software tiers: [List supported software tiers (IBMi licensing)](https://cloud.ibm.com/apidocs/power-cloud?loginMethod=federated#pcloud-virtualserialnumber-softwaretiers-getall) ### February 2025 Added the following APIs associated with network address groups: - [Get the list of Network Address Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-get) - [Create a new Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-post) - [Delete a Network Address Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-delete) - [Get the detail of a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-get) - [Update a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-id-put) - [Add a member to a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-post) - [Delete the member from a Network Address Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networkaddressgroups-members-delete) Added the following APIs associated with network security groups: - [Get the list of Network Security Groups for a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-list) - [Create a new Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-post) - [Perform a Network Security Groups action (enable, disable) on a workspace.](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-action-post) - [Delete a Network Security Group from a workspace](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-delete) - [Get the detail of a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-get) - [Clone a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-post) - [Update a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-id-put) - [Add a member to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-post) - [Delete the member from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-members-delete) - [Move a Network Security Group member to another Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-move-member-post) - [Add a rule to a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-post) - [Delete the rule from a Network Security Group](https://cloud.ibm.com/apidocs/power-cloud#v1-networksecuritygroups-rules-delete) ### December 2023 The following APIs are availavle: - [Get all Datacenters information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-getall) - [Get a Datacenter's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-datacenters-get) - [Get all Workspaces information and capabilities for a tenant](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-getall) - [Get a Workspace's information and capabilities](https://cloud.ibm.com/apidocs/power-cloud#v1-workspaces-get) ### November 2023 - New API [List all supported storage tiers for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-storagetiers-getall) is available. ### September 2023 - Added parameters `availableCapacity`, `maxAllocationSize`, `replicationEnabled`, `storageHost` in the [Storage capacity for a storage pool in a region (GET)](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get). ### December 2022 - You can now get new error messages for undefined response codes for new service endpoint response codes. ### September 2022 - Added the following APIs associated with shared processor pool: - [Get the list of Shared Processor Pools for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-getall) - [Create a new Shared Processor Pool](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-post) - [Get the detail of a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-get) - [Update a Shared Processor Pool for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-put) - [Delete a Shared Processor Pool from a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-sharedprocessorpools-delete) - Added the following APIs associated with global recovery service: - Disaster recovery - [Get the disaster recovery site details for the current location](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-get) - [Get all disaster recovery locations supported by Power Virtual Server](https://cloud.ibm.com/apidocs/power-cloud#pcloud-locations-disasterrecovery-getall) - Volume - [Perform an action on a Volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-action-post) - [Get a list of flashcopy mappings of a given volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-flashcopymappings-ge) - [Get remote copy relationship of a volume](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-volumes-remotecopyrelationsh) - Volume onboarding - [List all volume onboardings for this cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-getall) - [Onboard auxiliary volumes to target site](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-post) - [Get the information of volume onboarding operation](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volume-onboarding-get) - Volume groups - [Get all volume groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getall) - [Create a new volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-post) - [Get all volume groups with details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getalldetails) - [Get volume Group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-get) - [updates the volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-put) - [Delete a cloud instance volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-delete) - [Perform an action (start stop reset ) on a volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-action-post) - [Get volume Group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-getdetails) - [Get remote copy relationships of the volume belonging to volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-remotecopyrelationships-get) - [Get storage details of volume group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-volumegroups-storagedetails-get) ### October 2021 - Added the following APIs associated with VPN connections: - [Get VPN connections](https://cloud.ibm.com/apidocs/power-cloud#pcloud-vpnconnections-getall) - [Add IKE policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ikepolicies-post) - [Add IPsec policy](https://cloud.ibm.com/apidocs/power-cloud#pcloud-ipsecpolicies-post) ### September 2021 - Added the following APIs associated with Image Capture, Image Import, and Image Export: - [Capture a PVM instance and create a deployable image](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-pvminstances-capture-post) - [Add image export job to the jobs queue](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-images-export-post) - [Create a new image from available images in COS](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v1-cloudinstances-cosimages-post) - [List up to the last 5 jobs initiated by the cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudinstances-jobs-getall) - Added the following APIs associated with storage volumes: - [Create multiple data volumes from a single definition](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumes-post) - Added the following APIs associated with private endpoint: - [Endpoint URL](https://cloud.ibm.com/apidocs/power-cloud#endpoint) ### June 2021 - Added the following APIs associated with placement groups: - [Create a server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-post) - [Get all server placement groups](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-getall) - [Get server placement group details](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-get) - [Delete server placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-delete) - [Add server to placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-post) - [Remove server from placement group](https://cloud.ibm.com/apidocs/power-cloud#pcloud-placementgroups-members-delete) ### May 2021 - Added the following APIs associated with Cloud connections: - [Create a new Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-post) - [Get all Cloud connections in a specific cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-getall) - [Get a Cloud connection's state or information](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-get) - [Update a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-put) - [Delete a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-delete) - [Get information about a Cloud connections attached network](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-get) - [Add a network to the Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-put) - [Delete a network from a Cloud connection](https://cloud.ibm.com/apidocs/power-cloud#pcloud-cloudconnections-networks-delete) ### February 2021 - Added the following APIs associated with volume clone requests: - [Create a new volumes clone request and initiate the Prepare action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-post) - [Get the list of volumes-clone request for a cloud instance](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-getall) - [Get the details for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-get) - [Delete a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-delete) - [Initiate the Start action for a volume-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-start-post) - [Initiate the Execute action for a volumes-clone request](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-execute-post) - [Cancel a volume-clone request and initiate the Cleanup action](https://cloud.ibm.com/apidocs/power-cloud#pcloud-v2-volumesclone-cancel-post) - Added the following APIs for requests related to storage capacity: - [Get storage capacity for all available storage types in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-getall) - [Get storage capacity for a storage type in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-types-get) - [Get storage capacity for all available storage pools in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-getall) - [Get storage capacity for a storage pool in a region](https://cloud.ibm.com/apidocs/power-cloud#pcloud-storagecapacity-pools-get)
5
5
 
6
- The version of the OpenAPI document: 2.3.1
6
+ The version of the OpenAPI document: 2.5.0
7
7
  Contact: ismirlia@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
9
+ Generator version: 7.23.0
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module IbmCloudPower
17
- class VolumesCloneAsyncRequest
17
+ class VolumesCloneAsyncRequest < ApiModelBase
18
18
  # Base name of the new cloned volume(s). Cloned Volume names will be prefixed with 'clone-' and suffixed with '-#####' (where ##### is a 5 digit random number) If multiple volumes cloned they will be further suffixed with an incremental number starting with 1. Example volume names using name=\"volume-abcdef\" single volume clone will be named \"clone-volume-abcdef-83081\" multi volume clone will be named \"clone-volume-abcdef-73721-1\", \"clone-volume-abcdef-73721-2\", ... For multiple volume clone, the provided name will be truncated to the first 20 characters.
19
19
  attr_accessor :name
20
20
 
@@ -24,6 +24,7 @@ module IbmCloudPower
24
24
  # Target storage tier for the cloned volumes. Use to clone a set of volumes from one storage tier to a different storage tier. Cloned volumes must remain in the same storage pool as the source volumes.
25
25
  attr_accessor :target_storage_tier
26
26
 
27
+ # List of user tags
27
28
  attr_accessor :user_tags
28
29
 
29
30
  # List of volumes to be cloned
@@ -40,9 +41,14 @@ module IbmCloudPower
40
41
  }
41
42
  end
42
43
 
44
+ # Returns attribute mapping this model knows about
45
+ def self.acceptable_attribute_map
46
+ attribute_map
47
+ end
48
+
43
49
  # Returns all the JSON keys this model knows about
44
50
  def self.acceptable_attributes
45
- attribute_map.values
51
+ acceptable_attribute_map.values
46
52
  end
47
53
 
48
54
  # Attribute type mapping.
@@ -51,7 +57,7 @@ module IbmCloudPower
51
57
  :'name' => :'String',
52
58
  :'target_replication_enabled' => :'Boolean',
53
59
  :'target_storage_tier' => :'String',
54
- :'user_tags' => :'Array',
60
+ :'user_tags' => :'Array<String>',
55
61
  :'volume_ids' => :'Array<String>'
56
62
  }
57
63
  end
@@ -59,7 +65,6 @@ module IbmCloudPower
59
65
  # List of attributes with nullable: true
60
66
  def self.openapi_nullable
61
67
  Set.new([
62
- :'user_tags',
63
68
  ])
64
69
  end
65
70
 
@@ -71,15 +76,18 @@ module IbmCloudPower
71
76
  end
72
77
 
73
78
  # check to see if the attribute exists and convert string to symbol for hash key
79
+ acceptable_attribute_map = self.class.acceptable_attribute_map
74
80
  attributes = attributes.each_with_object({}) { |(k, v), h|
75
- if (!self.class.attribute_map.key?(k.to_sym))
76
- fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::VolumesCloneAsyncRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
81
+ if (!acceptable_attribute_map.key?(k.to_sym))
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `IbmCloudPower::VolumesCloneAsyncRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
77
83
  end
78
84
  h[k.to_sym] = v
79
85
  }
80
86
 
81
87
  if attributes.key?(:'name')
82
88
  self.name = attributes[:'name']
89
+ else
90
+ self.name = nil
83
91
  end
84
92
 
85
93
  if attributes.key?(:'target_replication_enabled')
@@ -91,24 +99,33 @@ module IbmCloudPower
91
99
  end
92
100
 
93
101
  if attributes.key?(:'user_tags')
94
- self.user_tags = attributes[:'user_tags']
102
+ if (value = attributes[:'user_tags']).is_a?(Array)
103
+ self.user_tags = value
104
+ end
95
105
  end
96
106
 
97
107
  if attributes.key?(:'volume_ids')
98
108
  if (value = attributes[:'volume_ids']).is_a?(Array)
99
109
  self.volume_ids = value
100
110
  end
111
+ else
112
+ self.volume_ids = nil
101
113
  end
102
114
  end
103
115
 
104
116
  # Show invalid properties with the reasons. Usually used together with valid?
105
117
  # @return Array for valid properties with the reasons
106
118
  def list_invalid_properties
119
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
107
120
  invalid_properties = Array.new
108
121
  if @name.nil?
109
122
  invalid_properties.push('invalid value for "name", name cannot be nil.')
110
123
  end
111
124
 
125
+ if !@user_tags.nil? && @user_tags.length > 100
126
+ invalid_properties.push('invalid value for "user_tags", number of items must be less than or equal to 100.')
127
+ end
128
+
112
129
  if @volume_ids.nil?
113
130
  invalid_properties.push('invalid value for "volume_ids", volume_ids cannot be nil.')
114
131
  end
@@ -119,11 +136,47 @@ module IbmCloudPower
119
136
  # Check to see if the all the properties in the model are valid
120
137
  # @return true if the model is valid
121
138
  def valid?
139
+ warn '[DEPRECATED] the `valid?` method is obsolete'
122
140
  return false if @name.nil?
141
+ return false if !@user_tags.nil? && @user_tags.length > 100
123
142
  return false if @volume_ids.nil?
124
143
  true
125
144
  end
126
145
 
146
+ # Custom attribute writer method with validation
147
+ # @param [Object] name Value to be assigned
148
+ def name=(name)
149
+ if name.nil?
150
+ fail ArgumentError, 'name cannot be nil'
151
+ end
152
+
153
+ @name = name
154
+ end
155
+
156
+ # Custom attribute writer method with validation
157
+ # @param [Object] user_tags Value to be assigned
158
+ def user_tags=(user_tags)
159
+ if user_tags.nil?
160
+ fail ArgumentError, 'user_tags cannot be nil'
161
+ end
162
+
163
+ if user_tags.length > 100
164
+ fail ArgumentError, 'invalid value for "user_tags", number of items must be less than or equal to 100.'
165
+ end
166
+
167
+ @user_tags = user_tags
168
+ end
169
+
170
+ # Custom attribute writer method with validation
171
+ # @param [Object] volume_ids Value to be assigned
172
+ def volume_ids=(volume_ids)
173
+ if volume_ids.nil?
174
+ fail ArgumentError, 'volume_ids cannot be nil'
175
+ end
176
+
177
+ @volume_ids = volume_ids
178
+ end
179
+
127
180
  # Checks equality by comparing each attribute.
128
181
  # @param [Object] Object to be compared
129
182
  def ==(o)
@@ -152,84 +205,23 @@ module IbmCloudPower
152
205
  # @param [Hash] attributes Model attributes in the form of hash
153
206
  # @return [Object] Returns the model itself
154
207
  def self.build_from_hash(attributes)
155
- new.build_from_hash(attributes)
156
- end
157
-
158
- # Builds the object from hash
159
- # @param [Hash] attributes Model attributes in the form of hash
160
- # @return [Object] Returns the model itself
161
- def build_from_hash(attributes)
162
208
  return nil unless attributes.is_a?(Hash)
163
- self.class.openapi_types.each_pair do |key, type|
164
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
165
- self.send("#{key}=", nil)
209
+ attributes = attributes.transform_keys(&:to_sym)
210
+ transformed_hash = {}
211
+ openapi_types.each_pair do |key, type|
212
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
213
+ transformed_hash["#{key}"] = nil
166
214
  elsif type =~ /\AArray<(.*)>/i
167
215
  # check to ensure the input is an array given that the attribute
168
216
  # is documented as an array but the input is not
169
- if attributes[self.class.attribute_map[key]].is_a?(Array)
170
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
171
- end
172
- elsif !attributes[self.class.attribute_map[key]].nil?
173
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
174
- end
175
- end
176
-
177
- self
178
- end
179
-
180
- # Deserializes the data based on type
181
- # @param string type Data type
182
- # @param string value Value to be deserialized
183
- # @return [Object] Deserialized data
184
- def _deserialize(type, value)
185
- case type.to_sym
186
- when :Time
187
- Time.parse(value)
188
- when :Date
189
- Date.parse(value)
190
- when :String
191
- value.to_s
192
- when :Integer
193
- value.to_i
194
- when :Float
195
- value.to_f
196
- when :Boolean
197
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
198
- true
199
- else
200
- false
201
- end
202
- when :Object
203
- # generic object (usually a Hash), return directly
204
- value
205
- when /\AArray<(?<inner_type>.+)>\z/
206
- inner_type = Regexp.last_match[:inner_type]
207
- value.map { |v| _deserialize(inner_type, v) }
208
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
209
- k_type = Regexp.last_match[:k_type]
210
- v_type = Regexp.last_match[:v_type]
211
- {}.tap do |hash|
212
- value.each do |k, v|
213
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
217
+ if attributes[attribute_map[key]].is_a?(Array)
218
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
214
219
  end
220
+ elsif !attributes[attribute_map[key]].nil?
221
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
215
222
  end
216
- else # model
217
- # models (e.g. Pet) or oneOf
218
- klass = IbmCloudPower.const_get(type)
219
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
220
223
  end
221
- end
222
-
223
- # Returns the string representation of the object
224
- # @return [String] String presentation of the object
225
- def to_s
226
- to_hash.to_s
227
- end
228
-
229
- # to_body is an alias to to_hash (backward compatibility)
230
- # @return [Hash] Returns the object in the form of hash
231
- def to_body
232
- to_hash
224
+ new(transformed_hash)
233
225
  end
234
226
 
235
227
  # Returns the object in the form of hash
@@ -248,24 +240,6 @@ module IbmCloudPower
248
240
  hash
249
241
  end
250
242
 
251
- # Outputs non-array value in the form of hash
252
- # For object, use to_hash. Otherwise, just return the value
253
- # @param [Object] value Any valid value
254
- # @return [Hash] Returns the value in the form of hash
255
- def _to_hash(value)
256
- if value.is_a?(Array)
257
- value.compact.map { |v| _to_hash(v) }
258
- elsif value.is_a?(Hash)
259
- {}.tap do |hash|
260
- value.each { |k, v| hash[k] = _to_hash(v) }
261
- end
262
- elsif value.respond_to? :to_hash
263
- value.to_hash
264
- else
265
- value
266
- end
267
- end
268
-
269
243
  end
270
244
 
271
245
  end