gcore 0.13.0__py3-none-any.whl → 0.15.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of gcore might be problematic. Click here for more details.

Files changed (345) hide show
  1. gcore/__init__.py +3 -1
  2. gcore/_base_client.py +9 -9
  3. gcore/_client.py +25 -10
  4. gcore/_models.py +10 -4
  5. gcore/_qs.py +7 -7
  6. gcore/_types.py +18 -11
  7. gcore/_utils/_transform.py +2 -2
  8. gcore/_utils/_utils.py +4 -4
  9. gcore/_version.py +1 -1
  10. gcore/pagination.py +137 -0
  11. gcore/resources/__init__.py +14 -0
  12. gcore/resources/cdn/__init__.py +201 -0
  13. gcore/resources/cdn/audit_log.py +406 -0
  14. gcore/resources/cdn/cdn.py +957 -0
  15. gcore/resources/cdn/certificates.py +1062 -0
  16. gcore/resources/cdn/ip_ranges.py +224 -0
  17. gcore/resources/cdn/logs/__init__.py +33 -0
  18. gcore/resources/cdn/logs/logs.py +1424 -0
  19. gcore/resources/cdn/logs/settings.py +1081 -0
  20. gcore/resources/cdn/logs_uploader/__init__.py +61 -0
  21. gcore/resources/cdn/logs_uploader/configs.py +868 -0
  22. gcore/resources/cdn/logs_uploader/logs_uploader.py +166 -0
  23. gcore/resources/cdn/logs_uploader/policies.py +1060 -0
  24. gcore/resources/cdn/logs_uploader/targets.py +811 -0
  25. gcore/resources/cdn/metrics.py +419 -0
  26. gcore/resources/cdn/network_capacity.py +139 -0
  27. gcore/resources/cdn/origin_groups.py +1496 -0
  28. gcore/resources/cdn/resources/__init__.py +47 -0
  29. gcore/resources/cdn/resources/resources.py +2060 -0
  30. gcore/resources/cdn/resources/rules.py +1027 -0
  31. gcore/resources/cdn/resources/shield.py +259 -0
  32. gcore/resources/cdn/rule_templates.py +883 -0
  33. gcore/resources/cdn/shields.py +139 -0
  34. gcore/resources/cdn/statistics.py +1408 -0
  35. gcore/resources/cdn/trusted_ca_certificates.py +592 -0
  36. gcore/resources/cloud/audit_logs.py +33 -29
  37. gcore/resources/cloud/baremetal/flavors.py +21 -17
  38. gcore/resources/cloud/baremetal/images.py +19 -15
  39. gcore/resources/cloud/baremetal/servers.py +141 -119
  40. gcore/resources/cloud/billing_reservations.py +41 -33
  41. gcore/resources/cloud/cloud.py +24 -0
  42. gcore/resources/cloud/cost_reports.py +149 -119
  43. gcore/resources/cloud/file_shares/access_rules.py +25 -13
  44. gcore/resources/cloud/file_shares/file_shares.py +107 -71
  45. gcore/resources/cloud/floating_ips.py +101 -59
  46. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +13 -9
  47. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +275 -65
  48. gcore/resources/cloud/gpu_baremetal_clusters/images.py +69 -53
  49. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +9 -5
  50. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +151 -127
  51. gcore/resources/cloud/inference/api_keys.py +51 -31
  52. gcore/resources/cloud/inference/applications/deployments.py +49 -31
  53. gcore/resources/cloud/inference/applications/templates.py +17 -9
  54. gcore/resources/cloud/inference/deployments/deployments.py +171 -139
  55. gcore/resources/cloud/inference/deployments/logs.py +17 -13
  56. gcore/resources/cloud/inference/flavors.py +21 -13
  57. gcore/resources/cloud/inference/inference.py +9 -5
  58. gcore/resources/cloud/inference/registry_credentials.py +45 -25
  59. gcore/resources/cloud/inference/secrets.py +45 -25
  60. gcore/resources/cloud/instances/flavors.py +17 -13
  61. gcore/resources/cloud/instances/images.py +153 -129
  62. gcore/resources/cloud/instances/instances.py +287 -213
  63. gcore/resources/cloud/instances/interfaces.py +165 -161
  64. gcore/resources/cloud/instances/metrics.py +9 -5
  65. gcore/resources/cloud/ip_ranges.py +25 -15
  66. gcore/resources/cloud/k8s/clusters/clusters.py +151 -87
  67. gcore/resources/cloud/k8s/clusters/nodes.py +19 -11
  68. gcore/resources/cloud/k8s/clusters/pools/nodes.py +19 -11
  69. gcore/resources/cloud/k8s/clusters/pools/pools.py +83 -59
  70. gcore/resources/cloud/k8s/flavors.py +13 -9
  71. gcore/resources/cloud/k8s/k8s.py +9 -5
  72. gcore/resources/cloud/load_balancers/flavors.py +11 -7
  73. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +103 -83
  74. gcore/resources/cloud/load_balancers/l7_policies/rules.py +77 -57
  75. gcore/resources/cloud/load_balancers/listeners.py +125 -105
  76. gcore/resources/cloud/load_balancers/load_balancers.py +155 -123
  77. gcore/resources/cloud/load_balancers/metrics.py +9 -5
  78. gcore/resources/cloud/load_balancers/pools/health_monitors.py +25 -17
  79. gcore/resources/cloud/load_balancers/pools/members.py +31 -23
  80. gcore/resources/cloud/load_balancers/pools/pools.py +155 -129
  81. gcore/resources/cloud/load_balancers/statuses.py +17 -9
  82. gcore/resources/cloud/networks/networks.py +79 -55
  83. gcore/resources/cloud/networks/routers.py +75 -47
  84. gcore/resources/cloud/networks/subnets.py +109 -87
  85. gcore/resources/cloud/placement_groups.py +33 -17
  86. gcore/resources/cloud/projects.py +53 -41
  87. gcore/resources/cloud/quotas/quotas.py +25 -13
  88. gcore/resources/cloud/quotas/requests.py +41 -25
  89. gcore/resources/cloud/regions.py +25 -23
  90. gcore/resources/cloud/registries/artifacts.py +17 -9
  91. gcore/resources/cloud/registries/registries.py +55 -29
  92. gcore/resources/cloud/registries/repositories.py +17 -9
  93. gcore/resources/cloud/registries/tags.py +9 -5
  94. gcore/resources/cloud/registries/users.py +65 -35
  95. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +233 -108
  96. gcore/resources/cloud/reserved_fixed_ips/vip.py +45 -25
  97. gcore/resources/cloud/secrets.py +43 -27
  98. gcore/resources/cloud/security_groups/rules.py +55 -43
  99. gcore/resources/cloud/security_groups/security_groups.py +79 -47
  100. gcore/resources/cloud/ssh_keys.py +51 -31
  101. gcore/resources/cloud/tasks.py +57 -45
  102. gcore/resources/cloud/usage_reports.py +27 -23
  103. gcore/resources/cloud/users/role_assignments.py +49 -33
  104. gcore/resources/cloud/volumes.py +237 -201
  105. gcore/resources/dns/dns.py +17 -13
  106. gcore/resources/dns/locations.py +29 -17
  107. gcore/resources/dns/metrics.py +13 -9
  108. gcore/resources/dns/pickers/pickers.py +5 -5
  109. gcore/resources/dns/pickers/presets.py +9 -5
  110. gcore/resources/dns/zones/dnssec.py +19 -11
  111. gcore/resources/dns/zones/rrsets.py +149 -91
  112. gcore/resources/dns/zones/zones.py +245 -187
  113. gcore/resources/fastedge/apps/apps.py +105 -89
  114. gcore/resources/fastedge/apps/logs.py +25 -21
  115. gcore/resources/fastedge/binaries.py +33 -17
  116. gcore/resources/fastedge/fastedge.py +5 -5
  117. gcore/resources/fastedge/kv_stores.py +43 -31
  118. gcore/resources/fastedge/secrets.py +69 -45
  119. gcore/resources/fastedge/statistics.py +25 -17
  120. gcore/resources/fastedge/templates.py +59 -39
  121. gcore/resources/iam/api_tokens.py +47 -29
  122. gcore/resources/iam/iam.py +5 -5
  123. gcore/resources/iam/users.py +97 -65
  124. gcore/resources/security/bgp_announces.py +27 -19
  125. gcore/resources/security/events.py +23 -19
  126. gcore/resources/security/profile_templates.py +9 -5
  127. gcore/resources/security/profiles.py +69 -45
  128. gcore/resources/storage/buckets/buckets.py +37 -25
  129. gcore/resources/storage/buckets/cors.py +19 -11
  130. gcore/resources/storage/buckets/lifecycle.py +19 -11
  131. gcore/resources/storage/buckets/policy.py +25 -13
  132. gcore/resources/storage/credentials.py +19 -15
  133. gcore/resources/storage/locations.py +13 -9
  134. gcore/resources/storage/statistics.py +39 -31
  135. gcore/resources/storage/storage.py +105 -69
  136. gcore/resources/streaming/ai_tasks.py +307 -197
  137. gcore/resources/streaming/broadcasts.py +63 -35
  138. gcore/resources/streaming/directories.py +65 -39
  139. gcore/resources/streaming/players.py +47 -31
  140. gcore/resources/streaming/playlists.py +189 -123
  141. gcore/resources/streaming/quality_sets.py +69 -39
  142. gcore/resources/streaming/restreams.py +47 -27
  143. gcore/resources/streaming/statistics.py +613 -407
  144. gcore/resources/streaming/streams/overlays.py +107 -67
  145. gcore/resources/streaming/streams/streams.py +403 -263
  146. gcore/resources/streaming/videos/subtitles.py +131 -75
  147. gcore/resources/streaming/videos/videos.py +429 -279
  148. gcore/resources/waap/advanced_rules.py +9 -5
  149. gcore/resources/waap/custom_page_sets.py +99 -75
  150. gcore/resources/waap/domains/advanced_rules.py +157 -99
  151. gcore/resources/waap/domains/api_discovery.py +71 -47
  152. gcore/resources/waap/domains/api_path_groups.py +9 -5
  153. gcore/resources/waap/domains/api_paths.py +79 -83
  154. gcore/resources/waap/domains/custom_rules.py +89 -59
  155. gcore/resources/waap/domains/domains.py +59 -41
  156. gcore/resources/waap/domains/firewall_rules.py +83 -55
  157. gcore/resources/waap/domains/insight_silences.py +59 -39
  158. gcore/resources/waap/domains/insights.py +39 -27
  159. gcore/resources/waap/domains/settings.py +21 -13
  160. gcore/resources/waap/domains/statistics.py +99 -75
  161. gcore/resources/waap/insights.py +23 -21
  162. gcore/resources/waap/ip_info/ip_info.py +65 -33
  163. gcore/resources/waap/ip_info/metrics.py +11 -7
  164. gcore/resources/waap/organizations.py +17 -13
  165. gcore/resources/waap/statistics.py +9 -5
  166. gcore/resources/waap/tags.py +17 -17
  167. gcore/resources/waap/waap.py +5 -5
  168. gcore/types/cdn/__init__.py +80 -0
  169. gcore/types/cdn/audit_log_list_params.py +73 -0
  170. gcore/types/cdn/ca_certificate.py +53 -0
  171. gcore/types/cdn/ca_certificate_list.py +10 -0
  172. gcore/types/cdn/cdn_account.py +86 -0
  173. gcore/types/cdn/cdn_account_limits.py +27 -0
  174. gcore/types/cdn/cdn_audit_log_entry.py +66 -0
  175. gcore/types/cdn/cdn_available_features.py +46 -0
  176. gcore/types/cdn/cdn_list_purge_statuses_params.py +67 -0
  177. gcore/types/cdn/cdn_log_entry.py +70 -0
  178. gcore/types/cdn/cdn_metrics.py +22 -0
  179. gcore/types/cdn/cdn_metrics_groups.py +13 -0
  180. gcore/types/cdn/cdn_metrics_values.py +19 -0
  181. gcore/types/cdn/cdn_resource.py +1997 -0
  182. gcore/types/cdn/cdn_resource_list.py +10 -0
  183. gcore/types/cdn/cdn_update_account_params.py +15 -0
  184. gcore/types/cdn/certificate_create_params.py +51 -0
  185. gcore/types/cdn/certificate_get_status_params.py +14 -0
  186. gcore/types/cdn/certificate_list_params.py +29 -0
  187. gcore/types/cdn/certificate_replace_params.py +39 -0
  188. gcore/types/cdn/log_download_params.py +279 -0
  189. gcore/types/cdn/log_list_params.py +273 -0
  190. gcore/types/cdn/logs/__init__.py +7 -0
  191. gcore/types/cdn/logs/log_settings.py +172 -0
  192. gcore/types/cdn/logs/setting_create_params.py +200 -0
  193. gcore/types/cdn/logs/setting_update_params.py +200 -0
  194. gcore/types/cdn/logs_aggregated_stats.py +23 -0
  195. gcore/types/cdn/logs_uploader/__init__.py +23 -0
  196. gcore/types/cdn/logs_uploader/config_create_params.py +32 -0
  197. gcore/types/cdn/logs_uploader/config_list_params.py +16 -0
  198. gcore/types/cdn/logs_uploader/config_replace_params.py +32 -0
  199. gcore/types/cdn/logs_uploader/config_update_params.py +32 -0
  200. gcore/types/cdn/logs_uploader/logs_uploader_config.py +51 -0
  201. gcore/types/cdn/logs_uploader/logs_uploader_config_list.py +10 -0
  202. gcore/types/cdn/logs_uploader/logs_uploader_policy.py +73 -0
  203. gcore/types/cdn/logs_uploader/logs_uploader_policy_list.py +10 -0
  204. gcore/types/cdn/logs_uploader/logs_uploader_target.py +236 -0
  205. gcore/types/cdn/logs_uploader/logs_uploader_target_list.py +10 -0
  206. gcore/types/cdn/logs_uploader/policy_create_params.py +61 -0
  207. gcore/types/cdn/logs_uploader/policy_list_fields_response.py +8 -0
  208. gcore/types/cdn/logs_uploader/policy_list_params.py +16 -0
  209. gcore/types/cdn/logs_uploader/policy_replace_params.py +61 -0
  210. gcore/types/cdn/logs_uploader/policy_update_params.py +61 -0
  211. gcore/types/cdn/logs_uploader/target_create_params.py +249 -0
  212. gcore/types/cdn/logs_uploader/target_list_params.py +16 -0
  213. gcore/types/cdn/logs_uploader/target_replace_params.py +249 -0
  214. gcore/types/cdn/logs_uploader/target_update_params.py +249 -0
  215. gcore/types/cdn/logs_uploader_validation.py +23 -0
  216. gcore/types/cdn/metric_list_params.py +168 -0
  217. gcore/types/cdn/network_capacity.py +22 -0
  218. gcore/types/cdn/origin_group_create_params.py +184 -0
  219. gcore/types/cdn/origin_group_list_params.py +24 -0
  220. gcore/types/cdn/origin_group_replace_params.py +190 -0
  221. gcore/types/cdn/origin_group_update_params.py +190 -0
  222. gcore/types/cdn/origin_groups.py +212 -0
  223. gcore/types/cdn/origin_groups_list.py +10 -0
  224. gcore/types/cdn/public_ip_list.py +15 -0
  225. gcore/types/cdn/public_network_list.py +15 -0
  226. gcore/types/cdn/purge_status.py +55 -0
  227. gcore/types/cdn/resource_aggregated_stats.py +80 -0
  228. gcore/types/cdn/resource_create_params.py +1845 -0
  229. gcore/types/cdn/resource_list_params.py +107 -0
  230. gcore/types/cdn/resource_prefetch_params.py +17 -0
  231. gcore/types/cdn/resource_purge_params.py +71 -0
  232. gcore/types/cdn/resource_replace_params.py +1823 -0
  233. gcore/types/cdn/resource_update_params.py +1814 -0
  234. gcore/types/cdn/resource_usage_stats.py +111 -0
  235. gcore/types/cdn/resources/__init__.py +11 -0
  236. gcore/types/cdn/resources/cdn_resource_rule.py +1715 -0
  237. gcore/types/cdn/resources/origin_shielding.py +15 -0
  238. gcore/types/cdn/resources/rule_create_params.py +1672 -0
  239. gcore/types/cdn/resources/rule_list_response.py +10 -0
  240. gcore/types/cdn/resources/rule_replace_params.py +1674 -0
  241. gcore/types/cdn/resources/rule_update_params.py +1674 -0
  242. gcore/types/cdn/resources/shield_replace_params.py +16 -0
  243. gcore/types/cdn/rule_template.py +1686 -0
  244. gcore/types/cdn/rule_template_create_params.py +1656 -0
  245. gcore/types/cdn/rule_template_list.py +10 -0
  246. gcore/types/cdn/rule_template_replace_params.py +1656 -0
  247. gcore/types/cdn/rule_template_update_params.py +1656 -0
  248. gcore/types/cdn/shield_aggregated_stats.py +23 -0
  249. gcore/types/cdn/shield_list_response.py +25 -0
  250. gcore/types/cdn/ssl_detail.py +62 -0
  251. gcore/types/cdn/ssl_detail_list.py +10 -0
  252. gcore/types/cdn/ssl_request_status.py +135 -0
  253. gcore/types/cdn/statistic_get_logs_usage_aggregated_params.py +42 -0
  254. gcore/types/cdn/statistic_get_logs_usage_series_params.py +35 -0
  255. gcore/types/cdn/statistic_get_resource_usage_aggregated_params.py +151 -0
  256. gcore/types/cdn/statistic_get_resource_usage_series_params.py +131 -0
  257. gcore/types/cdn/statistic_get_shield_usage_aggregated_params.py +42 -0
  258. gcore/types/cdn/statistic_get_shield_usage_series_params.py +25 -0
  259. gcore/types/cdn/trusted_ca_certificate_create_params.py +23 -0
  260. gcore/types/cdn/trusted_ca_certificate_list_params.py +29 -0
  261. gcore/types/cdn/trusted_ca_certificate_replace_params.py +15 -0
  262. gcore/types/cdn/usage_series_stats.py +31 -0
  263. gcore/types/cloud/__init__.py +2 -0
  264. gcore/types/cloud/file_share.py +4 -0
  265. gcore/types/cloud/file_share_create_params.py +20 -0
  266. gcore/types/cloud/file_share_update_params.py +40 -3
  267. gcore/types/cloud/floating_ip_update_params.py +3 -1
  268. gcore/types/cloud/gpu_baremetal_cluster_action_params.py +46 -0
  269. gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_flavor.py +12 -0
  270. gcore/types/cloud/inference/inference_deployment.py +3 -1
  271. gcore/types/cloud/instance_create_params.py +3 -1
  272. gcore/types/cloud/k8s/cluster_create_params.py +46 -4
  273. gcore/types/cloud/k8s/cluster_update_params.py +60 -6
  274. gcore/types/cloud/k8s/clusters/pool_update_params.py +1 -1
  275. gcore/types/cloud/k8s/k8s_cluster.py +40 -3
  276. gcore/types/cloud/load_balancer_update_params.py +3 -1
  277. gcore/types/cloud/network_update_params.py +3 -1
  278. gcore/types/cloud/networks/subnet_update_params.py +3 -1
  279. gcore/types/cloud/quota_get_all_response.py +8 -8
  280. gcore/types/cloud/quota_get_by_region_response.py +8 -8
  281. gcore/types/cloud/quotas/request_create_params.py +4 -4
  282. gcore/types/cloud/quotas/request_get_response.py +4 -4
  283. gcore/types/cloud/quotas/request_list_response.py +4 -4
  284. gcore/types/cloud/registries/user_create_multiple_params.py +5 -3
  285. gcore/types/cloud/registries/user_create_params.py +5 -3
  286. gcore/types/cloud/registry_create_params.py +5 -3
  287. gcore/types/cloud/reserved_fixed_ip_update_params.py +16 -0
  288. gcore/types/cloud/security_group_update_params.py +3 -1
  289. gcore/types/cloud/ssh_key_created.py +6 -3
  290. gcore/types/cloud/volume_update_params.py +3 -1
  291. gcore/types/dns/zone_get_statistics_params.py +12 -9
  292. gcore/types/dns/zone_get_statistics_response.py +3 -1
  293. gcore/types/dns/zone_import_params.py +21 -15
  294. gcore/types/dns/zones/dns_output_rrset.py +7 -3
  295. gcore/types/iam/account_overview.py +31 -28
  296. gcore/types/iam/api_token.py +24 -24
  297. gcore/types/iam/api_token_create_params.py +2 -1
  298. gcore/types/iam/api_token_list.py +24 -24
  299. gcore/types/iam/user.py +7 -2
  300. gcore/types/iam/user_detailed.py +22 -17
  301. gcore/types/iam/user_invite.py +2 -4
  302. gcore/types/iam/user_invite_params.py +4 -1
  303. gcore/types/iam/user_update.py +22 -17
  304. gcore/types/iam/user_update_params.py +7 -2
  305. gcore/types/streaming/ai_contentmoderation_hardnudity.py +6 -4
  306. gcore/types/streaming/ai_contentmoderation_nsfw.py +6 -4
  307. gcore/types/streaming/ai_contentmoderation_softnudity.py +6 -4
  308. gcore/types/streaming/ai_contentmoderation_sport.py +6 -4
  309. gcore/types/streaming/ai_task.py +20 -11
  310. gcore/types/streaming/ai_task_create_params.py +20 -11
  311. gcore/types/streaming/ai_task_get_response.py +5 -4
  312. gcore/types/streaming/ai_task_list_params.py +11 -5
  313. gcore/types/streaming/clip.py +33 -22
  314. gcore/types/streaming/create_video_param.py +75 -43
  315. gcore/types/streaming/playlist.py +7 -5
  316. gcore/types/streaming/playlist_create_params.py +7 -5
  317. gcore/types/streaming/playlist_update_params.py +7 -5
  318. gcore/types/streaming/playlist_video.py +75 -43
  319. gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +7 -4
  320. gcore/types/streaming/stream.py +207 -136
  321. gcore/types/streaming/stream_create_clip_params.py +33 -22
  322. gcore/types/streaming/stream_create_params.py +41 -24
  323. gcore/types/streaming/stream_update_params.py +41 -24
  324. gcore/types/streaming/video.py +138 -76
  325. gcore/types/streaming/video_list_params.py +4 -2
  326. gcore/types/streaming/video_update_params.py +75 -43
  327. gcore/types/waap/domain_update_params.py +2 -2
  328. gcore/types/waap/domains/advanced_rule_create_params.py +26 -18
  329. gcore/types/waap/domains/advanced_rule_list_params.py +10 -7
  330. gcore/types/waap/domains/advanced_rule_update_params.py +22 -17
  331. gcore/types/waap/domains/api_path_create_params.py +0 -3
  332. gcore/types/waap/domains/api_path_update_params.py +1 -3
  333. gcore/types/waap/domains/custom_rule_create_params.py +36 -35
  334. gcore/types/waap/domains/custom_rule_update_params.py +31 -33
  335. gcore/types/waap/domains/firewall_rule_create_params.py +6 -6
  336. gcore/types/waap/domains/firewall_rule_update_params.py +5 -5
  337. gcore/types/waap/domains/waap_advanced_rule.py +17 -9
  338. gcore/types/waap/domains/waap_custom_rule.py +5 -2
  339. gcore/types/waap/domains/waap_firewall_rule.py +1 -1
  340. gcore/types/waap/domains/waap_insight.py +1 -1
  341. gcore/types/waap/insight_list_types_params.py +1 -1
  342. {gcore-0.13.0.dist-info → gcore-0.15.0.dist-info}/METADATA +1 -1
  343. {gcore-0.13.0.dist-info → gcore-0.15.0.dist-info}/RECORD +345 -224
  344. {gcore-0.13.0.dist-info → gcore-0.15.0.dist-info}/WHEEL +0 -0
  345. {gcore-0.13.0.dist-info → gcore-0.15.0.dist-info}/licenses/LICENSE +0 -0
