gcore 0.12.0__py3-none-any.whl → 0.14.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 (340) 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 +270 -52
  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 +105 -81
  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 +123 -107
  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 +247 -189
  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 +43 -27
  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 +70 -38
  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 +1977 -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 +1825 -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 +1803 -0
  233. gcore/types/cdn/resource_update_params.py +1794 -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 +1695 -0
  237. gcore/types/cdn/resources/origin_shielding.py +15 -0
  238. gcore/types/cdn/resources/rule_create_params.py +1652 -0
  239. gcore/types/cdn/resources/rule_list_response.py +10 -0
  240. gcore/types/cdn/resources/rule_replace_params.py +1654 -0
  241. gcore/types/cdn/resources/rule_update_params.py +1654 -0
  242. gcore/types/cdn/resources/shield_replace_params.py +16 -0
  243. gcore/types/cdn/rule_template.py +1666 -0
  244. gcore/types/cdn/rule_template_create_params.py +1636 -0
  245. gcore/types/cdn/rule_template_list.py +10 -0
  246. gcore/types/cdn/rule_template_replace_params.py +1636 -0
  247. gcore/types/cdn/rule_template_update_params.py +1636 -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.py +1 -1
  268. gcore/types/cloud/floating_ip_detailed.py +1 -1
  269. gcore/types/cloud/floating_ip_update_params.py +43 -0
  270. gcore/types/cloud/gpu_baremetal_cluster_action_params.py +46 -0
  271. gcore/types/cloud/inference/inference_deployment.py +3 -1
  272. gcore/types/cloud/instance_create_params.py +3 -1
  273. gcore/types/cloud/k8s/cluster_create_params.py +46 -4
  274. gcore/types/cloud/k8s/cluster_update_params.py +60 -6
  275. gcore/types/cloud/k8s/clusters/pool_update_params.py +1 -1
  276. gcore/types/cloud/k8s/k8s_cluster.py +40 -3
  277. gcore/types/cloud/load_balancer_update_params.py +3 -1
  278. gcore/types/cloud/network_update_params.py +3 -1
  279. gcore/types/cloud/networks/subnet_update_params.py +3 -1
  280. gcore/types/cloud/registries/user_create_multiple_params.py +5 -3
  281. gcore/types/cloud/registries/user_create_params.py +5 -3
  282. gcore/types/cloud/registry_create_params.py +5 -3
  283. gcore/types/cloud/security_group_update_params.py +3 -1
  284. gcore/types/cloud/ssh_key_created.py +6 -3
  285. gcore/types/cloud/volume_update_params.py +3 -1
  286. gcore/types/dns/zone_get_statistics_params.py +12 -9
  287. gcore/types/dns/zone_get_statistics_response.py +3 -1
  288. gcore/types/dns/zone_import_params.py +21 -15
  289. gcore/types/dns/zones/dns_output_rrset.py +7 -3
  290. gcore/types/iam/account_overview.py +7 -2
  291. gcore/types/iam/user.py +7 -2
  292. gcore/types/iam/user_detailed.py +7 -2
  293. gcore/types/iam/user_invite_params.py +4 -1
  294. gcore/types/iam/user_update.py +7 -2
  295. gcore/types/iam/user_update_params.py +7 -2
  296. gcore/types/streaming/ai_contentmoderation_hardnudity.py +6 -4
  297. gcore/types/streaming/ai_contentmoderation_nsfw.py +6 -4
  298. gcore/types/streaming/ai_contentmoderation_softnudity.py +6 -4
  299. gcore/types/streaming/ai_contentmoderation_sport.py +6 -4
  300. gcore/types/streaming/ai_task.py +20 -11
  301. gcore/types/streaming/ai_task_create_params.py +20 -11
  302. gcore/types/streaming/ai_task_get_response.py +5 -4
  303. gcore/types/streaming/ai_task_list_params.py +11 -5
  304. gcore/types/streaming/clip.py +33 -22
  305. gcore/types/streaming/create_video_param.py +75 -43
  306. gcore/types/streaming/playlist.py +7 -5
  307. gcore/types/streaming/playlist_create_params.py +7 -5
  308. gcore/types/streaming/playlist_update_params.py +7 -5
  309. gcore/types/streaming/playlist_video.py +75 -43
  310. gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +7 -4
  311. gcore/types/streaming/stream.py +207 -136
  312. gcore/types/streaming/stream_create_clip_params.py +33 -22
  313. gcore/types/streaming/stream_create_params.py +41 -24
  314. gcore/types/streaming/stream_update_params.py +41 -24
  315. gcore/types/streaming/video.py +138 -76
  316. gcore/types/streaming/video_list_params.py +4 -2
  317. gcore/types/streaming/video_update_params.py +75 -43
  318. gcore/types/waap/__init__.py +2 -1
  319. gcore/types/waap/domain_update_params.py +2 -2
  320. gcore/types/waap/domains/advanced_rule_create_params.py +26 -18
  321. gcore/types/waap/domains/advanced_rule_list_params.py +10 -7
  322. gcore/types/waap/domains/advanced_rule_update_params.py +22 -17
  323. gcore/types/waap/domains/api_path_create_params.py +0 -3
  324. gcore/types/waap/domains/api_path_update_params.py +1 -3
  325. gcore/types/waap/domains/custom_rule_create_params.py +36 -35
  326. gcore/types/waap/domains/custom_rule_update_params.py +31 -33
  327. gcore/types/waap/domains/firewall_rule_create_params.py +6 -6
  328. gcore/types/waap/domains/firewall_rule_update_params.py +5 -5
  329. gcore/types/waap/domains/waap_advanced_rule.py +17 -9
  330. gcore/types/waap/domains/waap_custom_rule.py +5 -2
  331. gcore/types/waap/domains/waap_firewall_rule.py +1 -1
  332. gcore/types/waap/domains/waap_insight.py +1 -1
  333. gcore/types/waap/insight_list_types_params.py +1 -1
  334. gcore/types/waap/ip_info_get_top_urls_response.py +3 -12
  335. gcore/types/waap/{ip_info_get_ip_info_response.py → waap_ip_info.py} +2 -2
  336. gcore/types/waap/waap_top_url.py +13 -0
  337. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/METADATA +1 -1
  338. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/RECORD +340 -218
  339. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/WHEEL +0 -0
  340. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/licenses/LICENSE +0 -0
