ionoscloud 5.0.0 → 6.0.0.beta.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (594) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -5
  3. data/docs/AttachedVolumes.md +30 -0
  4. data/docs/BackupUnit.md +26 -0
  5. data/docs/BackupUnitProperties.md +22 -0
  6. data/docs/BackupUnitSSO.md +18 -0
  7. data/docs/BackupUnits.md +24 -0
  8. data/docs/BackupUnitsApi.md +594 -0
  9. data/docs/BalancedNics.md +30 -0
  10. data/docs/CHANGELOG.md +1 -0
  11. data/docs/Cdroms.md +30 -0
  12. data/docs/ConnectableDatacenter.md +22 -0
  13. data/docs/Contract.md +20 -0
  14. data/docs/ContractProperties.md +26 -0
  15. data/docs/ContractResourcesApi.md +89 -0
  16. data/docs/Contracts.md +24 -0
  17. data/docs/CpuArchitectureProperties.md +24 -0
  18. data/docs/DataCenterEntities.md +28 -0
  19. data/docs/DataCentersApi.md +516 -0
  20. data/docs/Datacenter.md +28 -0
  21. data/docs/DatacenterElementMetadata.md +32 -0
  22. data/docs/DatacenterProperties.md +30 -0
  23. data/docs/Datacenters.md +30 -0
  24. data/docs/DefaultApi.md +78 -0
  25. data/docs/Error.md +20 -0
  26. data/docs/ErrorMessage.md +20 -0
  27. data/docs/FirewallRule.md +26 -0
  28. data/docs/FirewallRules.md +30 -0
  29. data/docs/FirewallRulesApi.md +552 -0
  30. data/docs/FirewallruleProperties.md +36 -0
  31. data/docs/FlowLog.md +26 -0
  32. data/docs/FlowLogProperties.md +24 -0
  33. data/docs/FlowLogPut.md +24 -0
  34. data/docs/FlowLogs.md +30 -0
  35. data/docs/FlowLogsApi.md +540 -0
  36. data/docs/Group.md +26 -0
  37. data/docs/GroupEntities.md +20 -0
  38. data/docs/GroupMembers.md +24 -0
  39. data/docs/GroupProperties.md +42 -0
  40. data/docs/GroupShare.md +24 -0
  41. data/docs/GroupShareProperties.md +20 -0
  42. data/docs/GroupShares.md +24 -0
  43. data/docs/GroupUsers.md +24 -0
  44. data/docs/Groups.md +24 -0
  45. data/docs/IPBlocksApi.md +512 -0
  46. data/docs/IPFailover.md +20 -0
  47. data/docs/Image.md +26 -0
  48. data/docs/ImageProperties.md +54 -0
  49. data/docs/Images.md +24 -0
  50. data/docs/ImagesApi.md +428 -0
  51. data/docs/Info.md +22 -0
  52. data/docs/IpBlock.md +26 -0
  53. data/docs/IpBlockProperties.md +26 -0
  54. data/docs/IpBlocks.md +24 -0
  55. data/docs/IpConsumer.md +34 -0
  56. data/docs/KubernetesApi.md +1433 -0
  57. data/docs/KubernetesAutoScaling.md +20 -0
  58. data/docs/KubernetesCluster.md +28 -0
  59. data/docs/KubernetesClusterEntities.md +18 -0
  60. data/docs/KubernetesClusterForPost.md +28 -0
  61. data/docs/KubernetesClusterForPut.md +28 -0
  62. data/docs/KubernetesClusterProperties.md +30 -0
  63. data/docs/KubernetesClusterPropertiesForPost.md +26 -0
  64. data/docs/KubernetesClusterPropertiesForPut.md +22 -0
  65. data/docs/KubernetesClusters.md +24 -0
  66. data/docs/KubernetesMaintenanceWindow.md +20 -0
  67. data/docs/KubernetesNode.md +26 -0
  68. data/docs/KubernetesNodeMetadata.md +26 -0
  69. data/docs/KubernetesNodePool.md +26 -0
  70. data/docs/KubernetesNodePoolForPost.md +26 -0
  71. data/docs/KubernetesNodePoolForPut.md +26 -0
  72. data/docs/KubernetesNodePoolLan.md +22 -0
  73. data/docs/KubernetesNodePoolLanRoutes.md +20 -0
  74. data/docs/KubernetesNodePoolProperties.md +50 -0
  75. data/docs/KubernetesNodePoolPropertiesForPost.md +48 -0
  76. data/docs/KubernetesNodePoolPropertiesForPut.md +34 -0
  77. data/docs/KubernetesNodePools.md +24 -0
  78. data/docs/KubernetesNodeProperties.md +24 -0
  79. data/docs/KubernetesNodes.md +24 -0
  80. data/docs/Label.md +26 -0
  81. data/docs/LabelProperties.md +26 -0
  82. data/docs/LabelResource.md +26 -0
  83. data/docs/LabelResourceProperties.md +20 -0
  84. data/docs/LabelResources.md +30 -0
  85. data/docs/Labels.md +24 -0
  86. data/docs/LabelsApi.md +2346 -0
  87. data/docs/Lan.md +28 -0
  88. data/docs/LanEntities.md +18 -0
  89. data/docs/LanNics.md +30 -0
  90. data/docs/LanPost.md +28 -0
  91. data/docs/LanProperties.md +24 -0
  92. data/docs/LanPropertiesPost.md +24 -0
  93. data/docs/Lans.md +30 -0
  94. data/docs/LansApi.md +794 -0
  95. data/docs/LoadBalancersApi.md +885 -0
  96. data/docs/Loadbalancer.md +28 -0
  97. data/docs/LoadbalancerEntities.md +18 -0
  98. data/docs/LoadbalancerProperties.md +22 -0
  99. data/docs/Loadbalancers.md +30 -0
  100. data/docs/Location.md +26 -0
  101. data/docs/LocationProperties.md +24 -0
  102. data/docs/Locations.md +24 -0
  103. data/docs/LocationsApi.md +259 -0
  104. data/docs/NATGatewaysApi.md +1578 -0
  105. data/docs/NatGateway.md +28 -0
  106. data/docs/NatGatewayEntities.md +20 -0
  107. data/docs/NatGatewayLanProperties.md +20 -0
  108. data/docs/NatGatewayProperties.md +22 -0
  109. data/docs/NatGatewayPut.md +24 -0
  110. data/docs/NatGatewayRule.md +26 -0
  111. data/docs/NatGatewayRuleProperties.md +30 -0
  112. data/docs/NatGatewayRuleProtocol.md +15 -0
  113. data/docs/NatGatewayRulePut.md +24 -0
  114. data/docs/NatGatewayRuleType.md +15 -0
  115. data/docs/NatGatewayRules.md +24 -0
  116. data/docs/NatGateways.md +30 -0
  117. data/docs/NetworkInterfacesApi.md +540 -0
  118. data/docs/NetworkLoadBalancer.md +28 -0
  119. data/docs/NetworkLoadBalancerEntities.md +20 -0
  120. data/docs/NetworkLoadBalancerForwardingRule.md +26 -0
  121. data/docs/NetworkLoadBalancerForwardingRuleHealthCheck.md +26 -0
  122. data/docs/NetworkLoadBalancerForwardingRuleProperties.md +30 -0
  123. data/docs/NetworkLoadBalancerForwardingRulePut.md +24 -0
  124. data/docs/NetworkLoadBalancerForwardingRuleTarget.md +24 -0
  125. data/docs/NetworkLoadBalancerForwardingRuleTargetHealthCheck.md +22 -0
  126. data/docs/NetworkLoadBalancerForwardingRules.md +30 -0
  127. data/docs/NetworkLoadBalancerProperties.md +26 -0
  128. data/docs/NetworkLoadBalancerPut.md +24 -0
  129. data/docs/NetworkLoadBalancers.md +30 -0
  130. data/docs/NetworkLoadBalancersApi.md +1590 -0
  131. data/docs/Nic.md +28 -0
  132. data/docs/NicEntities.md +20 -0
  133. data/docs/NicProperties.md +34 -0
  134. data/docs/NicPut.md +24 -0
  135. data/docs/Nics.md +30 -0
  136. data/docs/NoStateMetaData.md +30 -0
  137. data/docs/PaginationLinks.md +22 -0
  138. data/docs/Peer.md +26 -0
  139. data/docs/PrivateCrossConnect.md +26 -0
  140. data/docs/PrivateCrossConnectProperties.md +24 -0
  141. data/docs/PrivateCrossConnects.md +24 -0
  142. data/docs/PrivateCrossConnectsApi.md +430 -0
  143. data/docs/README.md +111 -0
  144. data/docs/RemoteConsoleUrl.md +18 -0
  145. data/docs/Request.md +26 -0
  146. data/docs/RequestMetadata.md +24 -0
  147. data/docs/RequestProperties.md +24 -0
  148. data/docs/RequestStatus.md +24 -0
  149. data/docs/RequestStatusMetadata.md +24 -0
  150. data/docs/RequestTarget.md +20 -0
  151. data/docs/Requests.md +30 -0
  152. data/docs/RequestsApi.md +283 -0
  153. data/docs/Resource.md +28 -0
  154. data/docs/ResourceEntities.md +18 -0
  155. data/docs/ResourceGroups.md +24 -0
  156. data/docs/ResourceLimits.md +60 -0
  157. data/docs/ResourceProperties.md +20 -0
  158. data/docs/ResourceReference.md +22 -0
  159. data/docs/Resources.md +24 -0
  160. data/docs/ResourcesUsers.md +24 -0
  161. data/docs/S3Key.md +26 -0
  162. data/docs/S3KeyMetadata.md +20 -0
  163. data/docs/S3KeyProperties.md +20 -0
  164. data/docs/S3Keys.md +24 -0
  165. data/docs/S3ObjectStorageSSO.md +18 -0
  166. data/docs/Server.md +28 -0
  167. data/docs/ServerEntities.md +22 -0
  168. data/docs/ServerProperties.md +36 -0
  169. data/docs/Servers.md +30 -0
  170. data/docs/ServersApi.md +1908 -0
  171. data/docs/Snapshot.md +26 -0
  172. data/docs/SnapshotProperties.md +48 -0
  173. data/docs/Snapshots.md +24 -0
  174. data/docs/SnapshotsApi.md +428 -0
  175. data/docs/TargetPortRange.md +20 -0
  176. data/docs/Template.md +26 -0
  177. data/docs/TemplateProperties.md +24 -0
  178. data/docs/Templates.md +24 -0
  179. data/docs/TemplatesApi.md +165 -0
  180. data/docs/Token.md +18 -0
  181. data/docs/Type.md +15 -0
  182. data/docs/User.md +28 -0
  183. data/docs/UserManagementApi.md +2033 -0
  184. data/docs/UserMetadata.md +22 -0
  185. data/docs/UserPost.md +18 -0
  186. data/docs/UserProperties.md +32 -0
  187. data/docs/UserPropertiesPost.md +32 -0
  188. data/docs/UserPropertiesPut.md +30 -0
  189. data/docs/UserPut.md +20 -0
  190. data/docs/UserS3KeysApi.md +516 -0
  191. data/docs/Users.md +24 -0
  192. data/docs/UsersEntities.md +20 -0
  193. data/docs/Volume.md +26 -0
  194. data/docs/VolumeProperties.md +54 -0
  195. data/docs/Volumes.md +30 -0
  196. data/docs/VolumesApi.md +709 -0
  197. data/docs/summary.md +395 -0
  198. data/gitbook.yaml +4 -0
  199. data/ionoscloud.gemspec +1 -1
  200. data/lib/ionoscloud.rb +68 -18
  201. data/lib/ionoscloud/api/_api.rb +1 -1
  202. data/lib/ionoscloud/api/{backup_unit_api.rb → backup_units_api.rb} +60 -60
  203. data/lib/ionoscloud/api/{contract_api.rb → contract_resources_api.rb} +12 -12
  204. data/lib/ionoscloud/api/{data_center_api.rb → data_centers_api.rb} +51 -51
  205. data/lib/ionoscloud/api/firewall_rules_api.rb +640 -0
  206. data/lib/ionoscloud/api/flow_logs_api.rb +622 -0
  207. data/lib/ionoscloud/api/{image_api.rb → images_api.rb} +40 -40
  208. data/lib/ionoscloud/api/ip_blocks_api.rb +16 -16
  209. data/lib/ionoscloud/api/kubernetes_api.rb +33 -96
  210. data/lib/ionoscloud/api/{label_api.rb → labels_api.rb} +269 -287
  211. data/lib/ionoscloud/api/{lan_api.rb → lans_api.rb} +105 -105
  212. data/lib/ionoscloud/api/{load_balancer_api.rb → load_balancers_api.rb} +153 -135
  213. data/lib/ionoscloud/api/{location_api.rb → locations_api.rb} +20 -20
  214. data/lib/ionoscloud/api/nat_gateways_api.rb +1690 -0
  215. data/lib/ionoscloud/api/network_interfaces_api.rb +604 -0
  216. data/lib/ionoscloud/api/network_load_balancers_api.rb +1708 -0
  217. data/lib/ionoscloud/api/{private_cross_connect_api.rb → private_cross_connects_api.rb} +61 -43
  218. data/lib/ionoscloud/api/{request_api.rb → requests_api.rb} +56 -32
  219. data/lib/ionoscloud/api/{server_api.rb → servers_api.rb} +535 -191
  220. data/lib/ionoscloud/api/{snapshot_api.rb → snapshots_api.rb} +46 -46
  221. data/lib/ionoscloud/api/templates_api.rb +164 -0
  222. data/lib/ionoscloud/api/user_management_api.rb +29 -524
  223. data/lib/ionoscloud/api/user_s3_keys_api.rb +517 -0
  224. data/lib/ionoscloud/api/{volume_api.rb → volumes_api.rb} +80 -80
  225. data/lib/ionoscloud/api_client.rb +19 -23
  226. data/lib/ionoscloud/api_error.rb +1 -1
  227. data/lib/ionoscloud/configuration.rb +5 -5
  228. data/lib/ionoscloud/models/attached_volumes.rb +1 -1
  229. data/lib/ionoscloud/models/backup_unit.rb +1 -1
  230. data/lib/ionoscloud/models/backup_unit_properties.rb +1 -1
  231. data/lib/ionoscloud/models/backup_unit_sso.rb +1 -1
  232. data/lib/ionoscloud/models/backup_units.rb +3 -3
  233. data/lib/ionoscloud/models/balanced_nics.rb +1 -1
  234. data/lib/ionoscloud/models/cdroms.rb +1 -1
  235. data/lib/ionoscloud/models/connectable_datacenter.rb +1 -1
  236. data/lib/ionoscloud/models/contract.rb +1 -1
  237. data/lib/ionoscloud/models/contract_properties.rb +1 -1
  238. data/lib/ionoscloud/models/contracts.rb +249 -0
  239. data/lib/ionoscloud/models/cpu_architecture_properties.rb +247 -0
  240. data/lib/ionoscloud/models/data_center_entities.rb +23 -5
  241. data/lib/ionoscloud/models/datacenter.rb +1 -1
  242. data/lib/ionoscloud/models/datacenter_element_metadata.rb +1 -1
  243. data/lib/ionoscloud/models/datacenter_properties.rb +16 -26
  244. data/lib/ionoscloud/models/datacenters.rb +1 -1
  245. data/lib/ionoscloud/models/error.rb +1 -1
  246. data/lib/ionoscloud/models/error_message.rb +1 -1
  247. data/lib/ionoscloud/models/firewall_rule.rb +1 -1
  248. data/lib/ionoscloud/models/firewall_rules.rb +1 -1
  249. data/lib/ionoscloud/models/firewallrule_properties.rb +63 -26
  250. data/lib/ionoscloud/models/flow_log.rb +260 -0
  251. data/lib/ionoscloud/models/flow_log_properties.rb +313 -0
  252. data/lib/ionoscloud/models/flow_log_put.rb +251 -0
  253. data/lib/ionoscloud/models/flow_logs.rb +278 -0
  254. data/lib/ionoscloud/models/group.rb +1 -1
  255. data/lib/ionoscloud/models/group_entities.rb +1 -1
  256. data/lib/ionoscloud/models/group_members.rb +1 -1
  257. data/lib/ionoscloud/models/group_properties.rb +35 -5
  258. data/lib/ionoscloud/models/group_share.rb +1 -1
  259. data/lib/ionoscloud/models/group_share_properties.rb +1 -1
  260. data/lib/ionoscloud/models/group_shares.rb +1 -1
  261. data/lib/ionoscloud/models/group_users.rb +1 -1
  262. data/lib/ionoscloud/models/groups.rb +1 -1
  263. data/lib/ionoscloud/models/image.rb +1 -1
  264. data/lib/ionoscloud/models/image_properties.rb +39 -5
  265. data/lib/ionoscloud/models/images.rb +1 -1
  266. data/lib/ionoscloud/models/info.rb +1 -1
  267. data/lib/ionoscloud/models/ip_block.rb +1 -1
  268. data/lib/ionoscloud/models/ip_block_properties.rb +1 -1
  269. data/lib/ionoscloud/models/ip_blocks.rb +1 -1
  270. data/lib/ionoscloud/models/ip_consumer.rb +23 -5
  271. data/lib/ionoscloud/models/ip_failover.rb +1 -1
  272. data/lib/ionoscloud/models/kubernetes_auto_scaling.rb +11 -1
  273. data/lib/ionoscloud/models/kubernetes_cluster.rb +1 -1
  274. data/lib/ionoscloud/models/kubernetes_cluster_entities.rb +1 -1
  275. data/lib/ionoscloud/models/kubernetes_cluster_for_post.rb +303 -0
  276. data/lib/ionoscloud/models/kubernetes_cluster_for_put.rb +303 -0
  277. data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +27 -5
  278. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +263 -0
  279. data/lib/ionoscloud/models/{kubernetes_cluster_properties_for_post_and_put.rb → kubernetes_cluster_properties_for_put.rb} +5 -5
  280. data/lib/ionoscloud/models/kubernetes_clusters.rb +2 -2
  281. data/lib/ionoscloud/models/kubernetes_maintenance_window.rb +11 -1
  282. data/lib/ionoscloud/models/kubernetes_node.rb +3 -3
  283. data/lib/ionoscloud/models/kubernetes_node_metadata.rb +1 -1
  284. data/lib/ionoscloud/models/kubernetes_node_pool.rb +1 -1
  285. data/lib/ionoscloud/models/{kubernetes_config.rb → kubernetes_node_pool_for_post.rb} +17 -8
  286. data/lib/ionoscloud/models/kubernetes_node_pool_for_put.rb +1 -1
  287. data/lib/ionoscloud/models/kubernetes_node_pool_lan.rb +27 -5
  288. data/lib/ionoscloud/models/kubernetes_node_pool_lan_routes.rb +227 -0
  289. data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +2 -2
  290. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +2 -2
  291. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_put.rb +2 -153
  292. data/lib/ionoscloud/models/kubernetes_node_pools.rb +2 -2
  293. data/lib/ionoscloud/models/kubernetes_node_properties.rb +12 -7
  294. data/lib/ionoscloud/models/kubernetes_nodes.rb +3 -3
  295. data/lib/ionoscloud/models/label.rb +1 -1
  296. data/lib/ionoscloud/models/label_properties.rb +1 -1
  297. data/lib/ionoscloud/models/label_resource.rb +1 -1
  298. data/lib/ionoscloud/models/label_resource_properties.rb +1 -1
  299. data/lib/ionoscloud/models/label_resources.rb +3 -3
  300. data/lib/ionoscloud/models/labels.rb +3 -3
  301. data/lib/ionoscloud/models/lan.rb +1 -1
  302. data/lib/ionoscloud/models/lan_entities.rb +1 -1
  303. data/lib/ionoscloud/models/lan_nics.rb +1 -1
  304. data/lib/ionoscloud/models/lan_post.rb +1 -1
  305. data/lib/ionoscloud/models/lan_properties.rb +1 -1
  306. data/lib/ionoscloud/models/lan_properties_post.rb +1 -1
  307. data/lib/ionoscloud/models/lans.rb +2 -2
  308. data/lib/ionoscloud/models/loadbalancer.rb +1 -1
  309. data/lib/ionoscloud/models/loadbalancer_entities.rb +1 -1
  310. data/lib/ionoscloud/models/loadbalancer_properties.rb +13 -30
  311. data/lib/ionoscloud/models/loadbalancers.rb +1 -1
  312. data/lib/ionoscloud/models/location.rb +1 -1
  313. data/lib/ionoscloud/models/location_properties.rb +16 -26
  314. data/lib/ionoscloud/models/locations.rb +1 -1
  315. data/lib/ionoscloud/models/nat_gateway.rb +269 -0
  316. data/lib/ionoscloud/models/nat_gateway_entities.rb +225 -0
  317. data/lib/ionoscloud/models/nat_gateway_lan_properties.rb +234 -0
  318. data/lib/ionoscloud/models/nat_gateway_properties.rb +251 -0
  319. data/lib/ionoscloud/models/nat_gateway_put.rb +251 -0
  320. data/lib/ionoscloud/models/nat_gateway_rule.rb +260 -0
  321. data/lib/ionoscloud/models/nat_gateway_rule_properties.rb +291 -0
  322. data/lib/ionoscloud/models/nat_gateway_rule_protocol.rb +39 -0
  323. data/lib/ionoscloud/models/nat_gateway_rule_put.rb +251 -0
  324. data/lib/ionoscloud/models/nat_gateway_rule_type.rb +36 -0
  325. data/lib/ionoscloud/models/nat_gateway_rules.rb +249 -0
  326. data/lib/ionoscloud/models/nat_gateways.rb +278 -0
  327. data/lib/ionoscloud/models/network_load_balancer.rb +269 -0
  328. data/lib/ionoscloud/models/network_load_balancer_entities.rb +225 -0
  329. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule.rb +260 -0
  330. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_health_check.rb +257 -0
  331. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_properties.rb +354 -0
  332. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_put.rb +251 -0
  333. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target.rb +261 -0
  334. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target_health_check.rb +237 -0
  335. data/lib/ionoscloud/models/network_load_balancer_forwarding_rules.rb +278 -0
  336. data/lib/ionoscloud/models/network_load_balancer_properties.rb +276 -0
  337. data/lib/ionoscloud/models/network_load_balancer_put.rb +251 -0
  338. data/lib/ionoscloud/models/network_load_balancers.rb +278 -0
  339. data/lib/ionoscloud/models/nic.rb +1 -1
  340. data/lib/ionoscloud/models/nic_entities.rb +11 -2
  341. data/lib/ionoscloud/models/nic_properties.rb +63 -9
  342. data/lib/ionoscloud/models/nic_put.rb +251 -0
  343. data/lib/ionoscloud/models/nics.rb +1 -1
  344. data/lib/ionoscloud/models/no_state_meta_data.rb +1 -1
  345. data/lib/ionoscloud/models/pagination_links.rb +1 -1
  346. data/lib/ionoscloud/models/peer.rb +1 -1
  347. data/lib/ionoscloud/models/private_cross_connect.rb +1 -1
  348. data/lib/ionoscloud/models/private_cross_connect_properties.rb +1 -1
  349. data/lib/ionoscloud/models/private_cross_connects.rb +1 -1
  350. data/lib/ionoscloud/models/{kubernetes_config_properties.rb → remote_console_url.rb} +12 -12
  351. data/lib/ionoscloud/models/request.rb +1 -1
  352. data/lib/ionoscloud/models/request_metadata.rb +1 -1
  353. data/lib/ionoscloud/models/request_properties.rb +1 -1
  354. data/lib/ionoscloud/models/request_status.rb +1 -1
  355. data/lib/ionoscloud/models/request_status_metadata.rb +1 -1
  356. data/lib/ionoscloud/models/request_target.rb +1 -1
  357. data/lib/ionoscloud/models/requests.rb +1 -1
  358. data/lib/ionoscloud/models/resource.rb +1 -1
  359. data/lib/ionoscloud/models/resource_entities.rb +1 -1
  360. data/lib/ionoscloud/models/resource_groups.rb +1 -1
  361. data/lib/ionoscloud/models/resource_limits.rb +80 -5
  362. data/lib/ionoscloud/models/resource_properties.rb +1 -1
  363. data/lib/ionoscloud/models/resource_reference.rb +1 -1
  364. data/lib/ionoscloud/models/resources.rb +1 -1
  365. data/lib/ionoscloud/models/resources_users.rb +1 -1
  366. data/lib/ionoscloud/models/s3_key.rb +1 -1
  367. data/lib/ionoscloud/models/s3_key_metadata.rb +1 -1
  368. data/lib/ionoscloud/models/s3_key_properties.rb +3 -3
  369. data/lib/ionoscloud/models/s3_keys.rb +1 -1
  370. data/lib/ionoscloud/models/s3_object_storage_sso.rb +1 -1
  371. data/lib/ionoscloud/models/server.rb +1 -1
  372. data/lib/ionoscloud/models/server_entities.rb +1 -1
  373. data/lib/ionoscloud/models/server_properties.rb +28 -8
  374. data/lib/ionoscloud/models/servers.rb +1 -1
  375. data/lib/ionoscloud/models/snapshot.rb +1 -1
  376. data/lib/ionoscloud/models/snapshot_properties.rb +1 -1
  377. data/lib/ionoscloud/models/snapshots.rb +1 -1
  378. data/lib/ionoscloud/models/target_port_range.rb +227 -0
  379. data/lib/ionoscloud/models/template.rb +260 -0
  380. data/lib/ionoscloud/models/template_properties.rb +267 -0
  381. data/lib/ionoscloud/models/templates.rb +249 -0
  382. data/lib/ionoscloud/models/token.rb +217 -0
  383. data/lib/ionoscloud/models/type.rb +10 -1
  384. data/lib/ionoscloud/models/user.rb +1 -1
  385. data/lib/ionoscloud/models/user_metadata.rb +1 -1
  386. data/lib/ionoscloud/models/user_post.rb +221 -0
  387. data/lib/ionoscloud/models/user_properties.rb +2 -12
  388. data/lib/ionoscloud/models/user_properties_post.rb +287 -0
  389. data/lib/ionoscloud/models/user_properties_put.rb +277 -0
  390. data/lib/ionoscloud/models/user_put.rb +231 -0
  391. data/lib/ionoscloud/models/users.rb +1 -1
  392. data/lib/ionoscloud/models/users_entities.rb +1 -1
  393. data/lib/ionoscloud/models/volume.rb +1 -1
  394. data/lib/ionoscloud/models/volume_properties.rb +31 -20
  395. data/lib/ionoscloud/models/volumes.rb +1 -1
  396. data/lib/ionoscloud/version.rb +2 -2
  397. data/spec/api/_api_spec.rb +1 -1
  398. data/spec/api/{backup_unit_api_spec.rb → backup_units_api_spec.rb} +14 -14
  399. data/spec/api/{contract_api_spec.rb → contract_resources_api_spec.rb} +9 -9
  400. data/spec/api/{data_center_api_spec.rb → data_centers_api_spec.rb} +10 -10
  401. data/spec/api/firewall_rules_api_spec.rb +146 -0
  402. data/spec/api/flow_logs_api_spec.rb +140 -0
  403. data/spec/api/{image_api_spec.rb → images_api_spec.rb} +9 -9
  404. data/spec/api/ip_blocks_api_spec.rb +7 -7
  405. data/spec/api/kubernetes_api_spec.rb +10 -22
  406. data/spec/api/{label_api_spec.rb → labels_api_spec.rb} +21 -23
  407. data/spec/api/{lan_api_spec.rb → lans_api_spec.rb} +21 -21
  408. data/spec/api/{load_balancer_api_spec.rb → load_balancers_api_spec.rb} +27 -25
  409. data/spec/api/{location_api_spec.rb → locations_api_spec.rb} +7 -7
  410. data/spec/api/{nic_api_spec.rb → nat_gateways_api_spec.rb} +188 -103
  411. data/spec/api/network_interfaces_api_spec.rb +140 -0
  412. data/spec/api/network_load_balancers_api_spec.rb +342 -0
  413. data/spec/api/{private_cross_connect_api_spec.rb → private_cross_connects_api_spec.rb} +13 -11
  414. data/spec/api/{request_api_spec.rb → requests_api_spec.rb} +20 -12
  415. data/spec/api/{server_api_spec.rb → servers_api_spec.rb} +84 -20
  416. data/spec/api/{snapshot_api_spec.rb → snapshots_api_spec.rb} +12 -12
  417. data/spec/api/templates_api_spec.rb +60 -0
  418. data/spec/api/user_management_api_spec.rb +7 -100
  419. data/spec/api/user_s3_keys_api_spec.rb +128 -0
  420. data/spec/api/{volume_api_spec.rb → volumes_api_spec.rb} +13 -13
  421. data/spec/api_client_spec.rb +1 -1
  422. data/spec/configuration_spec.rb +4 -4
  423. data/spec/models/attached_volumes_spec.rb +1 -1
  424. data/spec/models/backup_unit_properties_spec.rb +1 -1
  425. data/spec/models/backup_unit_spec.rb +1 -1
  426. data/spec/models/backup_unit_sso_spec.rb +1 -1
  427. data/spec/models/backup_units_spec.rb +2 -2
  428. data/spec/models/balanced_nics_spec.rb +1 -1
  429. data/spec/models/cdroms_spec.rb +1 -1
  430. data/spec/models/connectable_datacenter_spec.rb +1 -1
  431. data/spec/models/contract_properties_spec.rb +1 -1
  432. data/spec/models/contract_spec.rb +1 -1
  433. data/spec/models/contracts_spec.rb +52 -0
  434. data/spec/models/cpu_architecture_properties_spec.rb +52 -0
  435. data/spec/models/data_center_entities_spec.rb +13 -1
  436. data/spec/models/datacenter_element_metadata_spec.rb +1 -1
  437. data/spec/models/datacenter_properties_spec.rb +7 -5
  438. data/spec/models/datacenter_spec.rb +1 -1
  439. data/spec/models/datacenters_spec.rb +1 -1
  440. data/spec/models/error_message_spec.rb +1 -1
  441. data/spec/models/error_spec.rb +1 -1
  442. data/spec/models/firewall_rule_spec.rb +1 -1
  443. data/spec/models/firewall_rules_spec.rb +1 -1
  444. data/spec/models/firewallrule_properties_spec.rb +11 -13
  445. data/spec/models/flow_log_properties_spec.rb +60 -0
  446. data/spec/models/flow_log_put_spec.rb +52 -0
  447. data/spec/models/flow_log_spec.rb +58 -0
  448. data/spec/models/flow_logs_spec.rb +70 -0
  449. data/spec/models/group_entities_spec.rb +1 -1
  450. data/spec/models/group_members_spec.rb +1 -1
  451. data/spec/models/group_properties_spec.rb +19 -1
  452. data/spec/models/group_share_properties_spec.rb +1 -1
  453. data/spec/models/group_share_spec.rb +1 -1
  454. data/spec/models/group_shares_spec.rb +1 -1
  455. data/spec/models/group_spec.rb +1 -1
  456. data/spec/models/group_users_spec.rb +1 -1
  457. data/spec/models/groups_spec.rb +1 -1
  458. data/spec/models/image_properties_spec.rb +17 -1
  459. data/spec/models/image_spec.rb +1 -1
  460. data/spec/models/images_spec.rb +1 -1
  461. data/spec/models/info_spec.rb +1 -1
  462. data/spec/models/ip_block_properties_spec.rb +1 -1
  463. data/spec/models/ip_block_spec.rb +1 -1
  464. data/spec/models/ip_blocks_spec.rb +1 -1
  465. data/spec/models/ip_consumer_spec.rb +13 -1
  466. data/spec/models/ip_failover_spec.rb +1 -1
  467. data/spec/models/kubernetes_auto_scaling_spec.rb +1 -1
  468. data/spec/models/kubernetes_cluster_entities_spec.rb +1 -1
  469. data/spec/models/kubernetes_cluster_for_post_spec.rb +68 -0
  470. data/spec/models/kubernetes_cluster_for_put_spec.rb +68 -0
  471. data/spec/models/kubernetes_cluster_properties_for_post_spec.rb +58 -0
  472. data/spec/models/{kubernetes_cluster_properties_for_post_and_put_spec.rb → kubernetes_cluster_properties_for_put_spec.rb} +7 -7
  473. data/spec/models/kubernetes_cluster_properties_spec.rb +13 -1
  474. data/spec/models/kubernetes_cluster_spec.rb +1 -1
  475. data/spec/models/kubernetes_clusters_spec.rb +1 -1
  476. data/spec/models/kubernetes_maintenance_window_spec.rb +1 -1
  477. data/spec/models/kubernetes_node_metadata_spec.rb +1 -1
  478. data/spec/models/{kubernetes_config_spec.rb → kubernetes_node_pool_for_post_spec.rb} +14 -8
  479. data/spec/models/kubernetes_node_pool_for_put_spec.rb +1 -1
  480. data/spec/models/kubernetes_node_pool_lan_routes_spec.rb +40 -0
  481. data/spec/models/kubernetes_node_pool_lan_spec.rb +13 -1
  482. data/spec/models/kubernetes_node_pool_properties_for_post_spec.rb +1 -1
  483. data/spec/models/kubernetes_node_pool_properties_for_put_spec.rb +1 -51
  484. data/spec/models/kubernetes_node_pool_properties_spec.rb +1 -1
  485. data/spec/models/kubernetes_node_pool_spec.rb +1 -1
  486. data/spec/models/kubernetes_node_pools_spec.rb +1 -1
  487. data/spec/models/kubernetes_node_properties_spec.rb +7 -1
  488. data/spec/models/kubernetes_node_spec.rb +2 -2
  489. data/spec/models/kubernetes_nodes_spec.rb +2 -2
  490. data/spec/models/label_properties_spec.rb +1 -1
  491. data/spec/models/label_resource_properties_spec.rb +1 -1
  492. data/spec/models/label_resource_spec.rb +1 -1
  493. data/spec/models/label_resources_spec.rb +2 -2
  494. data/spec/models/label_spec.rb +1 -1
  495. data/spec/models/labels_spec.rb +2 -2
  496. data/spec/models/lan_entities_spec.rb +1 -1
  497. data/spec/models/lan_nics_spec.rb +1 -1
  498. data/spec/models/lan_post_spec.rb +1 -1
  499. data/spec/models/lan_properties_post_spec.rb +1 -1
  500. data/spec/models/lan_properties_spec.rb +1 -1
  501. data/spec/models/lan_spec.rb +1 -1
  502. data/spec/models/lans_spec.rb +1 -1
  503. data/spec/models/loadbalancer_entities_spec.rb +1 -1
  504. data/spec/models/loadbalancer_properties_spec.rb +1 -5
  505. data/spec/models/loadbalancer_spec.rb +1 -1
  506. data/spec/models/loadbalancers_spec.rb +1 -1
  507. data/spec/models/location_properties_spec.rb +7 -5
  508. data/spec/models/location_spec.rb +1 -1
  509. data/spec/models/locations_spec.rb +1 -1
  510. data/spec/models/nat_gateway_entities_spec.rb +40 -0
  511. data/spec/models/nat_gateway_lan_properties_spec.rb +40 -0
  512. data/spec/models/nat_gateway_properties_spec.rb +46 -0
  513. data/spec/models/nat_gateway_put_spec.rb +52 -0
  514. data/spec/models/nat_gateway_rule_properties_spec.rb +70 -0
  515. data/spec/models/nat_gateway_rule_protocol_spec.rb +28 -0
  516. data/spec/models/nat_gateway_rule_put_spec.rb +52 -0
  517. data/spec/models/nat_gateway_rule_spec.rb +58 -0
  518. data/spec/models/nat_gateway_rule_type_spec.rb +28 -0
  519. data/spec/models/nat_gateway_rules_spec.rb +52 -0
  520. data/spec/models/nat_gateway_spec.rb +64 -0
  521. data/spec/models/nat_gateways_spec.rb +70 -0
  522. data/spec/models/network_load_balancer_entities_spec.rb +40 -0
  523. data/spec/models/network_load_balancer_forwarding_rule_health_check_spec.rb +58 -0
  524. data/spec/models/network_load_balancer_forwarding_rule_properties_spec.rb +78 -0
  525. data/spec/models/network_load_balancer_forwarding_rule_put_spec.rb +52 -0
  526. data/spec/models/network_load_balancer_forwarding_rule_spec.rb +58 -0
  527. data/spec/models/network_load_balancer_forwarding_rule_target_health_check_spec.rb +46 -0
  528. data/spec/models/network_load_balancer_forwarding_rule_target_spec.rb +52 -0
  529. data/spec/models/network_load_balancer_forwarding_rules_spec.rb +70 -0
  530. data/spec/models/network_load_balancer_properties_spec.rb +58 -0
  531. data/spec/models/network_load_balancer_put_spec.rb +52 -0
  532. data/spec/models/network_load_balancer_spec.rb +64 -0
  533. data/spec/models/network_load_balancers_spec.rb +70 -0
  534. data/spec/models/nic_entities_spec.rb +7 -1
  535. data/spec/models/nic_properties_spec.rb +18 -2
  536. data/spec/models/nic_put_spec.rb +52 -0
  537. data/spec/models/nic_spec.rb +1 -1
  538. data/spec/models/nics_spec.rb +1 -1
  539. data/spec/models/no_state_meta_data_spec.rb +1 -1
  540. data/spec/models/pagination_links_spec.rb +1 -1
  541. data/spec/models/peer_spec.rb +1 -1
  542. data/spec/models/private_cross_connect_properties_spec.rb +1 -1
  543. data/spec/models/private_cross_connect_spec.rb +1 -1
  544. data/spec/models/private_cross_connects_spec.rb +1 -1
  545. data/spec/models/{kubernetes_config_properties_spec.rb → remote_console_url_spec.rb} +8 -8
  546. data/spec/models/request_metadata_spec.rb +1 -1
  547. data/spec/models/request_properties_spec.rb +1 -1
  548. data/spec/models/request_spec.rb +1 -1
  549. data/spec/models/request_status_metadata_spec.rb +1 -1
  550. data/spec/models/request_status_spec.rb +1 -1
  551. data/spec/models/request_target_spec.rb +1 -1
  552. data/spec/models/requests_spec.rb +1 -1
  553. data/spec/models/resource_entities_spec.rb +1 -1
  554. data/spec/models/resource_groups_spec.rb +1 -1
  555. data/spec/models/resource_limits_spec.rb +31 -1
  556. data/spec/models/resource_properties_spec.rb +1 -1
  557. data/spec/models/resource_reference_spec.rb +1 -1
  558. data/spec/models/resource_spec.rb +1 -1
  559. data/spec/models/resources_spec.rb +1 -1
  560. data/spec/models/resources_users_spec.rb +1 -1
  561. data/spec/models/s3_key_metadata_spec.rb +1 -1
  562. data/spec/models/s3_key_properties_spec.rb +1 -1
  563. data/spec/models/s3_key_spec.rb +1 -1
  564. data/spec/models/s3_keys_spec.rb +1 -1
  565. data/spec/models/s3_object_storage_sso_spec.rb +1 -1
  566. data/spec/models/server_entities_spec.rb +1 -1
  567. data/spec/models/server_properties_spec.rb +14 -2
  568. data/spec/models/server_spec.rb +1 -1
  569. data/spec/models/servers_spec.rb +1 -1
  570. data/spec/models/snapshot_properties_spec.rb +1 -1
  571. data/spec/models/snapshot_spec.rb +1 -1
  572. data/spec/models/snapshots_spec.rb +1 -1
  573. data/spec/models/target_port_range_spec.rb +40 -0
  574. data/spec/models/template_properties_spec.rb +52 -0
  575. data/spec/models/template_spec.rb +58 -0
  576. data/spec/models/templates_spec.rb +52 -0
  577. data/spec/models/token_spec.rb +34 -0
  578. data/spec/models/type_spec.rb +1 -1
  579. data/spec/models/user_metadata_spec.rb +1 -1
  580. data/spec/models/user_post_spec.rb +34 -0
  581. data/spec/models/user_properties_post_spec.rb +76 -0
  582. data/spec/models/user_properties_put_spec.rb +70 -0
  583. data/spec/models/user_properties_spec.rb +1 -7
  584. data/spec/models/user_put_spec.rb +40 -0
  585. data/spec/models/user_spec.rb +1 -1
  586. data/spec/models/users_entities_spec.rb +1 -1
  587. data/spec/models/users_spec.rb +1 -1
  588. data/spec/models/volume_properties_spec.rb +14 -8
  589. data/spec/models/volume_spec.rb +1 -1
  590. data/spec/models/volumes_spec.rb +1 -1
  591. data/spec/spec_helper.rb +1 -1
  592. metadata +505 -160
  593. data/DOCS.md +0 -14618
  594. data/lib/ionoscloud/api/nic_api.rb +0 -1222