@@ -15,7 +15,7 @@ from .vip import (
15
15
  VipResourceWithStreamingResponse,
16
16
  AsyncVipResourceWithStreamingResponse,
17
17
  )
18
- from ...._types import NOT_GIVEN, Body, Query, Headers, NotGiven
18
+ from ...._types import NOT_GIVEN, Body, Omit, Query, Headers, NotGiven, omit, not_given
19
19
  from ...._utils import required_args, maybe_transform, async_maybe_transform
20
20
  from ...._compat import cached_property
21
21
  from ...._resource import SyncAPIResource, AsyncAPIResource
@@ -26,7 +26,12 @@ from ...._response import (
26
26
  async_to_streamed_response_wrapper,
27
27
  )
28
28
  from ....pagination import SyncOffsetPage, AsyncOffsetPage
29
- from ....types.cloud import InterfaceIPFamily, reserved_fixed_ip_list_params, reserved_fixed_ip_create_params
29
+ from ....types.cloud import (
30
+ InterfaceIPFamily,
31
+ reserved_fixed_ip_list_params,
32
+ reserved_fixed_ip_create_params,
33
+ reserved_fixed_ip_update_params,
34
+ )
30
35
  from ...._base_client import AsyncPaginator, make_request_options
31
36
  from ....types.cloud.task_id_list import TaskIDList