@@ -7,7 +7,7 @@ from typing_extensions import Literal
7
7
 
8
8
  import httpx
9
9
 
10
- from ...._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven, SequenceNotStr
10
+ from ...._types import NOT_GIVEN, Body, Omit, Query, Headers, NoneType, NotGiven, SequenceNotStr, omit, not_given
11
11
  from ...._utils import maybe_transform, async_maybe_transform
12
12
  from ...._compat import cached_property
13
13
  from ...._resource import SyncAPIResource, AsyncAPIResource
@@ -57,20 +57,20 @@ class SubnetsResource(SyncAPIResource):
57
57
  cidr: str,
58
58
  name: str,
59
59
  network_id: str,
60
- connect_to_network_router: bool | NotGiven = NOT_GIVEN,
61
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
62
- enable_dhcp: bool | NotGiven = NOT_GIVEN,
63
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
64
- host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
65
- ip_version: IPVersion | NotGiven = NOT_GIVEN,
66
- router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
67
- tags: Dict[str, str] | NotGiven = NOT_GIVEN,
60
+ connect_to_network_router: bool | Omit = omit,
61
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
62
+ enable_dhcp: bool | Omit = omit,
63
+ gateway_ip: Optional[str] | Omit = omit,
64
+ host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | Omit = omit,
65
+ ip_version: IPVersion | Omit = omit,
66
+ router_id_to_connect: Optional[str] | Omit = omit,
67
+ tags: Dict[str, str] | Omit = omit,
68
68
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
69
69
  # The extra values given here take precedence over values defined on the client or passed to this method.