@@ -0,0 +1,28 @@
1
+ # Loadbalancer
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource's unique identifier | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path) | [optional][readonly] |
10
+ | **metadata** | [**DatacenterElementMetadata**](DatacenterElementMetadata.md) | | [optional] |
11
+ | **properties** | [**LoadbalancerProperties**](LoadbalancerProperties.md) | | |
12
+ | **entities** | [**LoadbalancerEntities**](LoadbalancerEntities.md) | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'ionoscloud'
18
+
19
+ instance = Ionoscloud::Loadbalancer.new(
20
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
21
+ type: "loadbalancer",
22
+ href: <RESOURCE-URI>,
23
+ metadata: null,
24
+ properties: null,
25
+ entities: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,18 @@
1
+ # LoadbalancerEntities
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **balancednics** | [**BalancedNics**](BalancedNics.md) | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'ionoscloud'
13
+
14
+ instance = Ionoscloud::LoadbalancerEntities.new(
15
+ balancednics: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,22 @@
1
+ # LoadbalancerProperties
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | A name of that resource | [optional] |
8
+ | **ip** | **String** | IPv4 address of the loadbalancer. All attached NICs will inherit this IP. Leaving value null will assign IP automatically | [optional] |
9
+ | **dhcp** | **Boolean** | Indicates if the loadbalancer will reserve an IP using DHCP | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'ionoscloud'
15
+
16
+ instance = Ionoscloud::LoadbalancerProperties.new(
17
+ name: My resource,
18
+ ip: 22.231.113.64,
19
+ dhcp: true
20
+ )
21
+ ```
22
+
@@ -0,0 +1,30 @@
1
+ # Loadbalancers
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path) | [optional][readonly] |
10
+ | **items** | [**Array&lt;Loadbalancer&gt;**](Loadbalancer.md) | Array of items in that collection | [optional][readonly] |
11
+ | **offset** | **Float** | the offset (if specified in the request) | [optional] |
12
+ | **limit** | **Float** | the limit (if specified in the request) | [optional] |
13
+ | **_links** | [**PaginationLinks**](PaginationLinks.md) | | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ionoscloud'
19
+
20
+ instance = Ionoscloud::Loadbalancers.new(
21
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
22
+ type: "collection",
23
+ href: <RESOURCE-URI>,
24
+ items: null,
25
+ offset: 0,
26
+ limit: 1000,
27
+ _links: null
28
+ )
29
+ ```
30
+
data/docs/Location.md ADDED
@@ -0,0 +1,26 @@
1
+ # Location
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path) | [optional][readonly] |
10
+ | **metadata** | [**DatacenterElementMetadata**](DatacenterElementMetadata.md) | | [optional] |
11
+ | **properties** | [**LocationProperties**](LocationProperties.md) | | |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'ionoscloud'
17
+
18
+ instance = Ionoscloud::Location.new(
19
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
20
+ type: "location",
21
+ href: <RESOURCE-URI>,
22
+ metadata: null,
23
+ properties: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,24 @@
1
+ # LocationProperties
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | A name of that resource | [optional] |
8
+ | **features** | **Array&lt;String&gt;** | List of features supported by the location | [optional][readonly] |
9
+ | **image_aliases** | **Array&lt;String&gt;** | List of image aliases available for the location | [optional][readonly] |
10
+ | **cpu_architecture** | [**Array&lt;CpuArchitectureProperties&gt;**](CpuArchitectureProperties.md) | Array of features and CPU families available in a location | [optional][readonly] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ionoscloud'
16
+
17
+ instance = Ionoscloud::LocationProperties.new(
18
+ name: My resource,
19
+ features: [SSD],
20
+ image_aliases: null,
21
+ cpu_architecture: null
22
+ )
23
+ ```
24
+
data/docs/Locations.md ADDED
@@ -0,0 +1,24 @@
1
+ # Locations
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path) | [optional][readonly] |
10
+ | **items** | [**Array&lt;Location&gt;**](Location.md) | Array of items in that collection | [optional][readonly] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ionoscloud'
16
+
17
+ instance = Ionoscloud::Locations.new(
18
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
19
+ type: "collection",
20
+ href: <RESOURCE-URI>,
21
+ items: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,259 @@
1
+ # LocationsApi
2
+
3
+ All URIs are relative to *https://api.ionos.com/cloudapi/v6*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**locations_find_by_region_id**](LocationsApi.md#locations_find_by_region_id) | **GET** /locations/{regionId} | List Locations within a region |
8
+ | [**locations_find_by_region_id_and_id**](LocationsApi.md#locations_find_by_region_id_and_id) | **GET** /locations/{regionId}/{locationId} | Retrieve a Location |
9
+ | [**locations_get**](LocationsApi.md#locations_get) | **GET** /locations | List Locations |
10
+
11
+
12
+ ## locations_find_by_region_id
13
+
14
+ > <Locations> locations_find_by_region_id(region_id, opts)
15
+
16
+ List Locations within a region
17
+
18
+ Retrieve a list of Locations within a world's region
19
+
20
+ ### Examples
21
+
22
+ ```ruby
23
+ require 'time'
24
+ require 'ionoscloud'
25
+ # setup authorization
26
+ Ionoscloud.configure do |config|
27
+ # Configure HTTP basic authorization: Basic Authentication
28
+ config.username = 'YOUR USERNAME'
29
+ config.password = 'YOUR PASSWORD'
30
+
31
+ # Configure API key authorization: Token Authentication
32
+ config.api_key['Authorization'] = 'YOUR API KEY'
33
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
34
+ # config.api_key_prefix['Authorization'] = 'Bearer'
35
+ end
36
+
37
+ api_instance = Ionoscloud::LocationsApi.new
38
+ region_id = 'region_id_example' # String |
39
+ opts = {
40
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
41
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
42
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
43
+ }
44
+
45
+ begin
46
+ # List Locations within a region
47
+ result = api_instance.locations_find_by_region_id(region_id, opts)
48
+ p result
49
+ rescue Ionoscloud::ApiError => e
50
+ puts "Error when calling LocationsApi->locations_find_by_region_id: #{e}"
51
+ end
52
+ ```
53
+
54
+ #### Using the locations_find_by_region_id_with_http_info variant
55
+
56
+ This returns an Array which contains the response data, status code and headers.
57
+
58
+ > <Array(<Locations>, Integer, Hash)> locations_find_by_region_id_with_http_info(region_id, opts)
59
+
60
+ ```ruby
61
+ begin
62
+ # List Locations within a region
63
+ data, status_code, headers = api_instance.locations_find_by_region_id_with_http_info(region_id, opts)
64
+ p status_code # => 2xx
65
+ p headers # => { ... }
66
+ p data # => <Locations>
67
+ rescue Ionoscloud::ApiError => e
68
+ puts "Error when calling LocationsApi->locations_find_by_region_id_with_http_info: #{e}"
69
+ end
70
+ ```
71
+
72
+ ### Parameters
73
+
74
+ | Name | Type | Description | Notes |
75
+ | ---- | ---- | ----------- | ----- |
76
+ | **region_id** | **String** | | |
77
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
78
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
79
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
80
+
81
+ ### Return type
82
+
83
+ [**Locations**](Locations.md)
84
+
85
+ ### Authorization
86
+
87
+ Basic Authentication, Token Authentication
88
+
89
+ ### HTTP request headers
90
+
91
+ - **Content-Type**: Not defined
92
+ - **Accept**: application/json
93
+
94
+
95
+ ## locations_find_by_region_id_and_id
96
+
97
+ > <Location> locations_find_by_region_id_and_id(region_id, location_id, opts)
98
+
99
+ Retrieve a Location
100
+
101
+ Retrieves the attributes of a given location
102
+
103
+ ### Examples
104
+
105
+ ```ruby
106
+ require 'time'
107
+ require 'ionoscloud'
108
+ # setup authorization
109
+ Ionoscloud.configure do |config|
110
+ # Configure HTTP basic authorization: Basic Authentication
111
+ config.username = 'YOUR USERNAME'
112
+ config.password = 'YOUR PASSWORD'
113
+
114
+ # Configure API key authorization: Token Authentication
115
+ config.api_key['Authorization'] = 'YOUR API KEY'
116
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
117
+ # config.api_key_prefix['Authorization'] = 'Bearer'
118
+ end
119
+
120
+ api_instance = Ionoscloud::LocationsApi.new
121
+ region_id = 'region_id_example' # String |
122
+ location_id = 'location_id_example' # String |
123
+ opts = {
124
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
125
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
126
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
127
+ }
128
+
129
+ begin
130
+ # Retrieve a Location
131
+ result = api_instance.locations_find_by_region_id_and_id(region_id, location_id, opts)
132
+ p result
133
+ rescue Ionoscloud::ApiError => e
134
+ puts "Error when calling LocationsApi->locations_find_by_region_id_and_id: #{e}"
135
+ end
136
+ ```
137
+
138
+ #### Using the locations_find_by_region_id_and_id_with_http_info variant
139
+
140
+ This returns an Array which contains the response data, status code and headers.
141
+
142
+ > <Array(<Location>, Integer, Hash)> locations_find_by_region_id_and_id_with_http_info(region_id, location_id, opts)
143
+
144
+ ```ruby
145
+ begin
146
+ # Retrieve a Location
147
+ data, status_code, headers = api_instance.locations_find_by_region_id_and_id_with_http_info(region_id, location_id, opts)
148
+ p status_code # => 2xx
149
+ p headers # => { ... }
150
+ p data # => <Location>
151
+ rescue Ionoscloud::ApiError => e
152
+ puts "Error when calling LocationsApi->locations_find_by_region_id_and_id_with_http_info: #{e}"
153
+ end
154
+ ```
155
+
156
+ ### Parameters
157
+
158
+ | Name | Type | Description | Notes |
159
+ | ---- | ---- | ----------- | ----- |
160
+ | **region_id** | **String** | | |
161
+ | **location_id** | **String** | | |
162
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
163
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
164
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
165
+
166
+ ### Return type
167
+
168
+ [**Location**](Location.md)
169
+
170
+ ### Authorization
171
+
172
+ Basic Authentication, Token Authentication
173
+
174
+ ### HTTP request headers
175
+
176
+ - **Content-Type**: Not defined
177
+ - **Accept**: application/json
178
+
179
+
180
+ ## locations_get
181
+
182
+ > <Locations> locations_get(opts)
183
+
184
+ List Locations
185
+
186
+ Retrieve a list of Locations. This list represents where you can provision your virtual data centers
187
+
188
+ ### Examples
189
+
190
+ ```ruby
191
+ require 'time'
192
+ require 'ionoscloud'
193
+ # setup authorization
194
+ Ionoscloud.configure do |config|
195
+ # Configure HTTP basic authorization: Basic Authentication
196
+ config.username = 'YOUR USERNAME'
197
+ config.password = 'YOUR PASSWORD'
198
+
199
+ # Configure API key authorization: Token Authentication
200
+ config.api_key['Authorization'] = 'YOUR API KEY'
201
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
202
+ # config.api_key_prefix['Authorization'] = 'Bearer'
203
+ end
204
+
205
+ api_instance = Ionoscloud::LocationsApi.new
206
+ opts = {
207
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
208
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
209
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
210
+ }
211
+
212
+ begin
213
+ # List Locations
214
+ result = api_instance.locations_get(opts)
215
+ p result
216
+ rescue Ionoscloud::ApiError => e
217
+ puts "Error when calling LocationsApi->locations_get: #{e}"
218
+ end
219
+ ```
220
+
221
+ #### Using the locations_get_with_http_info variant
222
+
223
+ This returns an Array which contains the response data, status code and headers.
224
+
225
+ > <Array(<Locations>, Integer, Hash)> locations_get_with_http_info(opts)
226
+
227
+ ```ruby
228
+ begin
229
+ # List Locations
230
+ data, status_code, headers = api_instance.locations_get_with_http_info(opts)
231
+ p status_code # => 2xx
232
+ p headers # => { ... }
233
+ p data # => <Locations>
234
+ rescue Ionoscloud::ApiError => e
235
+ puts "Error when calling LocationsApi->locations_get_with_http_info: #{e}"
236
+ end
237
+ ```
238
+
239
+ ### Parameters
240
+
241
+ | Name | Type | Description | Notes |
242
+ | ---- | ---- | ----------- | ----- |
243
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
244
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
245
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
246
+
247
+ ### Return type
248
+
249
+ [**Locations**](Locations.md)
250
+
251
+ ### Authorization
252
+
253
+ Basic Authentication, Token Authentication
254
+
255
+ ### HTTP request headers
256
+
257
+ - **Content-Type**: Not defined
258
+ - **Accept**: application/json
259
+
@@ -0,0 +1,1578 @@
1
+ # NATGatewaysApi
2
+
3
+ All URIs are relative to *https://api.ionos.com/cloudapi/v6*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**datacenters_natgateways_delete**](NATGatewaysApi.md#datacenters_natgateways_delete) | **DELETE** /datacenters/{datacenterId}/natgateways/{natGatewayId} | Remove a NAT gateway |
8
+ | [**datacenters_natgateways_find_by_nat_gateway_id**](NATGatewaysApi.md#datacenters_natgateways_find_by_nat_gateway_id) | **GET** /datacenters/{datacenterId}/natgateways/{natGatewayId} | Retrieve a NAT gateway |
9
+ | [**datacenters_natgateways_flowlogs_delete**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_delete) | **DELETE** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs/{flowLogId} | Remove Flow Log from NAT Gateway |
10
+ | [**datacenters_natgateways_flowlogs_find_by_flow_log_id**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_find_by_flow_log_id) | **GET** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs/{flowLogId} | Retrieve a Flow Log of the NAT Gateway |
11
+ | [**datacenters_natgateways_flowlogs_get**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_get) | **GET** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs | List NAT Gateway Flow Logs |
12
+ | [**datacenters_natgateways_flowlogs_patch**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_patch) | **PATCH** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs/{flowLogId} | Partially modify a Flow Log of the NAT Gateway |
13
+ | [**datacenters_natgateways_flowlogs_post**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_post) | **POST** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs | Add a NAT Gateways Flow Log |
14
+ | [**datacenters_natgateways_flowlogs_put**](NATGatewaysApi.md#datacenters_natgateways_flowlogs_put) | **PUT** /datacenters/{datacenterId}/natgateways/{natGatewayId}/flowlogs/{flowLogId} | Modify a Flow Log of the NAT Gateway |
15
+ | [**datacenters_natgateways_get**](NATGatewaysApi.md#datacenters_natgateways_get) | **GET** /datacenters/{datacenterId}/natgateways | List NAT Gateways |
16
+ | [**datacenters_natgateways_patch**](NATGatewaysApi.md#datacenters_natgateways_patch) | **PATCH** /datacenters/{datacenterId}/natgateways/{natGatewayId} | Partially update a NAT gateway |
17
+ | [**datacenters_natgateways_post**](NATGatewaysApi.md#datacenters_natgateways_post) | **POST** /datacenters/{datacenterId}/natgateways | Create a NAT Gateway |
18
+ | [**datacenters_natgateways_put**](NATGatewaysApi.md#datacenters_natgateways_put) | **PUT** /datacenters/{datacenterId}/natgateways/{natGatewayId} | Update a NAT gateway |
19
+ | [**datacenters_natgateways_rules_delete**](NATGatewaysApi.md#datacenters_natgateways_rules_delete) | **DELETE** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules/{natGatewayRuleId} | Remove rule from NAT Gateway |
20
+ | [**datacenters_natgateways_rules_find_by_nat_gateway_rule_id**](NATGatewaysApi.md#datacenters_natgateways_rules_find_by_nat_gateway_rule_id) | **GET** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules/{natGatewayRuleId} | Retrieve a NAT Gateway Rule |
21
+ | [**datacenters_natgateways_rules_get**](NATGatewaysApi.md#datacenters_natgateways_rules_get) | **GET** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules | List NAT Gateways Rules |
22
+ | [**datacenters_natgateways_rules_patch**](NATGatewaysApi.md#datacenters_natgateways_rules_patch) | **PATCH** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules/{natGatewayRuleId} | Partially modify a rule of the NAT gateway |
23
+ | [**datacenters_natgateways_rules_post**](NATGatewaysApi.md#datacenters_natgateways_rules_post) | **POST** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules | Create a NAT Gateway Rule |
24
+ | [**datacenters_natgateways_rules_put**](NATGatewaysApi.md#datacenters_natgateways_rules_put) | **PUT** /datacenters/{datacenterId}/natgateways/{natGatewayId}/rules/{natGatewayRuleId} | Modify a rule of the NAT gateway |
25
+
26
+
27
+ ## datacenters_natgateways_delete
28
+
29
+ > datacenters_natgateways_delete(datacenter_id, nat_gateway_id, opts)
30
+
31
+ Remove a NAT gateway
32
+
33
+ Removes the specified NAT gateway.
34
+
35
+ ### Examples
36
+
37
+ ```ruby
38
+ require 'time'
39
+ require 'ionoscloud'
40
+ # setup authorization
41
+ Ionoscloud.configure do |config|
42
+ # Configure HTTP basic authorization: Basic Authentication
43
+ config.username = 'YOUR USERNAME'
44
+ config.password = 'YOUR PASSWORD'
45
+
46
+ # Configure API key authorization: Token Authentication
47
+ config.api_key['Authorization'] = 'YOUR API KEY'
48
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
49
+ # config.api_key_prefix['Authorization'] = 'Bearer'
50
+ end
51
+
52
+ api_instance = Ionoscloud::NATGatewaysApi.new
53
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
54
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
55
+ opts = {
56
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
57
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
58
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
59
+ }
60
+
61
+ begin
62
+ # Remove a NAT gateway
63
+ api_instance.datacenters_natgateways_delete(datacenter_id, nat_gateway_id, opts)
64
+ rescue Ionoscloud::ApiError => e
65
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_delete: #{e}"
66
+ end
67
+ ```
68
+
69
+ #### Using the datacenters_natgateways_delete_with_http_info variant
70
+
71
+ This returns an Array which contains the response data (`nil` in this case), status code and headers.
72
+
73
+ > <Array(nil, Integer, Hash)> datacenters_natgateways_delete_with_http_info(datacenter_id, nat_gateway_id, opts)
74
+
75
+ ```ruby
76
+ begin
77
+ # Remove a NAT gateway
78
+ data, status_code, headers = api_instance.datacenters_natgateways_delete_with_http_info(datacenter_id, nat_gateway_id, opts)
79
+ p status_code # => 2xx
80
+ p headers # => { ... }
81
+ p data # => nil
82
+ rescue Ionoscloud::ApiError => e
83
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_delete_with_http_info: #{e}"
84
+ end
85
+ ```
86
+
87
+ ### Parameters
88
+
89
+ | Name | Type | Description | Notes |
90
+ | ---- | ---- | ----------- | ----- |
91
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
92
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
93
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
94
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
95
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
96
+
97
+ ### Return type
98
+
99
+ nil (empty response body)
100
+
101
+ ### Authorization
102
+
103
+ Basic Authentication, Token Authentication
104
+
105
+ ### HTTP request headers
106
+
107
+ - **Content-Type**: Not defined
108
+ - **Accept**: application/json
109
+
110
+
111
+ ## datacenters_natgateways_find_by_nat_gateway_id
112
+
113
+ > <NatGateway> datacenters_natgateways_find_by_nat_gateway_id(datacenter_id, nat_gateway_id, opts)
114
+
115
+ Retrieve a NAT gateway
116
+
117
+ Retrieves the attributes of a given NAT gateway.
118
+
119
+ ### Examples
120
+
121
+ ```ruby
122
+ require 'time'
123
+ require 'ionoscloud'
124
+ # setup authorization
125
+ Ionoscloud.configure do |config|
126
+ # Configure HTTP basic authorization: Basic Authentication
127
+ config.username = 'YOUR USERNAME'
128
+ config.password = 'YOUR PASSWORD'
129
+
130
+ # Configure API key authorization: Token Authentication
131
+ config.api_key['Authorization'] = 'YOUR API KEY'
132
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
133
+ # config.api_key_prefix['Authorization'] = 'Bearer'
134
+ end
135
+
136
+ api_instance = Ionoscloud::NATGatewaysApi.new
137
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
138
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
139
+ opts = {
140
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
141
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
142
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
143
+ }
144
+
145
+ begin
146
+ # Retrieve a NAT gateway
147
+ result = api_instance.datacenters_natgateways_find_by_nat_gateway_id(datacenter_id, nat_gateway_id, opts)
148
+ p result
149
+ rescue Ionoscloud::ApiError => e
150
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_find_by_nat_gateway_id: #{e}"
151
+ end
152
+ ```
153
+
154
+ #### Using the datacenters_natgateways_find_by_nat_gateway_id_with_http_info variant
155
+
156
+ This returns an Array which contains the response data, status code and headers.
157
+
158
+ > <Array(<NatGateway>, Integer, Hash)> datacenters_natgateways_find_by_nat_gateway_id_with_http_info(datacenter_id, nat_gateway_id, opts)
159
+
160
+ ```ruby
161
+ begin
162
+ # Retrieve a NAT gateway
163
+ data, status_code, headers = api_instance.datacenters_natgateways_find_by_nat_gateway_id_with_http_info(datacenter_id, nat_gateway_id, opts)
164
+ p status_code # => 2xx
165
+ p headers # => { ... }
166
+ p data # => <NatGateway>
167
+ rescue Ionoscloud::ApiError => e
168
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_find_by_nat_gateway_id_with_http_info: #{e}"
169
+ end
170
+ ```
171
+
172
+ ### Parameters
173
+
174
+ | Name | Type | Description | Notes |
175
+ | ---- | ---- | ----------- | ----- |
176
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
177
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
178
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
179
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
180
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
181
+
182
+ ### Return type
183
+
184
+ [**NatGateway**](NatGateway.md)
185
+
186
+ ### Authorization
187
+
188
+ Basic Authentication, Token Authentication
189
+
190
+ ### HTTP request headers
191
+
192
+ - **Content-Type**: Not defined
193
+ - **Accept**: application/json
194
+
195
+
196
+ ## datacenters_natgateways_flowlogs_delete
197
+
198
+ > datacenters_natgateways_flowlogs_delete(datacenter_id, nat_gateway_id, flow_log_id, opts)
199
+
200
+ Remove Flow Log from NAT Gateway
201
+
202
+ This will remove a flow log from the NAT gateway.
203
+
204
+ ### Examples
205
+
206
+ ```ruby
207
+ require 'time'
208
+ require 'ionoscloud'
209
+ # setup authorization
210
+ Ionoscloud.configure do |config|
211
+ # Configure HTTP basic authorization: Basic Authentication
212
+ config.username = 'YOUR USERNAME'
213
+ config.password = 'YOUR PASSWORD'
214
+
215
+ # Configure API key authorization: Token Authentication
216
+ config.api_key['Authorization'] = 'YOUR API KEY'
217
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
218
+ # config.api_key_prefix['Authorization'] = 'Bearer'
219
+ end
220
+
221
+ api_instance = Ionoscloud::NATGatewaysApi.new
222
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
223
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
224
+ flow_log_id = 'flow_log_id_example' # String | The unique ID of the flow log
225
+ opts = {
226
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
227
+ depth: 56 # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
228
+ }
229
+
230
+ begin
231
+ # Remove Flow Log from NAT Gateway
232
+ api_instance.datacenters_natgateways_flowlogs_delete(datacenter_id, nat_gateway_id, flow_log_id, opts)
233
+ rescue Ionoscloud::ApiError => e
234
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_delete: #{e}"
235
+ end
236
+ ```
237
+
238
+ #### Using the datacenters_natgateways_flowlogs_delete_with_http_info variant
239
+
240
+ This returns an Array which contains the response data (`nil` in this case), status code and headers.
241
+
242
+ > <Array(nil, Integer, Hash)> datacenters_natgateways_flowlogs_delete_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, opts)
243
+
244
+ ```ruby
245
+ begin
246
+ # Remove Flow Log from NAT Gateway
247
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_delete_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, opts)
248
+ p status_code # => 2xx
249
+ p headers # => { ... }
250
+ p data # => nil
251
+ rescue Ionoscloud::ApiError => e
252
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_delete_with_http_info: #{e}"
253
+ end
254
+ ```
255
+
256
+ ### Parameters
257
+
258
+ | Name | Type | Description | Notes |
259
+ | ---- | ---- | ----------- | ----- |
260
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
261
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
262
+ | **flow_log_id** | **String** | The unique ID of the flow log | |
263
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
264
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
265
+
266
+ ### Return type
267
+
268
+ nil (empty response body)
269
+
270
+ ### Authorization
271
+
272
+ Basic Authentication, Token Authentication
273
+
274
+ ### HTTP request headers
275
+
276
+ - **Content-Type**: Not defined
277
+ - **Accept**: application/json
278
+
279
+
280
+ ## datacenters_natgateways_flowlogs_find_by_flow_log_id
281
+
282
+ > <FlowLog> datacenters_natgateways_flowlogs_find_by_flow_log_id(datacenter_id, nat_gateway_id, flow_log_id, opts)
283
+
284
+ Retrieve a Flow Log of the NAT Gateway
285
+
286
+ This will return a Flow Log of the NAT Gateway.
287
+
288
+ ### Examples
289
+
290
+ ```ruby
291
+ require 'time'
292
+ require 'ionoscloud'
293
+ # setup authorization
294
+ Ionoscloud.configure do |config|
295
+ # Configure HTTP basic authorization: Basic Authentication
296
+ config.username = 'YOUR USERNAME'
297
+ config.password = 'YOUR PASSWORD'
298
+
299
+ # Configure API key authorization: Token Authentication
300
+ config.api_key['Authorization'] = 'YOUR API KEY'
301
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
302
+ # config.api_key_prefix['Authorization'] = 'Bearer'
303
+ end
304
+
305
+ api_instance = Ionoscloud::NATGatewaysApi.new
306
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
307
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
308
+ flow_log_id = 'flow_log_id_example' # String | The unique ID of the flow log
309
+ opts = {
310
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
311
+ depth: 56 # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
312
+ }
313
+
314
+ begin
315
+ # Retrieve a Flow Log of the NAT Gateway
316
+ result = api_instance.datacenters_natgateways_flowlogs_find_by_flow_log_id(datacenter_id, nat_gateway_id, flow_log_id, opts)
317
+ p result
318
+ rescue Ionoscloud::ApiError => e
319
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_find_by_flow_log_id: #{e}"
320
+ end
321
+ ```
322
+
323
+ #### Using the datacenters_natgateways_flowlogs_find_by_flow_log_id_with_http_info variant
324
+
325
+ This returns an Array which contains the response data, status code and headers.
326
+
327
+ > <Array(<FlowLog>, Integer, Hash)> datacenters_natgateways_flowlogs_find_by_flow_log_id_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, opts)
328
+
329
+ ```ruby
330
+ begin
331
+ # Retrieve a Flow Log of the NAT Gateway
332
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_find_by_flow_log_id_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, opts)
333
+ p status_code # => 2xx
334
+ p headers # => { ... }
335
+ p data # => <FlowLog>
336
+ rescue Ionoscloud::ApiError => e
337
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_find_by_flow_log_id_with_http_info: #{e}"
338
+ end
339
+ ```
340
+
341
+ ### Parameters
342
+
343
+ | Name | Type | Description | Notes |
344
+ | ---- | ---- | ----------- | ----- |
345
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
346
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
347
+ | **flow_log_id** | **String** | The unique ID of the flow log | |
348
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
349
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
350
+
351
+ ### Return type
352
+
353
+ [**FlowLog**](FlowLog.md)
354
+
355
+ ### Authorization
356
+
357
+ Basic Authentication, Token Authentication
358
+
359
+ ### HTTP request headers
360
+
361
+ - **Content-Type**: Not defined
362
+ - **Accept**: application/json
363
+
364
+
365
+ ## datacenters_natgateways_flowlogs_get
366
+
367
+ > <FlowLogs> datacenters_natgateways_flowlogs_get(datacenter_id, nat_gateway_id, opts)
368
+
369
+ List NAT Gateway Flow Logs
370
+
371
+ You can retrieve a list of Flow Logs of the NAT Gateway.
372
+
373
+ ### Examples
374
+
375
+ ```ruby
376
+ require 'time'
377
+ require 'ionoscloud'
378
+ # setup authorization
379
+ Ionoscloud.configure do |config|
380
+ # Configure HTTP basic authorization: Basic Authentication
381
+ config.username = 'YOUR USERNAME'
382
+ config.password = 'YOUR PASSWORD'
383
+
384
+ # Configure API key authorization: Token Authentication
385
+ config.api_key['Authorization'] = 'YOUR API KEY'
386
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
387
+ # config.api_key_prefix['Authorization'] = 'Bearer'
388
+ end
389
+
390
+ api_instance = Ionoscloud::NATGatewaysApi.new
391
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
392
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
393
+ opts = {
394
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
395
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
396
+ offset: 56, # Integer | the first element (of the total list of elements) to include in the response (use together with limit for pagination)
397
+ limit: 56 # Integer | the maximum number of elements to return (use together with offset for pagination)
398
+ }
399
+
400
+ begin
401
+ # List NAT Gateway Flow Logs
402
+ result = api_instance.datacenters_natgateways_flowlogs_get(datacenter_id, nat_gateway_id, opts)
403
+ p result
404
+ rescue Ionoscloud::ApiError => e
405
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_get: #{e}"
406
+ end
407
+ ```
408
+
409
+ #### Using the datacenters_natgateways_flowlogs_get_with_http_info variant
410
+
411
+ This returns an Array which contains the response data, status code and headers.
412
+
413
+ > <Array(<FlowLogs>, Integer, Hash)> datacenters_natgateways_flowlogs_get_with_http_info(datacenter_id, nat_gateway_id, opts)
414
+
415
+ ```ruby
416
+ begin
417
+ # List NAT Gateway Flow Logs
418
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_get_with_http_info(datacenter_id, nat_gateway_id, opts)
419
+ p status_code # => 2xx
420
+ p headers # => { ... }
421
+ p data # => <FlowLogs>
422
+ rescue Ionoscloud::ApiError => e
423
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_get_with_http_info: #{e}"
424
+ end
425
+ ```
426
+
427
+ ### Parameters
428
+
429
+ | Name | Type | Description | Notes |
430
+ | ---- | ---- | ----------- | ----- |
431
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
432
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
433
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
434
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
435
+ | **offset** | **Integer** | the first element (of the total list of elements) to include in the response (use together with limit for pagination) | [optional][default to 0] |
436
+ | **limit** | **Integer** | the maximum number of elements to return (use together with offset for pagination) | [optional][default to 1000] |
437
+
438
+ ### Return type
439
+
440
+ [**FlowLogs**](FlowLogs.md)
441
+
442
+ ### Authorization
443
+
444
+ Basic Authentication, Token Authentication
445
+
446
+ ### HTTP request headers
447
+
448
+ - **Content-Type**: Not defined
449
+ - **Accept**: application/json
450
+
451
+
452
+ ## datacenters_natgateways_flowlogs_patch
453
+
454
+ > <FlowLog> datacenters_natgateways_flowlogs_patch(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log_properties, opts)
455
+
456
+ Partially modify a Flow Log of the NAT Gateway
457
+
458
+ You can use to partially update a Flow Log of a NAT Gateway.
459
+
460
+ ### Examples
461
+
462
+ ```ruby
463
+ require 'time'
464
+ require 'ionoscloud'
465
+ # setup authorization
466
+ Ionoscloud.configure do |config|
467
+ # Configure HTTP basic authorization: Basic Authentication
468
+ config.username = 'YOUR USERNAME'
469
+ config.password = 'YOUR PASSWORD'
470
+
471
+ # Configure API key authorization: Token Authentication
472
+ config.api_key['Authorization'] = 'YOUR API KEY'
473
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
474
+ # config.api_key_prefix['Authorization'] = 'Bearer'
475
+ end
476
+
477
+ api_instance = Ionoscloud::NATGatewaysApi.new
478
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
479
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
480
+ flow_log_id = 'flow_log_id_example' # String | The unique ID of the flow log
481
+ nat_gateway_flow_log_properties = Ionoscloud::FlowLogProperties.new({name: 'My resource', action: 'ACCEPTED', direction: 'INGRESS', bucket: 'bucketName/key'}) # FlowLogProperties | Properties of a Flow Log to be updated
482
+ opts = {
483
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
484
+ depth: 56 # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
485
+ }
486
+
487
+ begin
488
+ # Partially modify a Flow Log of the NAT Gateway
489
+ result = api_instance.datacenters_natgateways_flowlogs_patch(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log_properties, opts)
490
+ p result
491
+ rescue Ionoscloud::ApiError => e
492
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_patch: #{e}"
493
+ end
494
+ ```
495
+
496
+ #### Using the datacenters_natgateways_flowlogs_patch_with_http_info variant
497
+
498
+ This returns an Array which contains the response data, status code and headers.
499
+
500
+ > <Array(<FlowLog>, Integer, Hash)> datacenters_natgateways_flowlogs_patch_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log_properties, opts)
501
+
502
+ ```ruby
503
+ begin
504
+ # Partially modify a Flow Log of the NAT Gateway
505
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_patch_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log_properties, opts)
506
+ p status_code # => 2xx
507
+ p headers # => { ... }
508
+ p data # => <FlowLog>
509
+ rescue Ionoscloud::ApiError => e
510
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_patch_with_http_info: #{e}"
511
+ end
512
+ ```
513
+
514
+ ### Parameters
515
+
516
+ | Name | Type | Description | Notes |
517
+ | ---- | ---- | ----------- | ----- |
518
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
519
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
520
+ | **flow_log_id** | **String** | The unique ID of the flow log | |
521
+ | **nat_gateway_flow_log_properties** | [**FlowLogProperties**](FlowLogProperties.md) | Properties of a Flow Log to be updated | |
522
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
523
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
524
+
525
+ ### Return type
526
+
527
+ [**FlowLog**](FlowLog.md)
528
+
529
+ ### Authorization
530
+
531
+ Basic Authentication, Token Authentication
532
+
533
+ ### HTTP request headers
534
+
535
+ - **Content-Type**: Not defined
536
+ - **Accept**: application/json
537
+
538
+
539
+ ## datacenters_natgateways_flowlogs_post
540
+
541
+ > <FlowLog> datacenters_natgateways_flowlogs_post(datacenter_id, nat_gateway_id, nat_gateway_flow_log, opts)
542
+
543
+ Add a NAT Gateways Flow Log
544
+
545
+ This will add a new Flow Log to the NAT Gateway.
546
+
547
+ ### Examples
548
+
549
+ ```ruby
550
+ require 'time'
551
+ require 'ionoscloud'
552
+ # setup authorization
553
+ Ionoscloud.configure do |config|
554
+ # Configure HTTP basic authorization: Basic Authentication
555
+ config.username = 'YOUR USERNAME'
556
+ config.password = 'YOUR PASSWORD'
557
+
558
+ # Configure API key authorization: Token Authentication
559
+ config.api_key['Authorization'] = 'YOUR API KEY'
560
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
561
+ # config.api_key_prefix['Authorization'] = 'Bearer'
562
+ end
563
+
564
+ api_instance = Ionoscloud::NATGatewaysApi.new
565
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
566
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
567
+ nat_gateway_flow_log = Ionoscloud::FlowLog.new({properties: Ionoscloud::FlowLogProperties.new({name: 'My resource', action: 'ACCEPTED', direction: 'INGRESS', bucket: 'bucketName/key'})}) # FlowLog | Flow Log to add on NAT Gateway
568
+ opts = {
569
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
570
+ depth: 56 # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
571
+ }
572
+
573
+ begin
574
+ # Add a NAT Gateways Flow Log
575
+ result = api_instance.datacenters_natgateways_flowlogs_post(datacenter_id, nat_gateway_id, nat_gateway_flow_log, opts)
576
+ p result
577
+ rescue Ionoscloud::ApiError => e
578
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_post: #{e}"
579
+ end
580
+ ```
581
+
582
+ #### Using the datacenters_natgateways_flowlogs_post_with_http_info variant
583
+
584
+ This returns an Array which contains the response data, status code and headers.
585
+
586
+ > <Array(<FlowLog>, Integer, Hash)> datacenters_natgateways_flowlogs_post_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_flow_log, opts)
587
+
588
+ ```ruby
589
+ begin
590
+ # Add a NAT Gateways Flow Log
591
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_post_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_flow_log, opts)
592
+ p status_code # => 2xx
593
+ p headers # => { ... }
594
+ p data # => <FlowLog>
595
+ rescue Ionoscloud::ApiError => e
596
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_post_with_http_info: #{e}"
597
+ end
598
+ ```
599
+
600
+ ### Parameters
601
+
602
+ | Name | Type | Description | Notes |
603
+ | ---- | ---- | ----------- | ----- |
604
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
605
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
606
+ | **nat_gateway_flow_log** | [**FlowLog**](FlowLog.md) | Flow Log to add on NAT Gateway | |
607
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
608
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
609
+
610
+ ### Return type
611
+
612
+ [**FlowLog**](FlowLog.md)
613
+
614
+ ### Authorization
615
+
616
+ Basic Authentication, Token Authentication
617
+
618
+ ### HTTP request headers
619
+
620
+ - **Content-Type**: application/json
621
+ - **Accept**: application/json
622
+
623
+
624
+ ## datacenters_natgateways_flowlogs_put
625
+
626
+ > <FlowLog> datacenters_natgateways_flowlogs_put(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log, opts)
627
+
628
+ Modify a Flow Log of the NAT Gateway
629
+
630
+ You can use to update a Flow Log of the NAT Gateway.
631
+
632
+ ### Examples
633
+
634
+ ```ruby
635
+ require 'time'
636
+ require 'ionoscloud'
637
+ # setup authorization
638
+ Ionoscloud.configure do |config|
639
+ # Configure HTTP basic authorization: Basic Authentication
640
+ config.username = 'YOUR USERNAME'
641
+ config.password = 'YOUR PASSWORD'
642
+
643
+ # Configure API key authorization: Token Authentication
644
+ config.api_key['Authorization'] = 'YOUR API KEY'
645
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
646
+ # config.api_key_prefix['Authorization'] = 'Bearer'
647
+ end
648
+
649
+ api_instance = Ionoscloud::NATGatewaysApi.new
650
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
651
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
652
+ flow_log_id = 'flow_log_id_example' # String | The unique ID of the flow log
653
+ nat_gateway_flow_log = Ionoscloud::FlowLogPut.new({properties: Ionoscloud::FlowLogProperties.new({name: 'My resource', action: 'ACCEPTED', direction: 'INGRESS', bucket: 'bucketName/key'})}) # FlowLogPut | Modified NAT Gateway Flow Log
654
+ opts = {
655
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
656
+ depth: 56 # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
657
+ }
658
+
659
+ begin
660
+ # Modify a Flow Log of the NAT Gateway
661
+ result = api_instance.datacenters_natgateways_flowlogs_put(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log, opts)
662
+ p result
663
+ rescue Ionoscloud::ApiError => e
664
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_put: #{e}"
665
+ end
666
+ ```
667
+
668
+ #### Using the datacenters_natgateways_flowlogs_put_with_http_info variant
669
+
670
+ This returns an Array which contains the response data, status code and headers.
671
+
672
+ > <Array(<FlowLog>, Integer, Hash)> datacenters_natgateways_flowlogs_put_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log, opts)
673
+
674
+ ```ruby
675
+ begin
676
+ # Modify a Flow Log of the NAT Gateway
677
+ data, status_code, headers = api_instance.datacenters_natgateways_flowlogs_put_with_http_info(datacenter_id, nat_gateway_id, flow_log_id, nat_gateway_flow_log, opts)
678
+ p status_code # => 2xx
679
+ p headers # => { ... }
680
+ p data # => <FlowLog>
681
+ rescue Ionoscloud::ApiError => e
682
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_flowlogs_put_with_http_info: #{e}"
683
+ end
684
+ ```
685
+
686
+ ### Parameters
687
+
688
+ | Name | Type | Description | Notes |
689
+ | ---- | ---- | ----------- | ----- |
690
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
691
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
692
+ | **flow_log_id** | **String** | The unique ID of the flow log | |
693
+ | **nat_gateway_flow_log** | [**FlowLogPut**](FlowLogPut.md) | Modified NAT Gateway Flow Log | |
694
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
695
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
696
+
697
+ ### Return type
698
+
699
+ [**FlowLog**](FlowLog.md)
700
+
701
+ ### Authorization
702
+
703
+ Basic Authentication, Token Authentication
704
+
705
+ ### HTTP request headers
706
+
707
+ - **Content-Type**: application/json
708
+ - **Accept**: application/json
709
+
710
+
711
+ ## datacenters_natgateways_get
712
+
713
+ > <NatGateways> datacenters_natgateways_get(datacenter_id, opts)
714
+
715
+ List NAT Gateways
716
+
717
+ Retrieve a list of NAT Gateways within the datacenter.
718
+
719
+ ### Examples
720
+
721
+ ```ruby
722
+ require 'time'
723
+ require 'ionoscloud'
724
+ # setup authorization
725
+ Ionoscloud.configure do |config|
726
+ # Configure HTTP basic authorization: Basic Authentication
727
+ config.username = 'YOUR USERNAME'
728
+ config.password = 'YOUR PASSWORD'
729
+
730
+ # Configure API key authorization: Token Authentication
731
+ config.api_key['Authorization'] = 'YOUR API KEY'
732
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
733
+ # config.api_key_prefix['Authorization'] = 'Bearer'
734
+ end
735
+
736
+ api_instance = Ionoscloud::NATGatewaysApi.new
737
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
738
+ opts = {
739
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
740
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
741
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
742
+ }
743
+
744
+ begin
745
+ # List NAT Gateways
746
+ result = api_instance.datacenters_natgateways_get(datacenter_id, opts)
747
+ p result
748
+ rescue Ionoscloud::ApiError => e
749
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_get: #{e}"
750
+ end
751
+ ```
752
+
753
+ #### Using the datacenters_natgateways_get_with_http_info variant
754
+
755
+ This returns an Array which contains the response data, status code and headers.
756
+
757
+ > <Array(<NatGateways>, Integer, Hash)> datacenters_natgateways_get_with_http_info(datacenter_id, opts)
758
+
759
+ ```ruby
760
+ begin
761
+ # List NAT Gateways
762
+ data, status_code, headers = api_instance.datacenters_natgateways_get_with_http_info(datacenter_id, opts)
763
+ p status_code # => 2xx
764
+ p headers # => { ... }
765
+ p data # => <NatGateways>
766
+ rescue Ionoscloud::ApiError => e
767
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_get_with_http_info: #{e}"
768
+ end
769
+ ```
770
+
771
+ ### Parameters
772
+
773
+ | Name | Type | Description | Notes |
774
+ | ---- | ---- | ----------- | ----- |
775
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
776
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
777
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
778
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
779
+
780
+ ### Return type
781
+
782
+ [**NatGateways**](NatGateways.md)
783
+
784
+ ### Authorization
785
+
786
+ Basic Authentication, Token Authentication
787
+
788
+ ### HTTP request headers
789
+
790
+ - **Content-Type**: Not defined
791
+ - **Accept**: application/json
792
+
793
+
794
+ ## datacenters_natgateways_patch
795
+
796
+ > <NatGateway> datacenters_natgateways_patch(datacenter_id, nat_gateway_id, nat_gateway_properties, opts)
797
+
798
+ Partially update a NAT gateway
799
+
800
+ Partially update the attributes of a given NAT gateway
801
+
802
+ ### Examples
803
+
804
+ ```ruby
805
+ require 'time'
806
+ require 'ionoscloud'
807
+ # setup authorization
808
+ Ionoscloud.configure do |config|
809
+ # Configure HTTP basic authorization: Basic Authentication
810
+ config.username = 'YOUR USERNAME'
811
+ config.password = 'YOUR PASSWORD'
812
+
813
+ # Configure API key authorization: Token Authentication
814
+ config.api_key['Authorization'] = 'YOUR API KEY'
815
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
816
+ # config.api_key_prefix['Authorization'] = 'Bearer'
817
+ end
818
+
819
+ api_instance = Ionoscloud::NATGatewaysApi.new
820
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
821
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
822
+ nat_gateway_properties = Ionoscloud::NatGatewayProperties.new({name: 'My NAT Gateway', public_ips: ['public_ips_example']}) # NatGatewayProperties | NAT gateway properties to be updated
823
+ opts = {
824
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
825
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
826
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
827
+ }
828
+
829
+ begin
830
+ # Partially update a NAT gateway
831
+ result = api_instance.datacenters_natgateways_patch(datacenter_id, nat_gateway_id, nat_gateway_properties, opts)
832
+ p result
833
+ rescue Ionoscloud::ApiError => e
834
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_patch: #{e}"
835
+ end
836
+ ```
837
+
838
+ #### Using the datacenters_natgateways_patch_with_http_info variant
839
+
840
+ This returns an Array which contains the response data, status code and headers.
841
+
842
+ > <Array(<NatGateway>, Integer, Hash)> datacenters_natgateways_patch_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_properties, opts)
843
+
844
+ ```ruby
845
+ begin
846
+ # Partially update a NAT gateway
847
+ data, status_code, headers = api_instance.datacenters_natgateways_patch_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_properties, opts)
848
+ p status_code # => 2xx
849
+ p headers # => { ... }
850
+ p data # => <NatGateway>
851
+ rescue Ionoscloud::ApiError => e
852
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_patch_with_http_info: #{e}"
853
+ end
854
+ ```
855
+
856
+ ### Parameters
857
+
858
+ | Name | Type | Description | Notes |
859
+ | ---- | ---- | ----------- | ----- |
860
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
861
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
862
+ | **nat_gateway_properties** | [**NatGatewayProperties**](NatGatewayProperties.md) | NAT gateway properties to be updated | |
863
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
864
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
865
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
866
+
867
+ ### Return type
868
+
869
+ [**NatGateway**](NatGateway.md)
870
+
871
+ ### Authorization
872
+
873
+ Basic Authentication, Token Authentication
874
+
875
+ ### HTTP request headers
876
+
877
+ - **Content-Type**: Not defined
878
+ - **Accept**: application/json
879
+
880
+
881
+ ## datacenters_natgateways_post
882
+
883
+ > <NatGateway> datacenters_natgateways_post(datacenter_id, nat_gateway, opts)
884
+
885
+ Create a NAT Gateway
886
+
887
+ Creates a NAT Gateway within the datacenter. User should be the contract owner or a admin or a user with createInternetAccess privilege
888
+
889
+ ### Examples
890
+
891
+ ```ruby
892
+ require 'time'
893
+ require 'ionoscloud'
894
+ # setup authorization
895
+ Ionoscloud.configure do |config|
896
+ # Configure HTTP basic authorization: Basic Authentication
897
+ config.username = 'YOUR USERNAME'
898
+ config.password = 'YOUR PASSWORD'
899
+
900
+ # Configure API key authorization: Token Authentication
901
+ config.api_key['Authorization'] = 'YOUR API KEY'
902
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
903
+ # config.api_key_prefix['Authorization'] = 'Bearer'
904
+ end
905
+
906
+ api_instance = Ionoscloud::NATGatewaysApi.new
907
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
908
+ nat_gateway = Ionoscloud::NatGateway.new({properties: Ionoscloud::NatGatewayProperties.new({name: 'My NAT Gateway', public_ips: ['public_ips_example']})}) # NatGateway | NAT gateway to be created
909
+ opts = {
910
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
911
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
912
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
913
+ }
914
+
915
+ begin
916
+ # Create a NAT Gateway
917
+ result = api_instance.datacenters_natgateways_post(datacenter_id, nat_gateway, opts)
918
+ p result
919
+ rescue Ionoscloud::ApiError => e
920
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_post: #{e}"
921
+ end
922
+ ```
923
+
924
+ #### Using the datacenters_natgateways_post_with_http_info variant
925
+
926
+ This returns an Array which contains the response data, status code and headers.
927
+
928
+ > <Array(<NatGateway>, Integer, Hash)> datacenters_natgateways_post_with_http_info(datacenter_id, nat_gateway, opts)
929
+
930
+ ```ruby
931
+ begin
932
+ # Create a NAT Gateway
933
+ data, status_code, headers = api_instance.datacenters_natgateways_post_with_http_info(datacenter_id, nat_gateway, opts)
934
+ p status_code # => 2xx
935
+ p headers # => { ... }
936
+ p data # => <NatGateway>
937
+ rescue Ionoscloud::ApiError => e
938
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_post_with_http_info: #{e}"
939
+ end
940
+ ```
941
+
942
+ ### Parameters
943
+
944
+ | Name | Type | Description | Notes |
945
+ | ---- | ---- | ----------- | ----- |
946
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
947
+ | **nat_gateway** | [**NatGateway**](NatGateway.md) | NAT gateway to be created | |
948
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
949
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
950
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
951
+
952
+ ### Return type
953
+
954
+ [**NatGateway**](NatGateway.md)
955
+
956
+ ### Authorization
957
+
958
+ Basic Authentication, Token Authentication
959
+
960
+ ### HTTP request headers
961
+
962
+ - **Content-Type**: application/json
963
+ - **Accept**: application/json
964
+
965
+
966
+ ## datacenters_natgateways_put
967
+
968
+ > <NatGateway> datacenters_natgateways_put(datacenter_id, nat_gateway_id, nat_gateway, opts)
969
+
970
+ Update a NAT gateway
971
+
972
+ Update the attributes of a given NAT gateway
973
+
974
+ ### Examples
975
+
976
+ ```ruby
977
+ require 'time'
978
+ require 'ionoscloud'
979
+ # setup authorization
980
+ Ionoscloud.configure do |config|
981
+ # Configure HTTP basic authorization: Basic Authentication
982
+ config.username = 'YOUR USERNAME'
983
+ config.password = 'YOUR PASSWORD'
984
+
985
+ # Configure API key authorization: Token Authentication
986
+ config.api_key['Authorization'] = 'YOUR API KEY'
987
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
988
+ # config.api_key_prefix['Authorization'] = 'Bearer'
989
+ end
990
+
991
+ api_instance = Ionoscloud::NATGatewaysApi.new
992
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
993
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
994
+ nat_gateway = Ionoscloud::NatGatewayPut.new({properties: Ionoscloud::NatGatewayProperties.new({name: 'My NAT Gateway', public_ips: ['public_ips_example']})}) # NatGatewayPut | Modified NAT Gateway
995
+ opts = {
996
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
997
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
998
+ x_contract_number: 56, # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
999
+ offset: 56, # Integer | the first element (of the total list of elements) to include in the response (use together with limit for pagination)
1000
+ limit: 56 # Integer | the maximum number of elements to return (use together with offset for pagination)
1001
+ }
1002
+
1003
+ begin
1004
+ # Update a NAT gateway
1005
+ result = api_instance.datacenters_natgateways_put(datacenter_id, nat_gateway_id, nat_gateway, opts)
1006
+ p result
1007
+ rescue Ionoscloud::ApiError => e
1008
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_put: #{e}"
1009
+ end
1010
+ ```
1011
+
1012
+ #### Using the datacenters_natgateways_put_with_http_info variant
1013
+
1014
+ This returns an Array which contains the response data, status code and headers.
1015
+
1016
+ > <Array(<NatGateway>, Integer, Hash)> datacenters_natgateways_put_with_http_info(datacenter_id, nat_gateway_id, nat_gateway, opts)
1017
+
1018
+ ```ruby
1019
+ begin
1020
+ # Update a NAT gateway
1021
+ data, status_code, headers = api_instance.datacenters_natgateways_put_with_http_info(datacenter_id, nat_gateway_id, nat_gateway, opts)
1022
+ p status_code # => 2xx
1023
+ p headers # => { ... }
1024
+ p data # => <NatGateway>
1025
+ rescue Ionoscloud::ApiError => e
1026
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_put_with_http_info: #{e}"
1027
+ end
1028
+ ```
1029
+
1030
+ ### Parameters
1031
+
1032
+ | Name | Type | Description | Notes |
1033
+ | ---- | ---- | ----------- | ----- |
1034
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1035
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1036
+ | **nat_gateway** | [**NatGatewayPut**](NatGatewayPut.md) | Modified NAT Gateway | |
1037
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1038
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1039
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1040
+ | **offset** | **Integer** | the first element (of the total list of elements) to include in the response (use together with limit for pagination) | [optional][default to 0] |
1041
+ | **limit** | **Integer** | the maximum number of elements to return (use together with offset for pagination) | [optional][default to 1000] |
1042
+
1043
+ ### Return type
1044
+
1045
+ [**NatGateway**](NatGateway.md)
1046
+
1047
+ ### Authorization
1048
+
1049
+ Basic Authentication, Token Authentication
1050
+
1051
+ ### HTTP request headers
1052
+
1053
+ - **Content-Type**: application/json
1054
+ - **Accept**: application/json
1055
+
1056
+
1057
+ ## datacenters_natgateways_rules_delete
1058
+
1059
+ > datacenters_natgateways_rules_delete(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1060
+
1061
+ Remove rule from NAT Gateway
1062
+
1063
+ This will remove a rule from the NAT gateway.
1064
+
1065
+ ### Examples
1066
+
1067
+ ```ruby
1068
+ require 'time'
1069
+ require 'ionoscloud'
1070
+ # setup authorization
1071
+ Ionoscloud.configure do |config|
1072
+ # Configure HTTP basic authorization: Basic Authentication
1073
+ config.username = 'YOUR USERNAME'
1074
+ config.password = 'YOUR PASSWORD'
1075
+
1076
+ # Configure API key authorization: Token Authentication
1077
+ config.api_key['Authorization'] = 'YOUR API KEY'
1078
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1079
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1080
+ end
1081
+
1082
+ api_instance = Ionoscloud::NATGatewaysApi.new
1083
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1084
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1085
+ nat_gateway_rule_id = 'nat_gateway_rule_id_example' # String | The unique ID of the NAT gateway rule
1086
+ opts = {
1087
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1088
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1089
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1090
+ }
1091
+
1092
+ begin
1093
+ # Remove rule from NAT Gateway
1094
+ api_instance.datacenters_natgateways_rules_delete(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1095
+ rescue Ionoscloud::ApiError => e
1096
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_delete: #{e}"
1097
+ end
1098
+ ```
1099
+
1100
+ #### Using the datacenters_natgateways_rules_delete_with_http_info variant
1101
+
1102
+ This returns an Array which contains the response data (`nil` in this case), status code and headers.
1103
+
1104
+ > <Array(nil, Integer, Hash)> datacenters_natgateways_rules_delete_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1105
+
1106
+ ```ruby
1107
+ begin
1108
+ # Remove rule from NAT Gateway
1109
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_delete_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1110
+ p status_code # => 2xx
1111
+ p headers # => { ... }
1112
+ p data # => nil
1113
+ rescue Ionoscloud::ApiError => e
1114
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_delete_with_http_info: #{e}"
1115
+ end
1116
+ ```
1117
+
1118
+ ### Parameters
1119
+
1120
+ | Name | Type | Description | Notes |
1121
+ | ---- | ---- | ----------- | ----- |
1122
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1123
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1124
+ | **nat_gateway_rule_id** | **String** | The unique ID of the NAT gateway rule | |
1125
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1126
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1127
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1128
+
1129
+ ### Return type
1130
+
1131
+ nil (empty response body)
1132
+
1133
+ ### Authorization
1134
+
1135
+ Basic Authentication, Token Authentication
1136
+
1137
+ ### HTTP request headers
1138
+
1139
+ - **Content-Type**: Not defined
1140
+ - **Accept**: application/json
1141
+
1142
+
1143
+ ## datacenters_natgateways_rules_find_by_nat_gateway_rule_id
1144
+
1145
+ > <NatGatewayRule> datacenters_natgateways_rules_find_by_nat_gateway_rule_id(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1146
+
1147
+ Retrieve a NAT Gateway Rule
1148
+
1149
+ Retrieves the attributes of a given NAT gateway rule.
1150
+
1151
+ ### Examples
1152
+
1153
+ ```ruby
1154
+ require 'time'
1155
+ require 'ionoscloud'
1156
+ # setup authorization
1157
+ Ionoscloud.configure do |config|
1158
+ # Configure HTTP basic authorization: Basic Authentication
1159
+ config.username = 'YOUR USERNAME'
1160
+ config.password = 'YOUR PASSWORD'
1161
+
1162
+ # Configure API key authorization: Token Authentication
1163
+ config.api_key['Authorization'] = 'YOUR API KEY'
1164
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1165
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1166
+ end
1167
+
1168
+ api_instance = Ionoscloud::NATGatewaysApi.new
1169
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1170
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1171
+ nat_gateway_rule_id = 'nat_gateway_rule_id_example' # String | The unique ID of the NAT gateway rule
1172
+ opts = {
1173
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1174
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1175
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1176
+ }
1177
+
1178
+ begin
1179
+ # Retrieve a NAT Gateway Rule
1180
+ result = api_instance.datacenters_natgateways_rules_find_by_nat_gateway_rule_id(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1181
+ p result
1182
+ rescue Ionoscloud::ApiError => e
1183
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_find_by_nat_gateway_rule_id: #{e}"
1184
+ end
1185
+ ```
1186
+
1187
+ #### Using the datacenters_natgateways_rules_find_by_nat_gateway_rule_id_with_http_info variant
1188
+
1189
+ This returns an Array which contains the response data, status code and headers.
1190
+
1191
+ > <Array(<NatGatewayRule>, Integer, Hash)> datacenters_natgateways_rules_find_by_nat_gateway_rule_id_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1192
+
1193
+ ```ruby
1194
+ begin
1195
+ # Retrieve a NAT Gateway Rule
1196
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_find_by_nat_gateway_rule_id_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, opts)
1197
+ p status_code # => 2xx
1198
+ p headers # => { ... }
1199
+ p data # => <NatGatewayRule>
1200
+ rescue Ionoscloud::ApiError => e
1201
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_find_by_nat_gateway_rule_id_with_http_info: #{e}"
1202
+ end
1203
+ ```
1204
+
1205
+ ### Parameters
1206
+
1207
+ | Name | Type | Description | Notes |
1208
+ | ---- | ---- | ----------- | ----- |
1209
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1210
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1211
+ | **nat_gateway_rule_id** | **String** | The unique ID of the NAT gateway rule | |
1212
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1213
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1214
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1215
+
1216
+ ### Return type
1217
+
1218
+ [**NatGatewayRule**](NatGatewayRule.md)
1219
+
1220
+ ### Authorization
1221
+
1222
+ Basic Authentication, Token Authentication
1223
+
1224
+ ### HTTP request headers
1225
+
1226
+ - **Content-Type**: Not defined
1227
+ - **Accept**: application/json
1228
+
1229
+
1230
+ ## datacenters_natgateways_rules_get
1231
+
1232
+ > <NatGatewayRules> datacenters_natgateways_rules_get(datacenter_id, nat_gateway_id, opts)
1233
+
1234
+ List NAT Gateways Rules
1235
+
1236
+ Retrieve a list of rules of a NAT Gateway within the datacenter.
1237
+
1238
+ ### Examples
1239
+
1240
+ ```ruby
1241
+ require 'time'
1242
+ require 'ionoscloud'
1243
+ # setup authorization
1244
+ Ionoscloud.configure do |config|
1245
+ # Configure HTTP basic authorization: Basic Authentication
1246
+ config.username = 'YOUR USERNAME'
1247
+ config.password = 'YOUR PASSWORD'
1248
+
1249
+ # Configure API key authorization: Token Authentication
1250
+ config.api_key['Authorization'] = 'YOUR API KEY'
1251
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1252
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1253
+ end
1254
+
1255
+ api_instance = Ionoscloud::NATGatewaysApi.new
1256
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1257
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1258
+ opts = {
1259
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1260
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1261
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1262
+ }
1263
+
1264
+ begin
1265
+ # List NAT Gateways Rules
1266
+ result = api_instance.datacenters_natgateways_rules_get(datacenter_id, nat_gateway_id, opts)
1267
+ p result
1268
+ rescue Ionoscloud::ApiError => e
1269
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_get: #{e}"
1270
+ end
1271
+ ```
1272
+
1273
+ #### Using the datacenters_natgateways_rules_get_with_http_info variant
1274
+
1275
+ This returns an Array which contains the response data, status code and headers.
1276
+
1277
+ > <Array(<NatGatewayRules>, Integer, Hash)> datacenters_natgateways_rules_get_with_http_info(datacenter_id, nat_gateway_id, opts)
1278
+
1279
+ ```ruby
1280
+ begin
1281
+ # List NAT Gateways Rules
1282
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_get_with_http_info(datacenter_id, nat_gateway_id, opts)
1283
+ p status_code # => 2xx
1284
+ p headers # => { ... }
1285
+ p data # => <NatGatewayRules>
1286
+ rescue Ionoscloud::ApiError => e
1287
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_get_with_http_info: #{e}"
1288
+ end
1289
+ ```
1290
+
1291
+ ### Parameters
1292
+
1293
+ | Name | Type | Description | Notes |
1294
+ | ---- | ---- | ----------- | ----- |
1295
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1296
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1297
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1298
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1299
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1300
+
1301
+ ### Return type
1302
+
1303
+ [**NatGatewayRules**](NatGatewayRules.md)
1304
+
1305
+ ### Authorization
1306
+
1307
+ Basic Authentication, Token Authentication
1308
+
1309
+ ### HTTP request headers
1310
+
1311
+ - **Content-Type**: Not defined
1312
+ - **Accept**: application/json
1313
+
1314
+
1315
+ ## datacenters_natgateways_rules_patch
1316
+
1317
+ > <NatGatewayRule> datacenters_natgateways_rules_patch(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule_properties, opts)
1318
+
1319
+ Partially modify a rule of the NAT gateway
1320
+
1321
+ You can use to partially update a rule of a NAT gateway.
1322
+
1323
+ ### Examples
1324
+
1325
+ ```ruby
1326
+ require 'time'
1327
+ require 'ionoscloud'
1328
+ # setup authorization
1329
+ Ionoscloud.configure do |config|
1330
+ # Configure HTTP basic authorization: Basic Authentication
1331
+ config.username = 'YOUR USERNAME'
1332
+ config.password = 'YOUR PASSWORD'
1333
+
1334
+ # Configure API key authorization: Token Authentication
1335
+ config.api_key['Authorization'] = 'YOUR API KEY'
1336
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1337
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1338
+ end
1339
+
1340
+ api_instance = Ionoscloud::NATGatewaysApi.new
1341
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1342
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1343
+ nat_gateway_rule_id = 'nat_gateway_rule_id_example' # String | The unique ID of the NAT gateway rule
1344
+ nat_gateway_rule_properties = Ionoscloud::NatGatewayRuleProperties.new({name: 'My NAT Gateway Rule', source_subnet: '10.0.1.0/24', public_ip: '192.18.7.17'}) # NatGatewayRuleProperties | Properties of a NAT gateway rule to be updated
1345
+ opts = {
1346
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1347
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1348
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1349
+ }
1350
+
1351
+ begin
1352
+ # Partially modify a rule of the NAT gateway
1353
+ result = api_instance.datacenters_natgateways_rules_patch(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule_properties, opts)
1354
+ p result
1355
+ rescue Ionoscloud::ApiError => e
1356
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_patch: #{e}"
1357
+ end
1358
+ ```
1359
+
1360
+ #### Using the datacenters_natgateways_rules_patch_with_http_info variant
1361
+
1362
+ This returns an Array which contains the response data, status code and headers.
1363
+
1364
+ > <Array(<NatGatewayRule>, Integer, Hash)> datacenters_natgateways_rules_patch_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule_properties, opts)
1365
+
1366
+ ```ruby
1367
+ begin
1368
+ # Partially modify a rule of the NAT gateway
1369
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_patch_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule_properties, opts)
1370
+ p status_code # => 2xx
1371
+ p headers # => { ... }
1372
+ p data # => <NatGatewayRule>
1373
+ rescue Ionoscloud::ApiError => e
1374
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_patch_with_http_info: #{e}"
1375
+ end
1376
+ ```
1377
+
1378
+ ### Parameters
1379
+
1380
+ | Name | Type | Description | Notes |
1381
+ | ---- | ---- | ----------- | ----- |
1382
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1383
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1384
+ | **nat_gateway_rule_id** | **String** | The unique ID of the NAT gateway rule | |
1385
+ | **nat_gateway_rule_properties** | [**NatGatewayRuleProperties**](NatGatewayRuleProperties.md) | Properties of a NAT gateway rule to be updated | |
1386
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1387
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1388
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1389
+
1390
+ ### Return type
1391
+
1392
+ [**NatGatewayRule**](NatGatewayRule.md)
1393
+
1394
+ ### Authorization
1395
+
1396
+ Basic Authentication, Token Authentication
1397
+
1398
+ ### HTTP request headers
1399
+
1400
+ - **Content-Type**: Not defined
1401
+ - **Accept**: application/json
1402
+
1403
+
1404
+ ## datacenters_natgateways_rules_post
1405
+
1406
+ > <NatGatewayRule> datacenters_natgateways_rules_post(datacenter_id, nat_gateway_id, nat_gateway_rule, opts)
1407
+
1408
+ Create a NAT Gateway Rule
1409
+
1410
+ Creates a rule within the NAT Gateway of a datacenter.
1411
+
1412
+ ### Examples
1413
+
1414
+ ```ruby
1415
+ require 'time'
1416
+ require 'ionoscloud'
1417
+ # setup authorization
1418
+ Ionoscloud.configure do |config|
1419
+ # Configure HTTP basic authorization: Basic Authentication
1420
+ config.username = 'YOUR USERNAME'
1421
+ config.password = 'YOUR PASSWORD'
1422
+
1423
+ # Configure API key authorization: Token Authentication
1424
+ config.api_key['Authorization'] = 'YOUR API KEY'
1425
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1426
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1427
+ end
1428
+
1429
+ api_instance = Ionoscloud::NATGatewaysApi.new
1430
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1431
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1432
+ nat_gateway_rule = Ionoscloud::NatGatewayRule.new({properties: Ionoscloud::NatGatewayRuleProperties.new({name: 'My NAT Gateway Rule', source_subnet: '10.0.1.0/24', public_ip: '192.18.7.17'})}) # NatGatewayRule | NAT gateway rule to be created
1433
+ opts = {
1434
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1435
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1436
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1437
+ }
1438
+
1439
+ begin
1440
+ # Create a NAT Gateway Rule
1441
+ result = api_instance.datacenters_natgateways_rules_post(datacenter_id, nat_gateway_id, nat_gateway_rule, opts)
1442
+ p result
1443
+ rescue Ionoscloud::ApiError => e
1444
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_post: #{e}"
1445
+ end
1446
+ ```
1447
+
1448
+ #### Using the datacenters_natgateways_rules_post_with_http_info variant
1449
+
1450
+ This returns an Array which contains the response data, status code and headers.
1451
+
1452
+ > <Array(<NatGatewayRule>, Integer, Hash)> datacenters_natgateways_rules_post_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule, opts)
1453
+
1454
+ ```ruby
1455
+ begin
1456
+ # Create a NAT Gateway Rule
1457
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_post_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule, opts)
1458
+ p status_code # => 2xx
1459
+ p headers # => { ... }
1460
+ p data # => <NatGatewayRule>
1461
+ rescue Ionoscloud::ApiError => e
1462
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_post_with_http_info: #{e}"
1463
+ end
1464
+ ```
1465
+
1466
+ ### Parameters
1467
+
1468
+ | Name | Type | Description | Notes |
1469
+ | ---- | ---- | ----------- | ----- |
1470
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1471
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1472
+ | **nat_gateway_rule** | [**NatGatewayRule**](NatGatewayRule.md) | NAT gateway rule to be created | |
1473
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1474
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1475
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1476
+
1477
+ ### Return type
1478
+
1479
+ [**NatGatewayRule**](NatGatewayRule.md)
1480
+
1481
+ ### Authorization
1482
+
1483
+ Basic Authentication, Token Authentication
1484
+
1485
+ ### HTTP request headers
1486
+
1487
+ - **Content-Type**: application/json
1488
+ - **Accept**: application/json
1489
+
1490
+
1491
+ ## datacenters_natgateways_rules_put
1492
+
1493
+ > <NatGatewayRule> datacenters_natgateways_rules_put(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule, opts)
1494
+
1495
+ Modify a rule of the NAT gateway
1496
+
1497
+ You can use to update a rule of the NAT gateway.
1498
+
1499
+ ### Examples
1500
+
1501
+ ```ruby
1502
+ require 'time'
1503
+ require 'ionoscloud'
1504
+ # setup authorization
1505
+ Ionoscloud.configure do |config|
1506
+ # Configure HTTP basic authorization: Basic Authentication
1507
+ config.username = 'YOUR USERNAME'
1508
+ config.password = 'YOUR PASSWORD'
1509
+
1510
+ # Configure API key authorization: Token Authentication
1511
+ config.api_key['Authorization'] = 'YOUR API KEY'
1512
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
1513
+ # config.api_key_prefix['Authorization'] = 'Bearer'
1514
+ end
1515
+
1516
+ api_instance = Ionoscloud::NATGatewaysApi.new
1517
+ datacenter_id = 'datacenter_id_example' # String | The unique ID of the datacenter
1518
+ nat_gateway_id = 'nat_gateway_id_example' # String | The unique ID of the NAT gateway
1519
+ nat_gateway_rule_id = 'nat_gateway_rule_id_example' # String | The unique ID of the NAT gateway rule
1520
+ nat_gateway_rule = Ionoscloud::NatGatewayRulePut.new({properties: Ionoscloud::NatGatewayRuleProperties.new({name: 'My NAT Gateway Rule', source_subnet: '10.0.1.0/24', public_ip: '192.18.7.17'})}) # NatGatewayRulePut | Modified NAT Gateway Rule
1521
+ opts = {
1522
+ pretty: true, # Boolean | Controls whether response is pretty-printed (with indentation and new lines)
1523
+ depth: 56, # Integer | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth=0: only direct properties are included. Children (servers etc.) are not included - depth=1: direct properties and children references are included - depth=2: direct properties and children properties are included - depth=3: direct properties and children properties and children's children are included - depth=... and so on
1524
+ x_contract_number: 56 # Integer | Users having more than 1 contract need to provide contract number, against which all API requests should be executed
1525
+ }
1526
+
1527
+ begin
1528
+ # Modify a rule of the NAT gateway
1529
+ result = api_instance.datacenters_natgateways_rules_put(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule, opts)
1530
+ p result
1531
+ rescue Ionoscloud::ApiError => e
1532
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_put: #{e}"
1533
+ end
1534
+ ```
1535
+
1536
+ #### Using the datacenters_natgateways_rules_put_with_http_info variant
1537
+
1538
+ This returns an Array which contains the response data, status code and headers.
1539
+
1540
+ > <Array(<NatGatewayRule>, Integer, Hash)> datacenters_natgateways_rules_put_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule, opts)
1541
+
1542
+ ```ruby
1543
+ begin
1544
+ # Modify a rule of the NAT gateway
1545
+ data, status_code, headers = api_instance.datacenters_natgateways_rules_put_with_http_info(datacenter_id, nat_gateway_id, nat_gateway_rule_id, nat_gateway_rule, opts)
1546
+ p status_code # => 2xx
1547
+ p headers # => { ... }
1548
+ p data # => <NatGatewayRule>
1549
+ rescue Ionoscloud::ApiError => e
1550
+ puts "Error when calling NATGatewaysApi->datacenters_natgateways_rules_put_with_http_info: #{e}"
1551
+ end
1552
+ ```
1553
+
1554
+ ### Parameters
1555
+
1556
+ | Name | Type | Description | Notes |
1557
+ | ---- | ---- | ----------- | ----- |
1558
+ | **datacenter_id** | **String** | The unique ID of the datacenter | |
1559
+ | **nat_gateway_id** | **String** | The unique ID of the NAT gateway | |
1560
+ | **nat_gateway_rule_id** | **String** | The unique ID of the NAT gateway rule | |
1561
+ | **nat_gateway_rule** | [**NatGatewayRulePut**](NatGatewayRulePut.md) | Modified NAT Gateway Rule | |
1562
+ | **pretty** | **Boolean** | Controls whether response is pretty-printed (with indentation and new lines) | [optional][default to true] |
1563
+ | **depth** | **Integer** | Controls the details depth of response objects. Eg. GET /datacenters/[ID] - depth&#x3D;0: only direct properties are included. Children (servers etc.) are not included - depth&#x3D;1: direct properties and children references are included - depth&#x3D;2: direct properties and children properties are included - depth&#x3D;3: direct properties and children properties and children&#39;s children are included - depth&#x3D;... and so on | [optional][default to 0] |
1564
+ | **x_contract_number** | **Integer** | Users having more than 1 contract need to provide contract number, against which all API requests should be executed | [optional] |
1565
+
1566
+ ### Return type
1567
+
1568
+ [**NatGatewayRule**](NatGatewayRule.md)
1569
+
1570
+ ### Authorization
1571
+
1572
+ Basic Authentication, Token Authentication
1573
+
1574
+ ### HTTP request headers
1575
+
1576
+ - **Content-Type**: application/json
1577
+ - **Accept**: application/json
1578
+