32
37
  from ....types.cloud.reserved_fixed_ip import ReservedFixedIP
@@ -66,14 +71,14 @@ class ReservedFixedIPsResource(SyncAPIResource):
66
71
  project_id: int | None = None,
67
72
  region_id: int | None = None,
68
73
  type: Literal["external"],
69
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
70
- is_vip: bool | NotGiven = NOT_GIVEN,
74
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
75
+ is_vip: bool | Omit = omit,
71
76
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
72
77
  # The extra values given here take precedence over values defined on the client or passed to this method.
73
78
  extra_headers: Headers | None = None,
74
79
  extra_query: Query | None = None,
75
80
  extra_body: Body | None = None,
76
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
81
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
77
82
  ) -> TaskIDList:
78
83
  """
79
84
  Create a new reserved fixed IP with the specified configuration.
@@ -103,13 +108,13 @@ class ReservedFixedIPsResource(SyncAPIResource):
103
108
  region_id: int | None = None,
104
109
  subnet_id: str,
105
110
  type: Literal["subnet"],
106
- is_vip: bool | NotGiven = NOT_GIVEN,
111
+ is_vip: bool | Omit = omit,
107
112
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
108
113
  # The extra values given here take precedence over values defined on the client or passed to this method.
109
114
  extra_headers: Headers | None = None,
110
115
  extra_query: Query | None = None,
111
116
  extra_body: Body | None = None,
112
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
117
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
113
118
  ) -> TaskIDList:
114
119
  """