70
70
  extra_headers: Headers | None = None,
71
71
  extra_query: Query | None = None,
72
72
  extra_body: Body | None = None,
73
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
73
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
74
74
  ) -> TaskIDList:
75
75
  """
76
76
  Create subnet
@@ -125,7 +125,9 @@ class SubnetsResource(SyncAPIResource):
125
125
  if region_id is None:
126
126
  region_id = self._client._get_cloud_region_id_path_param()
127
127
  return self._post(
128
- f"/cloud/v1/subnets/{project_id}/{region_id}",
128
+ f"/cloud/v1/subnets/{project_id}/{region_id}"
129
+ if self._client._base_url_overridden
130
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}",
129
131
  body=maybe_transform(
130
132
  {
131
133
  "cidr": cidr,
@@ -156,15 +158,15 @@ class SubnetsResource(SyncAPIResource):
156
158
  cidr: str,
157
159
  name: str,
158
160
  network_id: str,
159
- connect_to_network_router: bool | NotGiven = NOT_GIVEN,
160
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
161
- enable_dhcp: bool | NotGiven = NOT_GIVEN,
162
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
163
- host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
164
- ip_version: IPVersion | NotGiven = NOT_GIVEN,
165
- router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
166
- tags: Dict[str, str] | NotGiven = NOT_GIVEN,
167
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
161
+ connect_to_network_router: bool | Omit = omit,
162
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
163
+ enable_dhcp: bool | Omit = omit,
164
+ gateway_ip: Optional[str] | Omit = omit,
165
+ host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | Omit = omit,
166
+ ip_version: IPVersion | Omit = omit,
167
+ router_id_to_connect: Optional[str] | Omit = omit,
168
+ tags: Dict[str, str] | Omit = omit,
169
+ polling_interval_seconds: int | Omit = omit,
168
170
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
169
171
  # The extra values given here take precedence over values defined on the client or passed to this method.
170
172
  extra_headers: Headers | None = None,
@@ -214,18 +216,18 @@ class SubnetsResource(SyncAPIResource):
214
216
  *,
215
217
  project_id: int | None = None,
216
218
  region_id: int | None = None,
217
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
218
- enable_dhcp: Optional[bool] | NotGiven = NOT_GIVEN,
219
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
220
- host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | NotGiven = NOT_GIVEN,
221
- name: Optional[str] | NotGiven = NOT_GIVEN,
222
- tags: Optional[TagUpdateMapParam] | NotGiven = NOT_GIVEN,
219
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
220
+ enable_dhcp: Optional[bool] | Omit = omit,
221
+ gateway_ip: Optional[str] | Omit = omit,
222
+ host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | Omit = omit,
223
+ name: Optional[str] | Omit = omit,
224
+ tags: Optional[TagUpdateMapParam] | Omit = omit,
223
225
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
224
226
  # The extra values given here take precedence over values defined on the client or passed to this method.
225
227
  extra_headers: Headers | None = None,
226
228
  extra_query: Query | None = None,
227
229
  extra_body: Body | None = None,
228
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
230
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
229
231
  ) -> Subnet:
230
232
  """
231
233
  Update subnet
@@ -253,7 +255,9 @@ class SubnetsResource(SyncAPIResource):
253
255
  tags: Update key-value tags using JSON Merge Patch semantics (RFC 7386). Provide
254
256
  key-value pairs to add or update tags. Set tag values to `null` to remove tags.
255
257
  Unspecified tags remain unchanged. Read-only tags are always preserved and
256
- cannot be modified. **Examples:**
258
+ cannot be modified.
259
+
260
+ **Examples:**
257
261
 
258
262
  - **Add/update tags:**
259
263
  `{'tags': {'environment': 'production', 'team': 'backend'}}` adds new tags or