115
120
  Create a new reserved fixed IP with the specified configuration.
@@ -139,14 +144,14 @@ class ReservedFixedIPsResource(SyncAPIResource):
139
144
  region_id: int | None = None,
140
145
  network_id: str,
141
146
  type: Literal["any_subnet"],
142
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
143
- is_vip: bool | NotGiven = NOT_GIVEN,
147
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
148
+ is_vip: bool | Omit = omit,
144
149
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
145
150
  # The extra values given here take precedence over values defined on the client or passed to this method.
146
151
  extra_headers: Headers | None = None,
147
152
  extra_query: Query | None = None,
148
153
  extra_body: Body | None = None,
149
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
154
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
150
155
  ) -> TaskIDList:
151
156
  """
152
157
  Create a new reserved fixed IP with the specified configuration.
@@ -179,13 +184,13 @@ class ReservedFixedIPsResource(SyncAPIResource):
179
184
  ip_address: str,
180
185
  network_id: str,
181
186
  type: Literal["ip_address"],
182
- is_vip: bool | NotGiven = NOT_GIVEN,
187
+ is_vip: bool | Omit = omit,
183
188
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
184
189
  # The extra values given here take precedence over values defined on the client or passed to this method.
185
190
  extra_headers: Headers | None = None,
186
191
  extra_query: Query | None = None,
187
192
  extra_body: Body | None = None,
188
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
193
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
189
194
  ) -> TaskIDList:
190
195
  """
191
196
  Create a new reserved fixed IP with the specified configuration.
@@ -222,7 +227,7 @@ class ReservedFixedIPsResource(SyncAPIResource):
222
227
  extra_headers: Headers | None = None,
223
228
  extra_query: Query | None = None,
224
229
  extra_body: Body | None = None,
225
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
230
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
226
231
  ) -> TaskIDList:
227
232
  """
228
233
  Create a new reserved fixed IP with the specified configuration.
@@ -256,25 +261,27 @@ class ReservedFixedIPsResource(SyncAPIResource):
256
261
  project_id: int | None = None,
257
262
  region_id: int | None = None,
258
263
  type: Literal["external"] | Literal["subnet"] | Literal["any_subnet"] | Literal["ip_address"] | Literal["port"],
259
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
260
- is_vip: bool | NotGiven = NOT_GIVEN,
261
- subnet_id: str | NotGiven = NOT_GIVEN,
262
- network_id: str | NotGiven = NOT_GIVEN,
263
- ip_address: str | NotGiven = NOT_GIVEN,
264
- port_id: str | NotGiven = NOT_GIVEN,
264
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
265
+ is_vip: bool | Omit = omit,
266
+ subnet_id: str | Omit = omit,
267
+ network_id: str | Omit = omit,
268
+ ip_address: str | Omit = omit,
269
+ port_id: str | Omit = omit,
265
270
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
266
271
  # The extra values given here take precedence over values defined on the client or passed to this method.
267
272
  extra_headers: Headers | None = None,
268
273
  extra_query: Query | None = None,
269
274
  extra_body: Body | None = None,
270
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
275
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
271
276
  ) -> TaskIDList:
272
277
  if project_id is None:
273
278
  project_id = self._client._get_cloud_project_id_path_param()
274
279
  if region_id is None:
275
280
  region_id = self._client._get_cloud_region_id_path_param()
276
281
  return self._post(
277
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
282
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}"
283
+ if self._client._base_url_overridden
284
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
278
285
  body=maybe_transform(
279
286
  {
280
287
  "type": type,
@@ -293,26 +300,71 @@ class ReservedFixedIPsResource(SyncAPIResource):
293
300
  cast_to=TaskIDList,
294
301
  )
295
302
 
303
+ def update(
304
+ self,
305
+ port_id: str,
306
+ *,
307
+ project_id: int | None = None,
308
+ region_id: int | None = None,
309
+ is_vip: bool,
310
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
311
+ # The extra values given here take precedence over values defined on the client or passed to this method.
312
+ extra_headers: Headers | None = None,
313
+ extra_query: Query | None = None,
314
+ extra_body: Body | None = None,
315
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
316
+ ) -> ReservedFixedIP:
317
+ """
318
+ Update the VIP status of a reserved fixed IP.
319
+
320
+ Args:
321
+ is_vip: If reserved fixed IP should be a VIP
322
+
323
+ extra_headers: Send extra headers
324
+
325
+ extra_query: Add additional query parameters to the request
326
+
327
+ extra_body: Add additional JSON properties to the request
328
+
329
+ timeout: Override the client-level default timeout for this request, in seconds
330
+ """
331
+ if project_id is None:
332
+ project_id = self._client._get_cloud_project_id_path_param()
333
+ if region_id is None:
334
+ region_id = self._client._get_cloud_region_id_path_param()
335
+ if not port_id:
336
+ raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
337
+ return self._patch(
338
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
339
+ if self._client._base_url_overridden
340
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
341
+ body=maybe_transform({"is_vip": is_vip}, reserved_fixed_ip_update_params.ReservedFixedIPUpdateParams),
342
+ options=make_request_options(
343
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
344
+ ),
345
+ cast_to=ReservedFixedIP,
346
+ )
347
+
296
348
  def list(
297
349
  self,
298
350
  *,
299
351
  project_id: int | None = None,
300
352
  region_id: int | None = None,
301
- available_only: bool | NotGiven = NOT_GIVEN,
302
- device_id: str | NotGiven = NOT_GIVEN,
303
- external_only: bool | NotGiven = NOT_GIVEN,
304
- internal_only: bool | NotGiven = NOT_GIVEN,
305
- ip_address: str | NotGiven = NOT_GIVEN,
306
- limit: int | NotGiven = NOT_GIVEN,
307
- offset: int | NotGiven = NOT_GIVEN,
308
- order_by: str | NotGiven = NOT_GIVEN,
309
- vip_only: bool | NotGiven = NOT_GIVEN,
353
+ available_only: bool | Omit = omit,
354
+ device_id: str | Omit = omit,
355
+ external_only: bool | Omit = omit,
356
+ internal_only: bool | Omit = omit,
357
+ ip_address: str | Omit = omit,
358
+ limit: int | Omit = omit,
359
+ offset: int | Omit = omit,
360
+ order_by: str | Omit = omit,
361
+ vip_only: bool | Omit = omit,
310
362
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
311
363
  # The extra values given here take precedence over values defined on the client or passed to this method.
312
364
  extra_headers: Headers | None = None,
313
365
  extra_query: Query | None = None,
314
366
  extra_body: Body | None = None,
315
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
367
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
316
368
  ) -> SyncOffsetPage[ReservedFixedIP]:
317
369
  """
318
370
  List all reserved fixed IPs in the specified project and region.
@@ -352,7 +404,9 @@ class ReservedFixedIPsResource(SyncAPIResource):
352
404
  if region_id is None:
353
405
  region_id = self._client._get_cloud_region_id_path_param()