@@ -285,7 +289,9 @@ class SubnetsResource(SyncAPIResource):
285
289
  if not subnet_id:
286
290
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
287
291
  return self._patch(
288
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
292
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
293
+ if self._client._base_url_overridden
294
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
289
295
  body=maybe_transform(
290
296
  {
291
297
  "dns_nameservers": dns_nameservers,
@@ -308,9 +314,9 @@ class SubnetsResource(SyncAPIResource):
308
314
  *,
309
315
  project_id: int | None = None,
310
316
  region_id: int | None = None,
311
- limit: int | NotGiven = NOT_GIVEN,
312
- network_id: str | NotGiven = NOT_GIVEN,
313
- offset: int | NotGiven = NOT_GIVEN,
317
+ limit: int | Omit = omit,
318
+ network_id: str | Omit = omit,
319
+ offset: int | Omit = omit,
314
320
  order_by: Literal[
315
321
  "available_ips.asc",
316
322
  "available_ips.desc",
@@ -325,15 +331,15 @@ class SubnetsResource(SyncAPIResource):
325
331
  "updated_at.asc",
326
332
  "updated_at.desc",
327
333
  ]
328
- | NotGiven = NOT_GIVEN,
329
- tag_key: SequenceNotStr[str] | NotGiven = NOT_GIVEN,
330
- tag_key_value: str | NotGiven = NOT_GIVEN,
334
+ | Omit = omit,
335
+ tag_key: SequenceNotStr[str] | Omit = omit,
336
+ tag_key_value: str | Omit = omit,
331
337
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
332
338
  # The extra values given here take precedence over values defined on the client or passed to this method.
333
339
  extra_headers: Headers | None = None,
334
340
  extra_query: Query | None = None,
335
341
  extra_body: Body | None = None,
336
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
342
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
337
343
  ) -> SyncOffsetPage[Subnet]:
338
344
  """
339
345
  List subnets
@@ -371,7 +377,9 @@ class SubnetsResource(SyncAPIResource):
371
377
  if region_id is None:
372
378
  region_id = self._client._get_cloud_region_id_path_param()
373
379
  return self._get_api_list(
374
- f"/cloud/v1/subnets/{project_id}/{region_id}",
380
+ f"/cloud/v1/subnets/{project_id}/{region_id}"
381
+ if self._client._base_url_overridden
382
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}",
375
383
  page=SyncOffsetPage[Subnet],
376
384
  options=make_request_options(
377
385
  extra_headers=extra_headers,
@@ -404,7 +412,7 @@ class SubnetsResource(SyncAPIResource):
404
412
  extra_headers: Headers | None = None,
405
413
  extra_query: Query | None = None,
406
414
  extra_body: Body | None = None,
407
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
415
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
408
416
  ) -> None:
409
417
  """
410
418
  Delete subnet
@@ -432,7 +440,9 @@ class SubnetsResource(SyncAPIResource):
432
440
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
433
441
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
434
442
  return self._delete(
435
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
443
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
444
+ if self._client._base_url_overridden
445
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
436
446
  options=make_request_options(
437
447
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
438
448
  ),
@@ -450,7 +460,7 @@ class SubnetsResource(SyncAPIResource):
450
460
  extra_headers: Headers | None = None,
451
461
  extra_query: Query | None = None,
452
462
  extra_body: Body | None = None,
453
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
463
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
454
464
  ) -> Subnet:
455
465
  """
456
466
  Get subnet
@@ -477,7 +487,9 @@ class SubnetsResource(SyncAPIResource):
477
487
  if not subnet_id:
478
488
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
479
489
  return self._get(
480
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
490
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
491
+ if self._client._base_url_overridden
492
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
481
493
  options=make_request_options(
482
494
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
483
495
  ),
@@ -513,20 +525,20 @@ class AsyncSubnetsResource(AsyncAPIResource):
513
525
  cidr: str,
514
526
  name: str,
515
527
  network_id: str,
516
- connect_to_network_router: bool | NotGiven = NOT_GIVEN,
517
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
518
- enable_dhcp: bool | NotGiven = NOT_GIVEN,
519
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
520
- host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
521
- ip_version: IPVersion | NotGiven = NOT_GIVEN,
522
- router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
523
- tags: Dict[str, str] | NotGiven = NOT_GIVEN,
528
+ connect_to_network_router: bool | Omit = omit,
529
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
530
+ enable_dhcp: bool | Omit = omit,
531
+ gateway_ip: Optional[str] | Omit = omit,
532
+ host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | Omit = omit,
533
+ ip_version: IPVersion | Omit = omit,
534
+ router_id_to_connect: Optional[str] | Omit = omit,
535
+ tags: Dict[str, str] | Omit = omit,
524
536
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
525
537
  # The extra values given here take precedence over values defined on the client or passed to this method.
526
538
  extra_headers: Headers | None = None,
527
539
  extra_query: Query | None = None,
528
540
  extra_body: Body | None = None,
529
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
541
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
530
542
  ) -> TaskIDList:
531
543
  """
532
544
  Create subnet
@@ -581,7 +593,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
581
593
  if region_id is None:
582
594
  region_id = self._client._get_cloud_region_id_path_param()
583
595
  return await self._post(
584
- f"/cloud/v1/subnets/{project_id}/{region_id}",
596
+ f"/cloud/v1/subnets/{project_id}/{region_id}"
597
+ if self._client._base_url_overridden
598
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}",
585
599
  body=await async_maybe_transform(
586
600
  {
587
601
  "cidr": cidr,
@@ -612,15 +626,15 @@ class AsyncSubnetsResource(AsyncAPIResource):
612
626
  cidr: str,
613
627
  name: str,
614
628
  network_id: str,
615
- connect_to_network_router: bool | NotGiven = NOT_GIVEN,
616
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
617
- enable_dhcp: bool | NotGiven = NOT_GIVEN,
618
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
619
- host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | NotGiven = NOT_GIVEN,
620
- ip_version: IPVersion | NotGiven = NOT_GIVEN,
621
- router_id_to_connect: Optional[str] | NotGiven = NOT_GIVEN,
622
- tags: Dict[str, str] | NotGiven = NOT_GIVEN,
623
- polling_interval_seconds: int | NotGiven = NOT_GIVEN,
629
+ connect_to_network_router: bool | Omit = omit,
630
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
631
+ enable_dhcp: bool | Omit = omit,
632
+ gateway_ip: Optional[str] | Omit = omit,
633
+ host_routes: Optional[Iterable[subnet_create_params.HostRoute]] | Omit = omit,
634
+ ip_version: IPVersion | Omit = omit,
635
+ router_id_to_connect: Optional[str] | Omit = omit,
636
+ tags: Dict[str, str] | Omit = omit,
637
+ polling_interval_seconds: int | Omit = omit,
624
638
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
625
639
  # The extra values given here take precedence over values defined on the client or passed to this method.
626
640
  extra_headers: Headers | None = None,
@@ -670,18 +684,18 @@ class AsyncSubnetsResource(AsyncAPIResource):
670
684
  *,
671
685
  project_id: int | None = None,
672
686
  region_id: int | None = None,
673
- dns_nameservers: Optional[SequenceNotStr[str]] | NotGiven = NOT_GIVEN,
674
- enable_dhcp: Optional[bool] | NotGiven = NOT_GIVEN,
675
- gateway_ip: Optional[str] | NotGiven = NOT_GIVEN,
676
- host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | NotGiven = NOT_GIVEN,
677
- name: Optional[str] | NotGiven = NOT_GIVEN,
678
- tags: Optional[TagUpdateMapParam] | NotGiven = NOT_GIVEN,
687
+ dns_nameservers: Optional[SequenceNotStr[str]] | Omit = omit,
688
+ enable_dhcp: Optional[bool] | Omit = omit,
689
+ gateway_ip: Optional[str] | Omit = omit,
690
+ host_routes: Optional[Iterable[subnet_update_params.HostRoute]] | Omit = omit,
691
+ name: Optional[str] | Omit = omit,
692
+ tags: Optional[TagUpdateMapParam] | Omit = omit,
679
693
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
680
694
  # The extra values given here take precedence over values defined on the client or passed to this method.
681
695
  extra_headers: Headers | None = None,
682
696
  extra_query: Query | None = None,
683
697
  extra_body: Body | None = None,
684
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
698
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
685
699
  ) -> Subnet:
686
700
  """
687
701
  Update subnet
@@ -709,7 +723,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
709
723
  tags: Update key-value tags using JSON Merge Patch semantics (RFC 7386). Provide
710
724
  key-value pairs to add or update tags. Set tag values to `null` to remove tags.
711
725
  Unspecified tags remain unchanged. Read-only tags are always preserved and
712
- cannot be modified. **Examples:**
726
+ cannot be modified.
727
+
728
+ **Examples:**
713
729
 
714
730
  - **Add/update tags:**
715
731
  `{'tags': {'environment': 'production', 'team': 'backend'}}` adds new tags or
@@ -741,7 +757,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
741
757
  if not subnet_id:
742
758
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
743
759
  return await self._patch(
744
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
760
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
761
+ if self._client._base_url_overridden
762
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
745
763
  body=await async_maybe_transform(
746
764
  {
747
765
  "dns_nameservers": dns_nameservers,
@@ -764,9 +782,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
764
782
  *,
765
783
  project_id: int | None = None,
766
784
  region_id: int | None = None,
767
- limit: int | NotGiven = NOT_GIVEN,
768
- network_id: str | NotGiven = NOT_GIVEN,
769
- offset: int | NotGiven = NOT_GIVEN,
785
+ limit: int | Omit = omit,
786
+ network_id: str | Omit = omit,
787
+ offset: int | Omit = omit,
770
788
  order_by: Literal[
771
789
  "available_ips.asc",
772
790
  "available_ips.desc",
@@ -781,15 +799,15 @@ class AsyncSubnetsResource(AsyncAPIResource):
781
799
  "updated_at.asc",
782
800
  "updated_at.desc",
783
801
  ]
784
- | NotGiven = NOT_GIVEN,
785
- tag_key: SequenceNotStr[str] | NotGiven = NOT_GIVEN,
786
- tag_key_value: str | NotGiven = NOT_GIVEN,
802
+ | Omit = omit,
803
+ tag_key: SequenceNotStr[str] | Omit = omit,
804
+ tag_key_value: str | Omit = omit,
787
805
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
788
806
  # The extra values given here take precedence over values defined on the client or passed to this method.
789
807
  extra_headers: Headers | None = None,
790
808
  extra_query: Query | None = None,
791
809
  extra_body: Body | None = None,
792
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
810
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
793
811
  ) -> AsyncPaginator[Subnet, AsyncOffsetPage[Subnet]]:
794
812
  """
795
813
  List subnets
@@ -827,7 +845,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
827
845
  if region_id is None:
828
846
  region_id = self._client._get_cloud_region_id_path_param()
829
847
  return self._get_api_list(
830
- f"/cloud/v1/subnets/{project_id}/{region_id}",
848
+ f"/cloud/v1/subnets/{project_id}/{region_id}"
849
+ if self._client._base_url_overridden
850
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}",
831
851
  page=AsyncOffsetPage[Subnet],
832
852
  options=make_request_options(
833
853
  extra_headers=extra_headers,
@@ -860,7 +880,7 @@ class AsyncSubnetsResource(AsyncAPIResource):
860
880
  extra_headers: Headers | None = None,
861
881
  extra_query: Query | None = None,
862
882
  extra_body: Body | None = None,
863
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
883
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
864
884
  ) -> None:
865
885
  """
866
886
  Delete subnet
@@ -888,7 +908,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
888
908
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
889
909
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
890
910
  return await self._delete(
891
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
911
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
912
+ if self._client._base_url_overridden
913
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
892
914
  options=make_request_options(
893
915
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
894
916
  ),
@@ -906,7 +928,7 @@ class AsyncSubnetsResource(AsyncAPIResource):
906
928
  extra_headers: Headers | None = None,
907
929
  extra_query: Query | None = None,
908
930
  extra_body: Body | None = None,
909
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
931
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
910
932
  ) -> Subnet:
911
933
  """
912
934
  Get subnet
@@ -933,7 +955,9 @@ class AsyncSubnetsResource(AsyncAPIResource):
933
955
  if not subnet_id:
934
956
  raise ValueError(f"Expected a non-empty value for `subnet_id` but received {subnet_id!r}")
935
957
  return await self._get(
936
- f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
958
+ f"/cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}"
959
+ if self._client._base_url_overridden
960
+ else f"https://api.gcore.com//cloud/v1/subnets/{project_id}/{region_id}/{subnet_id}",
937
961
  options=make_request_options(
938
962
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
939
963
  ),
@@ -6,7 +6,7 @@ from typing_extensions import Literal
6
6
 
7
7
  import httpx
8
8
 
9
- from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven
9
+ from ..._types import Body, Query, Headers, NotGiven, not_given
10
10
  from ..._utils import maybe_transform, async_maybe_transform
11
11
  from ..._compat import cached_property
12
12
  from ..._resource import SyncAPIResource, AsyncAPIResource
@@ -57,7 +57,7 @@ class PlacementGroupsResource(SyncAPIResource):
57
57
  extra_headers: Headers | None = None,
58
58
  extra_query: Query | None = None,
59
59
  extra_body: Body | None = None,
60
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
60
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
61
61
  ) -> PlacementGroup:
62
62
  """
63
63
  Create an affinity or anti-affinity or soft-anti-affinity placement group
@@ -80,7 +80,9 @@ class PlacementGroupsResource(SyncAPIResource):
80
80
  if region_id is None:
81
81
  region_id = self._client._get_cloud_region_id_path_param()
82
82
  return self._post(
83
- f"/cloud/v1/servergroups/{project_id}/{region_id}",
83
+ f"/cloud/v1/servergroups/{project_id}/{region_id}"
84
+ if self._client._base_url_overridden
85
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}",
84
86
  body=maybe_transform(
85
87
  {
86
88
  "name": name,
@@ -104,7 +106,7 @@ class PlacementGroupsResource(SyncAPIResource):
104
106
  extra_headers: Headers | None = None,
105
107
  extra_query: Query | None = None,
106
108
  extra_body: Body | None = None,
107
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
109
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
108
110
  ) -> PlacementGroupList:
109
111
  """
110
112
  List placement groups
@@ -123,7 +125,9 @@ class PlacementGroupsResource(SyncAPIResource):
123
125
  if region_id is None:
124
126
  region_id = self._client._get_cloud_region_id_path_param()
125
127
  return self._get(
126
- f"/cloud/v1/servergroups/{project_id}/{region_id}",
128
+ f"/cloud/v1/servergroups/{project_id}/{region_id}"
129
+ if self._client._base_url_overridden
130
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}",
127
131
  options=make_request_options(
128
132
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
129
133
  ),
@@ -141,7 +145,7 @@ class PlacementGroupsResource(SyncAPIResource):
141
145
  extra_headers: Headers | None = None,
142
146
  extra_query: Query | None = None,
143
147
  extra_body: Body | None = None,
144
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
148
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
145
149
  ) -> TaskIDList:
146
150
  """
147
151
  Delete placement group
@@ -162,7 +166,9 @@ class PlacementGroupsResource(SyncAPIResource):
162
166
  if not group_id:
163
167
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
164
168
  return self._delete(
165
- f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
169
+ f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}"
170
+ if self._client._base_url_overridden
171
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
166
172
  options=make_request_options(
167
173
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
168
174
  ),
@@ -180,7 +186,7 @@ class PlacementGroupsResource(SyncAPIResource):
180
186
  extra_headers: Headers | None = None,
181
187
  extra_query: Query | None = None,
182
188
  extra_body: Body | None = None,
183
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
189
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
184
190
  ) -> PlacementGroup:
185
191
  """
186
192
  Get placement group
@@ -201,7 +207,9 @@ class PlacementGroupsResource(SyncAPIResource):
201
207
  if not group_id:
202
208
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
203
209
  return self._get(
204
- f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
210
+ f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}"
211
+ if self._client._base_url_overridden
212
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
205
213
  options=make_request_options(
206
214
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
207
215
  ),
@@ -241,7 +249,7 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
241
249
  extra_headers: Headers | None = None,
242
250
  extra_query: Query | None = None,
243
251
  extra_body: Body | None = None,
244
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
252
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
245
253
  ) -> PlacementGroup:
246
254
  """
247
255
  Create an affinity or anti-affinity or soft-anti-affinity placement group
@@ -264,7 +272,9 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
264
272
  if region_id is None:
265
273
  region_id = self._client._get_cloud_region_id_path_param()
266
274
  return await self._post(
267
- f"/cloud/v1/servergroups/{project_id}/{region_id}",
275
+ f"/cloud/v1/servergroups/{project_id}/{region_id}"
276
+ if self._client._base_url_overridden
277
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}",
268
278
  body=await async_maybe_transform(
269
279
  {
270
280
  "name": name,
@@ -288,7 +298,7 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
288
298
  extra_headers: Headers | None = None,
289
299
  extra_query: Query | None = None,
290
300
  extra_body: Body | None = None,
291
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
301
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
292
302
  ) -> PlacementGroupList:
293
303
  """
294
304
  List placement groups
@@ -307,7 +317,9 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
307
317
  if region_id is None:
308
318
  region_id = self._client._get_cloud_region_id_path_param()
309
319
  return await self._get(
310
- f"/cloud/v1/servergroups/{project_id}/{region_id}",
320
+ f"/cloud/v1/servergroups/{project_id}/{region_id}"
321
+ if self._client._base_url_overridden
322
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}",
311
323
  options=make_request_options(
312
324
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
313
325
  ),
@@ -325,7 +337,7 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
325
337
  extra_headers: Headers | None = None,
326
338
  extra_query: Query | None = None,
327
339
  extra_body: Body | None = None,
328
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
340
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
329
341
  ) -> TaskIDList:
330
342
  """
331
343
  Delete placement group
@@ -346,7 +358,9 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
346
358
  if not group_id:
347
359
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
348
360
  return await self._delete(
349
- f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
361
+ f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}"
362
+ if self._client._base_url_overridden
363
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
350
364
  options=make_request_options(
351
365
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
352
366
  ),
@@ -364,7 +378,7 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
364
378
  extra_headers: Headers | None = None,
365
379
  extra_query: Query | None = None,
366
380
  extra_body: Body | None = None,
367
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
381
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
368
382
  ) -> PlacementGroup:
369
383
  """
370
384
  Get placement group
@@ -385,7 +399,9 @@ class AsyncPlacementGroupsResource(AsyncAPIResource):
385
399
  if not group_id:
386
400
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
387
401
  return await self._get(
388
- f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
402
+ f"/cloud/v1/servergroups/{project_id}/{region_id}/{group_id}"
403
+ if self._client._base_url_overridden
404
+ else f"https://api.gcore.com//cloud/v1/servergroups/{project_id}/{region_id}/{group_id}",
389
405
  options=make_request_options(
390
406
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
391
407
  ),