354
406
  return self._get_api_list(
355
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
407
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}"
408
+ if self._client._base_url_overridden
409
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
356
410
  page=SyncOffsetPage[ReservedFixedIP],
357
411
  options=make_request_options(
358
412
  extra_headers=extra_headers,
@@ -388,7 +442,7 @@ class ReservedFixedIPsResource(SyncAPIResource):
388
442
  extra_headers: Headers | None = None,
389
443
  extra_query: Query | None = None,
390
444
  extra_body: Body | None = None,
391
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
445
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
392
446
  ) -> TaskIDList:
393
447
  """
394
448
  Delete a specific reserved fixed IP and all its associated resources.
@@ -409,7 +463,9 @@ class ReservedFixedIPsResource(SyncAPIResource):
409
463
  if not port_id:
410
464
  raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
411
465
  return self._delete(
412
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
466
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
467
+ if self._client._base_url_overridden
468
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
413
469
  options=make_request_options(
414
470
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
415
471
  ),
@@ -427,7 +483,7 @@ class ReservedFixedIPsResource(SyncAPIResource):
427
483
  extra_headers: Headers | None = None,
428
484
  extra_query: Query | None = None,
429
485
  extra_body: Body | None = None,
430
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
486
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
431
487
  ) -> ReservedFixedIP:
432
488
  """
433
489
  Get detailed information about a specific reserved fixed IP.
@@ -448,7 +504,9 @@ class ReservedFixedIPsResource(SyncAPIResource):
448
504
  if not port_id:
449
505
  raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
450
506
  return self._get(
451
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
507
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
508
+ if self._client._base_url_overridden
509
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
452
510
  options=make_request_options(
453
511
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
454
512
  ),
@@ -462,9 +520,9 @@ class ReservedFixedIPsResource(SyncAPIResource):
462
520
  project_id: int | None = None,
463
521
  region_id: int | None = None,
464
522
  type: Literal["external"],
465
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
466
- is_vip: bool | NotGiven = NOT_GIVEN,
467
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
523
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
524
+ is_vip: bool | Omit = omit,
525
+ polling_interval_seconds: int | Omit = omit,
468
526
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
469
527
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
470
528
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -500,8 +558,8 @@ class ReservedFixedIPsResource(SyncAPIResource):
500
558
  region_id: int | None = None,
501
559
  subnet_id: str,
502
560
  type: Literal["subnet"],
503
- is_vip: bool | NotGiven = NOT_GIVEN,
504
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
561
+ is_vip: bool | Omit = omit,
562
+ polling_interval_seconds: int | Omit = omit,
505
563
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
506
564
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
507
565
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -537,9 +595,9 @@ class ReservedFixedIPsResource(SyncAPIResource):
537
595
  region_id: int | None = None,
538
596
  network_id: str,
539
597
  type: Literal["any_subnet"],
540
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
541
- is_vip: bool | NotGiven = NOT_GIVEN,
542
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
598
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
599
+ is_vip: bool | Omit = omit,
600
+ polling_interval_seconds: int | Omit = omit,
543
601
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
544
602
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
545
603
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -578,8 +636,8 @@ class ReservedFixedIPsResource(SyncAPIResource):
578
636
  ip_address: str,
579
637
  network_id: str,
580
638
  type: Literal["ip_address"],
581
- is_vip: bool | NotGiven = NOT_GIVEN,
582
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
639
+ is_vip: bool | Omit = omit,
640
+ polling_interval_seconds: int | Omit = omit,
583
641
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
584
642
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
585
643
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -617,7 +675,7 @@ class ReservedFixedIPsResource(SyncAPIResource):
617
675
  region_id: int | None = None,
618
676
  port_id: str,
619
677
  type: Literal["port"],
620
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
678
+ polling_interval_seconds: int | Omit = omit,
621
679
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
622
680
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
623
681
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -657,13 +715,13 @@ class ReservedFixedIPsResource(SyncAPIResource):
657
715
  project_id: int | None = None,
658
716
  region_id: int | None = None,
659
717
  type: Literal["external"] | Literal["subnet"] | Literal["any_subnet"] | Literal["ip_address"] | Literal["port"],
660
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
661
- is_vip: bool | NotGiven = NOT_GIVEN,
662
- subnet_id: str | NotGiven = NOT_GIVEN,
663
- network_id: str | NotGiven = NOT_GIVEN,
664
- ip_address: str | NotGiven = NOT_GIVEN,
665
- port_id: str | NotGiven = NOT_GIVEN,
666
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
718
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
719
+ is_vip: bool | Omit = omit,
720
+ subnet_id: str | Omit = omit,
721
+ network_id: str | Omit = omit,
722
+ ip_address: str | Omit = omit,
723
+ port_id: str | Omit = omit,
724
+ polling_interval_seconds: int | Omit = omit,
667
725
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
668
726
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
669
727
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -719,7 +777,7 @@ class ReservedFixedIPsResource(SyncAPIResource):
719
777
  *,
720
778
  project_id: int | None = None,
721
779
  region_id: int | None = None,
722
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
780
+ polling_interval_seconds: int | Omit = omit,
723
781
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
724
782
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
725
783
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -779,14 +837,14 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
779
837
  project_id: int | None = None,
780
838
  region_id: int | None = None,
781
839
  type: Literal["external"],
782
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
783
- is_vip: bool | NotGiven = NOT_GIVEN,
840
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
841
+ is_vip: bool | Omit = omit,
784
842
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
785
843
  # The extra values given here take precedence over values defined on the client or passed to this method.
786
844
  extra_headers: Headers | None = None,
787
845
  extra_query: Query | None = None,
788
846
  extra_body: Body | None = None,
789
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
847
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
790
848
  ) -> TaskIDList:
791
849
  """
792
850
  Create a new reserved fixed IP with the specified configuration.
@@ -816,13 +874,13 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
816
874
  region_id: int | None = None,
817
875
  subnet_id: str,
818
876
  type: Literal["subnet"],
819
- is_vip: bool | NotGiven = NOT_GIVEN,
877
+ is_vip: bool | Omit = omit,
820
878
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
821
879
  # The extra values given here take precedence over values defined on the client or passed to this method.
822
880
  extra_headers: Headers | None = None,
823
881
  extra_query: Query | None = None,
824
882
  extra_body: Body | None = None,
825
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
883
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
826
884
  ) -> TaskIDList:
827
885
  """
828
886
  Create a new reserved fixed IP with the specified configuration.
@@ -852,14 +910,14 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
852
910
  region_id: int | None = None,
853
911
  network_id: str,
854
912
  type: Literal["any_subnet"],
855
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
856
- is_vip: bool | NotGiven = NOT_GIVEN,
913
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
914
+ is_vip: bool | Omit = omit,
857
915
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
858
916
  # The extra values given here take precedence over values defined on the client or passed to this method.
859
917
  extra_headers: Headers | None = None,
860
918
  extra_query: Query | None = None,
861
919
  extra_body: Body | None = None,
862
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
920
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
863
921
  ) -> TaskIDList:
864
922
  """
865
923
  Create a new reserved fixed IP with the specified configuration.
@@ -892,13 +950,13 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
892
950
  ip_address: str,
893
951
  network_id: str,
894
952
  type: Literal["ip_address"],
895
- is_vip: bool | NotGiven = NOT_GIVEN,
953
+ is_vip: bool | Omit = omit,
896
954
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
897
955
  # The extra values given here take precedence over values defined on the client or passed to this method.
898
956
  extra_headers: Headers | None = None,
899
957
  extra_query: Query | None = None,
900
958
  extra_body: Body | None = None,
901
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
959
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
902
960
  ) -> TaskIDList:
903
961
  """
904
962
  Create a new reserved fixed IP with the specified configuration.
@@ -935,7 +993,7 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
935
993
  extra_headers: Headers | None = None,
936
994
  extra_query: Query | None = None,
937
995
  extra_body: Body | None = None,
938
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
996
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
939
997
  ) -> TaskIDList:
940
998
  """
941
999
  Create a new reserved fixed IP with the specified configuration.
@@ -969,25 +1027,27 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
969
1027
  project_id: int | None = None,
970
1028
  region_id: int | None = None,
971
1029
  type: Literal["external"] | Literal["subnet"] | Literal["any_subnet"] | Literal["ip_address"] | Literal["port"],
972
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
973
- is_vip: bool | NotGiven = NOT_GIVEN,
974
- subnet_id: str | NotGiven = NOT_GIVEN,
975
- network_id: str | NotGiven = NOT_GIVEN,
976
- ip_address: str | NotGiven = NOT_GIVEN,
977
- port_id: str | NotGiven = NOT_GIVEN,
1030
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
1031
+ is_vip: bool | Omit = omit,
1032
+ subnet_id: str | Omit = omit,
1033
+ network_id: str | Omit = omit,
1034
+ ip_address: str | Omit = omit,
1035
+ port_id: str | Omit = omit,
978
1036
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
979
1037
  # The extra values given here take precedence over values defined on the client or passed to this method.
980
1038
  extra_headers: Headers | None = None,
981
1039
  extra_query: Query | None = None,
982
1040
  extra_body: Body | None = None,
983
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1041
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
984
1042
  ) -> TaskIDList:
985
1043
  if project_id is None:
986
1044
  project_id = self._client._get_cloud_project_id_path_param()
987
1045
  if region_id is None:
988
1046
  region_id = self._client._get_cloud_region_id_path_param()
989
1047
  return await self._post(
990
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
1048
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}"
1049
+ if self._client._base_url_overridden
1050
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
991
1051
  body=await async_maybe_transform(
992
1052
  {
993
1053
  "type": type,
@@ -1006,26 +1066,73 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1006
1066
  cast_to=TaskIDList,
1007
1067
  )
1008
1068
 
1069
+ async def update(
1070
+ self,
1071
+ port_id: str,
1072
+ *,
1073
+ project_id: int | None = None,
1074
+ region_id: int | None = None,
1075
+ is_vip: bool,
1076
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1077
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1078
+ extra_headers: Headers | None = None,
1079
+ extra_query: Query | None = None,
1080
+ extra_body: Body | None = None,
1081
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1082
+ ) -> ReservedFixedIP:
1083
+ """
1084
+ Update the VIP status of a reserved fixed IP.
1085
+
1086
+ Args:
1087
+ is_vip: If reserved fixed IP should be a VIP
1088
+
1089
+ extra_headers: Send extra headers
1090
+
1091
+ extra_query: Add additional query parameters to the request
1092
+
1093
+ extra_body: Add additional JSON properties to the request
1094
+
1095
+ timeout: Override the client-level default timeout for this request, in seconds
1096
+ """
1097
+ if project_id is None:
1098
+ project_id = self._client._get_cloud_project_id_path_param()
1099
+ if region_id is None:
1100
+ region_id = self._client._get_cloud_region_id_path_param()
1101
+ if not port_id:
1102
+ raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
1103
+ return await self._patch(
1104
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
1105
+ if self._client._base_url_overridden
1106
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
1107
+ body=await async_maybe_transform(
1108
+ {"is_vip": is_vip}, reserved_fixed_ip_update_params.ReservedFixedIPUpdateParams
1109
+ ),
1110
+ options=make_request_options(
1111
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1112
+ ),
1113
+ cast_to=ReservedFixedIP,
1114
+ )
1115
+
1009
1116
  def list(
1010
1117
  self,
1011
1118
  *,
1012
1119
  project_id: int | None = None,
1013
1120
  region_id: int | None = None,
1014
- available_only: bool | NotGiven = NOT_GIVEN,
1015
- device_id: str | NotGiven = NOT_GIVEN,
1016
- external_only: bool | NotGiven = NOT_GIVEN,
1017
- internal_only: bool | NotGiven = NOT_GIVEN,
1018
- ip_address: str | NotGiven = NOT_GIVEN,
1019
- limit: int | NotGiven = NOT_GIVEN,
1020
- offset: int | NotGiven = NOT_GIVEN,
1021
- order_by: str | NotGiven = NOT_GIVEN,
1022
- vip_only: bool | NotGiven = NOT_GIVEN,
1121
+ available_only: bool | Omit = omit,
1122
+ device_id: str | Omit = omit,
1123
+ external_only: bool | Omit = omit,
1124
+ internal_only: bool | Omit = omit,
1125
+ ip_address: str | Omit = omit,
1126
+ limit: int | Omit = omit,
1127
+ offset: int | Omit = omit,
1128
+ order_by: str | Omit = omit,
1129
+ vip_only: bool | Omit = omit,
1023
1130
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1024
1131
  # The extra values given here take precedence over values defined on the client or passed to this method.
1025
1132
  extra_headers: Headers | None = None,
1026
1133
  extra_query: Query | None = None,
1027
1134
  extra_body: Body | None = None,
1028
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1135
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1029
1136
  ) -> AsyncPaginator[ReservedFixedIP, AsyncOffsetPage[ReservedFixedIP]]:
1030
1137
  """
1031
1138
  List all reserved fixed IPs in the specified project and region.
@@ -1065,7 +1172,9 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1065
1172
  if region_id is None:
1066
1173
  region_id = self._client._get_cloud_region_id_path_param()
1067
1174
  return self._get_api_list(
1068
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
1175
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}"
1176
+ if self._client._base_url_overridden
1177
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}",
1069
1178
  page=AsyncOffsetPage[ReservedFixedIP],
1070
1179
  options=make_request_options(
1071
1180
  extra_headers=extra_headers,
@@ -1101,7 +1210,7 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1101
1210
  extra_headers: Headers | None = None,
1102
1211
  extra_query: Query | None = None,
1103
1212
  extra_body: Body | None = None,
1104
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1213
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1105
1214
  ) -> TaskIDList:
1106
1215
  """
1107
1216
  Delete a specific reserved fixed IP and all its associated resources.
@@ -1122,7 +1231,9 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1122
1231
  if not port_id:
1123
1232
  raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
1124
1233
  return await self._delete(
1125
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
1234
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
1235
+ if self._client._base_url_overridden
1236
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
1126
1237
  options=make_request_options(
1127
1238
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1128
1239
  ),
@@ -1140,7 +1251,7 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1140
1251
  extra_headers: Headers | None = None,
1141
1252
  extra_query: Query | None = None,
1142
1253
  extra_body: Body | None = None,
1143
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1254
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1144
1255
  ) -> ReservedFixedIP:
1145
1256
  """
1146
1257
  Get detailed information about a specific reserved fixed IP.
@@ -1161,7 +1272,9 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1161
1272
  if not port_id:
1162
1273
  raise ValueError(f"Expected a non-empty value for `port_id` but received {port_id!r}")
1163
1274
  return await self._get(
1164
- f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
1275
+ f"/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}"
1276
+ if self._client._base_url_overridden
1277
+ else f"https://api.gcore.com//cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}",
1165
1278
  options=make_request_options(
1166
1279
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1167
1280
  ),
@@ -1175,9 +1288,9 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1175
1288
  project_id: int | None = None,
1176
1289
  region_id: int | None = None,
1177
1290
  type: Literal["external"],
1178
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
1179
- is_vip: bool | NotGiven = NOT_GIVEN,
1180
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1291
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
1292
+ is_vip: bool | Omit = omit,
1293
+ polling_interval_seconds: int | Omit = omit,
1181
1294
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1182
1295
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1183
1296
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1213,8 +1326,8 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1213
1326
  region_id: int | None = None,
1214
1327
  subnet_id: str,
1215
1328
  type: Literal["subnet"],
1216
- is_vip: bool | NotGiven = NOT_GIVEN,
1217
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1329
+ is_vip: bool | Omit = omit,
1330
+ polling_interval_seconds: int | Omit = omit,
1218
1331
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1219
1332
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1220
1333
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1250,9 +1363,9 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1250
1363
  region_id: int | None = None,
1251
1364
  network_id: str,
1252
1365
  type: Literal["any_subnet"],
1253
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
1254
- is_vip: bool | NotGiven = NOT_GIVEN,
1255
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1366
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
1367
+ is_vip: bool | Omit = omit,
1368
+ polling_interval_seconds: int | Omit = omit,
1256
1369
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1257
1370
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1258
1371
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1291,8 +1404,8 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1291
1404
  ip_address: str,
1292
1405
  network_id: str,
1293
1406
  type: Literal["ip_address"],
1294
- is_vip: bool | NotGiven = NOT_GIVEN,
1295
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1407
+ is_vip: bool | Omit = omit,
1408
+ polling_interval_seconds: int | Omit = omit,
1296
1409
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1297
1410
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1298
1411
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1330,7 +1443,7 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1330
1443
  region_id: int | None = None,
1331
1444
  port_id: str,
1332
1445
  type: Literal["port"],
1333
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1446
+ polling_interval_seconds: int | Omit = omit,
1334
1447
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1335
1448
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1336
1449
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1370,13 +1483,13 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1370
1483
  project_id: int | None = None,
1371
1484
  region_id: int | None = None,
1372
1485
  type: Literal["external"] | Literal["subnet"] | Literal["any_subnet"] | Literal["ip_address"] | Literal["port"],
1373
- ip_family: Optional[InterfaceIPFamily] | NotGiven = NOT_GIVEN,
1374
- is_vip: bool | NotGiven = NOT_GIVEN,
1375
- subnet_id: str | NotGiven = NOT_GIVEN,
1376
- network_id: str | NotGiven = NOT_GIVEN,
1377
- ip_address: str | NotGiven = NOT_GIVEN,
1378
- port_id: str | NotGiven = NOT_GIVEN,
1379
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1486
+ ip_family: Optional[InterfaceIPFamily] | Omit = omit,
1487
+ is_vip: bool | Omit = omit,
1488
+ subnet_id: str | Omit = omit,
1489
+ network_id: str | Omit = omit,
1490
+ ip_address: str | Omit = omit,
1491
+ port_id: str | Omit = omit,
1492
+ polling_interval_seconds: int | Omit = omit,
1380
1493
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1381
1494
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1382
1495
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1432,7 +1545,7 @@ class AsyncReservedFixedIPsResource(AsyncAPIResource):
1432
1545
  *,
1433
1546
  project_id: int | None = None,
1434
1547
  region_id: int | None = None,
1435
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
1548
+ polling_interval_seconds: int | Omit = omit,
1436
1549
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1437
1550
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1438
1551
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1468,6 +1581,9 @@ class ReservedFixedIPsResourceWithRawResponse:
1468
1581
  self.create = to_raw_response_wrapper(
1469
1582
  reserved_fixed_ips.create,
1470
1583
  )
1584
+ self.update = to_raw_response_wrapper(
1585
+ reserved_fixed_ips.update,
1586
+ )
1471
1587
  self.list = to_raw_response_wrapper(
1472
1588
  reserved_fixed_ips.list,
1473
1589
  )
@@ -1496,6 +1612,9 @@ class AsyncReservedFixedIPsResourceWithRawResponse:
1496
1612
  self.create = async_to_raw_response_wrapper(
1497
1613
  reserved_fixed_ips.create,
1498
1614
  )
1615
+ self.update = async_to_raw_response_wrapper(
1616
+ reserved_fixed_ips.update,
1617
+ )
1499
1618
  self.list = async_to_raw_response_wrapper(
1500
1619
  reserved_fixed_ips.list,
1501
1620
  )
@@ -1524,6 +1643,9 @@ class ReservedFixedIPsResourceWithStreamingResponse:
1524
1643
  self.create = to_streamed_response_wrapper(
1525
1644
  reserved_fixed_ips.create,
1526
1645
  )
1646
+ self.update = to_streamed_response_wrapper(
1647
+ reserved_fixed_ips.update,
1648
+ )
1527
1649
  self.list = to_streamed_response_wrapper(
1528
1650
  reserved_fixed_ips.list,
1529
1651
  )
@@ -1552,6 +1674,9 @@ class AsyncReservedFixedIPsResourceWithStreamingResponse:
1552
1674
  self.create = async_to_streamed_response_wrapper(
1553
1675
  reserved_fixed_ips.create,
1554
1676
  )
1677
+ self.update = async_to_streamed_response_wrapper(
1678
+ reserved_fixed_ips.update,
1679
+ )
1555
1680
  self.list = async_to_streamed_response_wrapper(
1556
1681
  reserved_fixed_ips.list,
1557
1682
  )