gcore 0.15.0__py3-none-any.whl → 0.17.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 (199) hide show
  1. gcore/_client.py +18 -8
  2. gcore/_version.py +1 -1
  3. gcore/resources/cdn/audit_log.py +4 -12
  4. gcore/resources/cdn/cdn.py +130 -39
  5. gcore/resources/cdn/certificates.py +16 -40
  6. gcore/resources/cdn/ip_ranges.py +4 -8
  7. gcore/resources/cdn/{logs/logs.py → logs.py} +13 -53
  8. gcore/resources/cdn/logs_uploader/configs.py +14 -42
  9. gcore/resources/cdn/logs_uploader/policies.py +14 -42
  10. gcore/resources/cdn/logs_uploader/targets.py +14 -42
  11. gcore/resources/cdn/metrics.py +2 -6
  12. gcore/resources/cdn/network_capacity.py +2 -6
  13. gcore/resources/cdn/origin_groups.py +12 -32
  14. gcore/resources/cdn/resources/resources.py +18 -46
  15. gcore/resources/cdn/resources/rules.py +12 -36
  16. gcore/resources/cdn/resources/shield.py +4 -12
  17. gcore/resources/cdn/rule_templates.py +12 -36
  18. gcore/resources/cdn/shields.py +2 -6
  19. gcore/resources/cdn/statistics.py +16 -40
  20. gcore/resources/cdn/trusted_ca_certificates.py +10 -30
  21. gcore/resources/cloud/audit_logs.py +2 -6
  22. gcore/resources/cloud/baremetal/flavors.py +2 -6
  23. gcore/resources/cloud/baremetal/images.py +2 -6
  24. gcore/resources/cloud/baremetal/servers.py +14 -18
  25. gcore/resources/cloud/billing_reservations.py +25 -208
  26. gcore/resources/cloud/cloud.py +18 -0
  27. gcore/resources/cloud/cost_reports.py +44 -62
  28. gcore/resources/cloud/file_shares/access_rules.py +6 -18
  29. gcore/resources/cloud/file_shares/file_shares.py +126 -42
  30. gcore/resources/cloud/floating_ips.py +22 -42
  31. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +2 -6
  32. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +30 -54
  33. gcore/resources/cloud/gpu_baremetal_clusters/images.py +16 -24
  34. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +2 -6
  35. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +18 -42
  36. gcore/resources/cloud/inference/api_keys.py +10 -30
  37. gcore/resources/cloud/inference/applications/deployments.py +135 -155
  38. gcore/resources/cloud/inference/applications/templates.py +4 -12
  39. gcore/resources/cloud/inference/deployments/deployments.py +28 -48
  40. gcore/resources/cloud/inference/deployments/logs.py +2 -6
  41. gcore/resources/cloud/inference/flavors.py +4 -12
  42. gcore/resources/cloud/inference/inference.py +2 -6
  43. gcore/resources/cloud/inference/registry_credentials.py +10 -30
  44. gcore/resources/cloud/inference/secrets.py +10 -30
  45. gcore/resources/cloud/instances/flavors.py +2 -6
  46. gcore/resources/cloud/instances/images.py +24 -36
  47. gcore/resources/cloud/instances/instances.py +119 -94
  48. gcore/resources/cloud/instances/interfaces.py +18 -18
  49. gcore/resources/cloud/instances/metrics.py +2 -6
  50. gcore/resources/cloud/ip_ranges.py +2 -6
  51. gcore/resources/cloud/k8s/clusters/clusters.py +18 -54
  52. gcore/resources/cloud/k8s/clusters/nodes.py +4 -12
  53. gcore/resources/cloud/k8s/clusters/pools/nodes.py +4 -12
  54. gcore/resources/cloud/k8s/clusters/pools/pools.py +12 -36
  55. gcore/resources/cloud/k8s/flavors.py +2 -6
  56. gcore/resources/cloud/k8s/k8s.py +2 -6
  57. gcore/resources/cloud/load_balancers/flavors.py +2 -6
  58. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +22 -30
  59. gcore/resources/cloud/load_balancers/l7_policies/rules.py +22 -30
  60. gcore/resources/cloud/load_balancers/listeners.py +38 -46
  61. gcore/resources/cloud/load_balancers/load_balancers.py +509 -521
  62. gcore/resources/cloud/load_balancers/metrics.py +8 -12
  63. gcore/resources/cloud/load_balancers/pools/health_monitors.py +4 -12
  64. gcore/resources/cloud/load_balancers/pools/members.py +4 -12
  65. gcore/resources/cloud/load_balancers/pools/pools.py +38 -46
  66. gcore/resources/cloud/load_balancers/statuses.py +10 -18
  67. gcore/resources/cloud/networks/networks.py +18 -30
  68. gcore/resources/cloud/networks/routers.py +14 -42
  69. gcore/resources/cloud/networks/subnets.py +14 -30
  70. gcore/resources/cloud/placement_groups.py +16 -24
  71. gcore/resources/cloud/projects.py +117 -129
  72. gcore/resources/cloud/quotas/quotas.py +6 -18
  73. gcore/resources/cloud/quotas/requests.py +8 -24
  74. gcore/resources/cloud/regions.py +4 -8
  75. gcore/resources/cloud/registries/artifacts.py +4 -12
  76. gcore/resources/cloud/registries/registries.py +10 -30
  77. gcore/resources/cloud/registries/repositories.py +4 -12
  78. gcore/resources/cloud/registries/tags.py +2 -6
  79. gcore/resources/cloud/registries/users.py +12 -36
  80. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +28 -30
  81. gcore/resources/cloud/reserved_fixed_ips/vip.py +10 -30
  82. gcore/resources/cloud/secrets.py +12 -24
  83. gcore/resources/cloud/security_groups/rules.py +6 -18
  84. gcore/resources/cloud/security_groups/security_groups.py +14 -42
  85. gcore/resources/cloud/ssh_keys.py +10 -30
  86. gcore/resources/cloud/tasks.py +36 -33
  87. gcore/resources/cloud/usage_reports.py +18 -24
  88. gcore/resources/cloud/users/role_assignments.py +8 -24
  89. gcore/resources/cloud/volumes.py +47 -61
  90. gcore/resources/dns/dns.py +4 -8
  91. gcore/resources/dns/locations.py +8 -20
  92. gcore/resources/dns/metrics.py +2 -6
  93. gcore/resources/dns/pickers/pickers.py +2 -2
  94. gcore/resources/dns/pickers/presets.py +2 -6
  95. gcore/resources/dns/zones/dnssec.py +4 -12
  96. gcore/resources/dns/zones/rrsets.py +12 -36
  97. gcore/resources/dns/zones/zones.py +22 -58
  98. gcore/resources/fastedge/apps/apps.py +12 -28
  99. gcore/resources/fastedge/apps/logs.py +2 -6
  100. gcore/resources/fastedge/binaries.py +8 -24
  101. gcore/resources/fastedge/fastedge.py +2 -2
  102. gcore/resources/fastedge/kv_stores.py +10 -22
  103. gcore/resources/fastedge/secrets.py +12 -36
  104. gcore/resources/fastedge/statistics.py +4 -12
  105. gcore/resources/fastedge/templates.py +10 -30
  106. gcore/resources/iam/api_tokens.py +8 -24
  107. gcore/resources/iam/iam.py +2 -2
  108. gcore/resources/iam/users.py +10 -26
  109. gcore/resources/security/bgp_announces.py +4 -12
  110. gcore/resources/security/events.py +2 -6
  111. gcore/resources/security/profile_templates.py +2 -6
  112. gcore/resources/security/profiles.py +16 -40
  113. gcore/resources/storage/buckets/buckets.py +6 -18
  114. gcore/resources/storage/buckets/cors.py +4 -12
  115. gcore/resources/storage/buckets/lifecycle.py +4 -12
  116. gcore/resources/storage/buckets/policy.py +6 -18
  117. gcore/resources/storage/credentials.py +2 -6
  118. gcore/resources/storage/locations.py +2 -6
  119. gcore/resources/storage/statistics.py +4 -12
  120. gcore/resources/storage/storage.py +16 -48
  121. gcore/resources/streaming/ai_tasks.py +10 -18
  122. gcore/resources/streaming/broadcasts.py +12 -36
  123. gcore/resources/streaming/directories.py +10 -30
  124. gcore/resources/streaming/players.py +12 -28
  125. gcore/resources/streaming/playlists.py +12 -36
  126. gcore/resources/streaming/quality_sets.py +4 -12
  127. gcore/resources/streaming/restreams.py +10 -30
  128. gcore/resources/streaming/statistics.py +46 -138
  129. gcore/resources/streaming/streams/overlays.py +12 -36
  130. gcore/resources/streaming/streams/streams.py +20 -52
  131. gcore/resources/streaming/videos/subtitles.py +10 -30
  132. gcore/resources/streaming/videos/videos.py +16 -40
  133. gcore/resources/waap/advanced_rules.py +2 -6
  134. gcore/resources/waap/custom_page_sets.py +12 -36
  135. gcore/resources/waap/domains/advanced_rules.py +12 -36
  136. gcore/resources/waap/domains/api_discovery.py +12 -36
  137. gcore/resources/waap/domains/api_path_groups.py +2 -6
  138. gcore/resources/waap/domains/api_paths.py +10 -30
  139. gcore/resources/waap/domains/custom_rules.py +14 -42
  140. gcore/resources/waap/domains/domains.py +12 -32
  141. gcore/resources/waap/domains/firewall_rules.py +14 -42
  142. gcore/resources/waap/domains/insight_silences.py +10 -30
  143. gcore/resources/waap/domains/insights.py +6 -18
  144. gcore/resources/waap/domains/settings.py +4 -12
  145. gcore/resources/waap/domains/statistics.py +12 -36
  146. gcore/resources/waap/insights.py +2 -6
  147. gcore/resources/waap/ip_info/ip_info.py +16 -48
  148. gcore/resources/waap/ip_info/metrics.py +2 -6
  149. gcore/resources/waap/organizations.py +2 -6
  150. gcore/resources/waap/statistics.py +2 -6
  151. gcore/resources/waap/tags.py +2 -2
  152. gcore/resources/waap/waap.py +2 -2
  153. gcore/types/cdn/__init__.py +3 -0
  154. gcore/types/cdn/alibaba_regions.py +22 -0
  155. gcore/types/cdn/aws_regions.py +22 -0
  156. gcore/types/cdn/cdn_list_purge_statuses_response.py +10 -0
  157. gcore/types/cdn/cdn_resource.py +1 -1
  158. gcore/types/cdn/logs_aggregated_stats.py +1 -1
  159. gcore/types/cdn/resource_create_params.py +1 -1
  160. gcore/types/cdn/resource_replace_params.py +1 -1
  161. gcore/types/cdn/resource_update_params.py +1 -1
  162. gcore/types/cdn/resources/cdn_resource_rule.py +1 -1
  163. gcore/types/cdn/resources/rule_create_params.py +1 -1
  164. gcore/types/cdn/resources/rule_replace_params.py +1 -1
  165. gcore/types/cdn/resources/rule_update_params.py +1 -1
  166. gcore/types/cdn/rule_template.py +1 -1
  167. gcore/types/cdn/rule_template_create_params.py +1 -1
  168. gcore/types/cdn/rule_template_replace_params.py +1 -1
  169. gcore/types/cdn/rule_template_update_params.py +1 -1
  170. gcore/types/cloud/__init__.py +2 -1
  171. gcore/types/cloud/billing_reservation.py +52 -114
  172. gcore/types/cloud/billing_reservation_list_params.py +4 -42
  173. gcore/types/cloud/billing_reservations.py +16 -0
  174. gcore/types/cloud/cost_report_get_aggregated_params.py +2 -2
  175. gcore/types/cloud/cost_report_get_detailed_params.py +2 -2
  176. gcore/types/cloud/inference/applications/__init__.py +1 -1
  177. gcore/types/cloud/inference/applications/{deployment_patch_params.py → deployment_update_params.py} +2 -2
  178. gcore/types/cloud/instance_list_params.py +1 -1
  179. gcore/types/cloud/instance_update_params.py +31 -3
  180. gcore/types/cloud/load_balancer_create_params.py +1 -1
  181. gcore/types/cloud/load_balancer_listener_detail.py +1 -1
  182. gcore/types/cloud/load_balancers/listener_create_params.py +1 -1
  183. gcore/types/cloud/load_balancers/listener_list_params.py +1 -1
  184. gcore/types/cloud/load_balancers/pool_create_params.py +1 -1
  185. gcore/types/cloud/load_balancers/pool_list_params.py +1 -1
  186. gcore/types/cloud/{project_replace_params.py → project_update_params.py} +2 -2
  187. gcore/types/cloud/task_list_params.py +3 -3
  188. gcore/types/cloud/usage_report_get_params.py +2 -2
  189. gcore/types/security/profile_create_params.py +2 -2
  190. {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/METADATA +2 -2
  191. {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/RECORD +193 -195
  192. gcore/resources/cdn/logs/__init__.py +0 -33
  193. gcore/resources/cdn/logs/settings.py +0 -1081
  194. gcore/types/cdn/logs/__init__.py +0 -7
  195. gcore/types/cdn/logs/log_settings.py +0 -172
  196. gcore/types/cdn/logs/setting_create_params.py +0 -200
  197. gcore/types/cdn/logs/setting_update_params.py +0 -200
  198. {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/WHEEL +0 -0
  199. {gcore-0.15.0.dist-info → gcore-0.17.0.dist-info}/licenses/LICENSE +0 -0
@@ -18,7 +18,7 @@ from ..._response import (
18
18
  async_to_streamed_response_wrapper,
19
19
  )
20
20
  from ...pagination import SyncOffsetPage, AsyncOffsetPage
21
- from ...types.cloud import project_list_params, project_create_params, project_replace_params
21
+ from ...types.cloud import project_list_params, project_create_params, project_update_params
22
22
  from ..._base_client import AsyncPaginator, make_request_options
23
23
  from ...types.cloud.project import Project
24
24
  from ...types.cloud.task_id_list import TaskIDList
@@ -83,7 +83,7 @@ class ProjectsResource(SyncAPIResource):
83
83
  timeout: Override the client-level default timeout for this request, in seconds
84
84
  """
85
85
  return self._post(
86
- "/cloud/v1/projects" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/projects",
86
+ "/cloud/v1/projects",
87
87
  body=maybe_transform(
88
88
  {
89
89
  "name": name,
@@ -99,6 +99,54 @@ class ProjectsResource(SyncAPIResource):
99
99
  cast_to=Project,
100
100
  )
101
101
 
102
+ def update(
103
+ self,
104
+ *,
105
+ project_id: int | None = None,
106
+ name: str,
107
+ description: Optional[str] | Omit = omit,
108
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
109
+ # The extra values given here take precedence over values defined on the client or passed to this method.
110
+ extra_headers: Headers | None = None,
111
+ extra_query: Query | None = None,
112
+ extra_body: Body | None = None,
113
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
114
+ ) -> Project:
115
+ """Update project name and description.
116
+
117
+ Project management must be enabled to
118
+ perform this operation.
119
+
120
+ Args:
121
+ name: Name of the entity, following a specific format.
122
+
123
+ description: Description of the project.
124
+
125
+ extra_headers: Send extra headers
126
+
127
+ extra_query: Add additional query parameters to the request
128
+
129
+ extra_body: Add additional JSON properties to the request
130
+
131
+ timeout: Override the client-level default timeout for this request, in seconds
132
+ """
133
+ if project_id is None:
134
+ project_id = self._client._get_cloud_project_id_path_param()
135
+ return self._put(
136
+ f"/cloud/v1/projects/{project_id}",
137
+ body=maybe_transform(
138
+ {
139
+ "name": name,
140
+ "description": description,
141
+ },
142
+ project_update_params.ProjectUpdateParams,
143
+ ),
144
+ options=make_request_options(
145
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
146
+ ),
147
+ cast_to=Project,
148
+ )
149
+
102
150
  def list(
103
151
  self,
104
152
  *,
@@ -142,7 +190,7 @@ class ProjectsResource(SyncAPIResource):
142
190
  timeout: Override the client-level default timeout for this request, in seconds
143
191
  """
144
192
  return self._get_api_list(
145
- "/cloud/v1/projects" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/projects",
193
+ "/cloud/v1/projects",
146
194
  page=SyncOffsetPage[Project],
147
195
  options=make_request_options(
148
196
  extra_headers=extra_headers,
@@ -193,9 +241,7 @@ class ProjectsResource(SyncAPIResource):
193
241
  if project_id is None:
194
242
  project_id = self._client._get_cloud_project_id_path_param()
195
243
  return self._delete(
196
- f"/cloud/v1/projects/{project_id}"
197
- if self._client._base_url_overridden
198
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
244
+ f"/cloud/v1/projects/{project_id}",
199
245
  options=make_request_options(
200
246
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
201
247
  ),
@@ -228,59 +274,7 @@ class ProjectsResource(SyncAPIResource):
228
274
  if project_id is None:
229
275
  project_id = self._client._get_cloud_project_id_path_param()
230
276
  return self._get(
231
- f"/cloud/v1/projects/{project_id}"
232
- if self._client._base_url_overridden
233
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
234
- options=make_request_options(
235
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
236
- ),
237
- cast_to=Project,
238
- )
239
-
240
- def replace(
241
- self,
242
- *,
243
- project_id: int | None = None,
244
- name: str,
245
- description: Optional[str] | Omit = omit,
246
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
247
- # The extra values given here take precedence over values defined on the client or passed to this method.
248
- extra_headers: Headers | None = None,
249
- extra_query: Query | None = None,
250
- extra_body: Body | None = None,
251
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
252
- ) -> Project:
253
- """Update project name and description.
254
-
255
- Project management must be enabled to
256
- perform this operation.
257
-
258
- Args:
259
- name: Name of the entity, following a specific format.
260
-
261
- description: Description of the project.
262
-
263
- extra_headers: Send extra headers
264
-
265
- extra_query: Add additional query parameters to the request
266
-
267
- extra_body: Add additional JSON properties to the request
268
-
269
- timeout: Override the client-level default timeout for this request, in seconds
270
- """
271
- if project_id is None:
272
- project_id = self._client._get_cloud_project_id_path_param()
273
- return self._put(
274
- f"/cloud/v1/projects/{project_id}"
275
- if self._client._base_url_overridden
276
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
277
- body=maybe_transform(
278
- {
279
- "name": name,
280
- "description": description,
281
- },
282
- project_replace_params.ProjectReplaceParams,
283
- ),
277
+ f"/cloud/v1/projects/{project_id}",
284
278
  options=make_request_options(
285
279
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
286
280
  ),
@@ -345,7 +339,7 @@ class AsyncProjectsResource(AsyncAPIResource):
345
339
  timeout: Override the client-level default timeout for this request, in seconds
346
340
  """
347
341
  return await self._post(
348
- "/cloud/v1/projects" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/projects",
342
+ "/cloud/v1/projects",
349
343
  body=await async_maybe_transform(
350
344
  {
351
345
  "name": name,
@@ -361,6 +355,54 @@ class AsyncProjectsResource(AsyncAPIResource):
361
355
  cast_to=Project,
362
356
  )
363
357
 
358
+ async def update(
359
+ self,
360
+ *,
361
+ project_id: int | None = None,
362
+ name: str,
363
+ description: Optional[str] | Omit = omit,
364
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
365
+ # The extra values given here take precedence over values defined on the client or passed to this method.
366
+ extra_headers: Headers | None = None,
367
+ extra_query: Query | None = None,
368
+ extra_body: Body | None = None,
369
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
370
+ ) -> Project:
371
+ """Update project name and description.
372
+
373
+ Project management must be enabled to
374
+ perform this operation.
375
+
376
+ Args:
377
+ name: Name of the entity, following a specific format.
378
+
379
+ description: Description of the project.
380
+
381
+ extra_headers: Send extra headers
382
+
383
+ extra_query: Add additional query parameters to the request
384
+
385
+ extra_body: Add additional JSON properties to the request
386
+
387
+ timeout: Override the client-level default timeout for this request, in seconds
388
+ """
389
+ if project_id is None:
390
+ project_id = self._client._get_cloud_project_id_path_param()
391
+ return await self._put(
392
+ f"/cloud/v1/projects/{project_id}",
393
+ body=await async_maybe_transform(
394
+ {
395
+ "name": name,
396
+ "description": description,
397
+ },
398
+ project_update_params.ProjectUpdateParams,
399
+ ),
400
+ options=make_request_options(
401
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
402
+ ),
403
+ cast_to=Project,
404
+ )
405
+
364
406
  def list(
365
407
  self,
366
408
  *,
@@ -404,7 +446,7 @@ class AsyncProjectsResource(AsyncAPIResource):
404
446
  timeout: Override the client-level default timeout for this request, in seconds
405
447
  """
406
448
  return self._get_api_list(
407
- "/cloud/v1/projects" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/projects",
449
+ "/cloud/v1/projects",
408
450
  page=AsyncOffsetPage[Project],
409
451
  options=make_request_options(
410
452
  extra_headers=extra_headers,
@@ -455,9 +497,7 @@ class AsyncProjectsResource(AsyncAPIResource):
455
497
  if project_id is None:
456
498
  project_id = self._client._get_cloud_project_id_path_param()
457
499
  return await self._delete(
458
- f"/cloud/v1/projects/{project_id}"
459
- if self._client._base_url_overridden
460
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
500
+ f"/cloud/v1/projects/{project_id}",
461
501
  options=make_request_options(
462
502
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
463
503
  ),
@@ -490,59 +530,7 @@ class AsyncProjectsResource(AsyncAPIResource):
490
530
  if project_id is None:
491
531
  project_id = self._client._get_cloud_project_id_path_param()
492
532
  return await self._get(
493
- f"/cloud/v1/projects/{project_id}"
494
- if self._client._base_url_overridden
495
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
496
- options=make_request_options(
497
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
498
- ),
499
- cast_to=Project,
500
- )
501
-
502
- async def replace(
503
- self,
504
- *,
505
- project_id: int | None = None,
506
- name: str,
507
- description: Optional[str] | Omit = omit,
508
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
509
- # The extra values given here take precedence over values defined on the client or passed to this method.
510
- extra_headers: Headers | None = None,
511
- extra_query: Query | None = None,
512
- extra_body: Body | None = None,
513
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
514
- ) -> Project:
515
- """Update project name and description.
516
-
517
- Project management must be enabled to
518
- perform this operation.
519
-
520
- Args:
521
- name: Name of the entity, following a specific format.
522
-
523
- description: Description of the project.
524
-
525
- extra_headers: Send extra headers
526
-
527
- extra_query: Add additional query parameters to the request
528
-
529
- extra_body: Add additional JSON properties to the request
530
-
531
- timeout: Override the client-level default timeout for this request, in seconds
532
- """
533
- if project_id is None:
534
- project_id = self._client._get_cloud_project_id_path_param()
535
- return await self._put(
536
- f"/cloud/v1/projects/{project_id}"
537
- if self._client._base_url_overridden
538
- else f"https://api.gcore.com//cloud/v1/projects/{project_id}",
539
- body=await async_maybe_transform(
540
- {
541
- "name": name,
542
- "description": description,
543
- },
544
- project_replace_params.ProjectReplaceParams,
545
- ),
533
+ f"/cloud/v1/projects/{project_id}",
546
534
  options=make_request_options(
547
535
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
548
536
  ),
@@ -557,6 +545,9 @@ class ProjectsResourceWithRawResponse:
557
545
  self.create = to_raw_response_wrapper(
558
546
  projects.create,
559
547
  )
548
+ self.update = to_raw_response_wrapper(
549
+ projects.update,
550
+ )
560
551
  self.list = to_raw_response_wrapper(
561
552
  projects.list,
562
553
  )
@@ -566,9 +557,6 @@ class ProjectsResourceWithRawResponse:
566
557
  self.get = to_raw_response_wrapper(
567
558
  projects.get,
568
559
  )
569
- self.replace = to_raw_response_wrapper(
570
- projects.replace,
571
- )
572
560
 
573
561
 
574
562
  class AsyncProjectsResourceWithRawResponse:
@@ -578,6 +566,9 @@ class AsyncProjectsResourceWithRawResponse:
578
566
  self.create = async_to_raw_response_wrapper(
579
567
  projects.create,
580
568
  )
569
+ self.update = async_to_raw_response_wrapper(
570
+ projects.update,
571
+ )
581
572
  self.list = async_to_raw_response_wrapper(
582
573
  projects.list,
583
574
  )
@@ -587,9 +578,6 @@ class AsyncProjectsResourceWithRawResponse:
587
578
  self.get = async_to_raw_response_wrapper(
588
579
  projects.get,
589
580
  )
590
- self.replace = async_to_raw_response_wrapper(
591
- projects.replace,
592
- )
593
581
 
594
582
 
595
583
  class ProjectsResourceWithStreamingResponse:
@@ -599,6 +587,9 @@ class ProjectsResourceWithStreamingResponse:
599
587
  self.create = to_streamed_response_wrapper(
600
588
  projects.create,
601
589
  )
590
+ self.update = to_streamed_response_wrapper(
591
+ projects.update,
592
+ )
602
593
  self.list = to_streamed_response_wrapper(
603
594
  projects.list,
604
595
  )
@@ -608,9 +599,6 @@ class ProjectsResourceWithStreamingResponse:
608
599
  self.get = to_streamed_response_wrapper(
609
600
  projects.get,
610
601
  )
611
- self.replace = to_streamed_response_wrapper(
612
- projects.replace,
613
- )
614
602
 
615
603
 
616
604
  class AsyncProjectsResourceWithStreamingResponse:
@@ -620,6 +608,9 @@ class AsyncProjectsResourceWithStreamingResponse:
620
608
  self.create = async_to_streamed_response_wrapper(
621
609
  projects.create,
622
610
  )
611
+ self.update = async_to_streamed_response_wrapper(
612
+ projects.update,
613
+ )
623
614
  self.list = async_to_streamed_response_wrapper(
624
615
  projects.list,
625
616
  )
@@ -629,6 +620,3 @@ class AsyncProjectsResourceWithStreamingResponse:
629
620
  self.get = async_to_streamed_response_wrapper(
630
621
  projects.get,
631
622
  )
632
- self.replace = async_to_streamed_response_wrapper(
633
- projects.replace,
634
- )
@@ -65,9 +65,7 @@ class QuotasResource(SyncAPIResource):
65
65
  ) -> QuotaGetAllResponse:
66
66
  """Get combined client quotas, including both regional and global quotas."""
67
67
  return self._get(
68
- "/cloud/v2/client_quotas"
69
- if self._client._base_url_overridden
70
- else "https://api.gcore.com//cloud/v2/client_quotas",
68
+ "/cloud/v2/client_quotas",
71
69
  options=make_request_options(
72
70
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
73
71
  ),
@@ -105,9 +103,7 @@ class QuotasResource(SyncAPIResource):
105
103
  if region_id is None:
106
104
  region_id = self._client._get_cloud_region_id_path_param()
107
105
  return self._get(
108
- f"/cloud/v2/regional_quotas/{client_id}/{region_id}"
109
- if self._client._base_url_overridden
110
- else f"https://api.gcore.com//cloud/v2/regional_quotas/{client_id}/{region_id}",
106
+ f"/cloud/v2/regional_quotas/{client_id}/{region_id}",
111
107
  options=make_request_options(
112
108
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
113
109
  ),
@@ -140,9 +136,7 @@ class QuotasResource(SyncAPIResource):
140
136
  timeout: Override the client-level default timeout for this request, in seconds
141
137
  """
142
138
  return self._get(
143
- f"/cloud/v2/global_quotas/{client_id}"
144
- if self._client._base_url_overridden
145
- else f"https://api.gcore.com//cloud/v2/global_quotas/{client_id}",
139
+ f"/cloud/v2/global_quotas/{client_id}",
146
140
  options=make_request_options(
147
141
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
148
142
  ),
@@ -186,9 +180,7 @@ class AsyncQuotasResource(AsyncAPIResource):
186
180
  ) -> QuotaGetAllResponse:
187
181
  """Get combined client quotas, including both regional and global quotas."""
188
182
  return await self._get(
189
- "/cloud/v2/client_quotas"
190
- if self._client._base_url_overridden
191
- else "https://api.gcore.com//cloud/v2/client_quotas",
183
+ "/cloud/v2/client_quotas",
192
184
  options=make_request_options(
193
185
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
194
186
  ),
@@ -226,9 +218,7 @@ class AsyncQuotasResource(AsyncAPIResource):
226
218
  if region_id is None:
227
219
  region_id = self._client._get_cloud_region_id_path_param()
228
220
  return await self._get(
229
- f"/cloud/v2/regional_quotas/{client_id}/{region_id}"
230
- if self._client._base_url_overridden
231
- else f"https://api.gcore.com//cloud/v2/regional_quotas/{client_id}/{region_id}",
221
+ f"/cloud/v2/regional_quotas/{client_id}/{region_id}",
232
222
  options=make_request_options(
233
223
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
234
224
  ),
@@ -261,9 +251,7 @@ class AsyncQuotasResource(AsyncAPIResource):
261
251
  timeout: Override the client-level default timeout for this request, in seconds
262
252
  """
263
253
  return await self._get(
264
- f"/cloud/v2/global_quotas/{client_id}"
265
- if self._client._base_url_overridden
266
- else f"https://api.gcore.com//cloud/v2/global_quotas/{client_id}",
254
+ f"/cloud/v2/global_quotas/{client_id}",
267
255
  options=make_request_options(
268
256
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
269
257
  ),
@@ -79,9 +79,7 @@ class RequestsResource(SyncAPIResource):
79
79
  """
80
80
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
81
81
  return self._post(
82
- "/cloud/v2/limits_request"
83
- if self._client._base_url_overridden
84
- else "https://api.gcore.com//cloud/v2/limits_request",
82
+ "/cloud/v2/limits_request",
85
83
  body=maybe_transform(
86
84
  {
87
85
  "description": description,
@@ -129,9 +127,7 @@ class RequestsResource(SyncAPIResource):
129
127
  timeout: Override the client-level default timeout for this request, in seconds
130
128
  """
131
129
  return self._get_api_list(
132
- "/cloud/v2/limits_request"
133
- if self._client._base_url_overridden
134
- else "https://api.gcore.com//cloud/v2/limits_request",
130
+ "/cloud/v2/limits_request",
135
131
  page=SyncOffsetPage[RequestListResponse],
136
132
  options=make_request_options(
137
133
  extra_headers=extra_headers,
@@ -177,9 +173,7 @@ class RequestsResource(SyncAPIResource):
177
173
  """
178
174
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
179
175
  return self._delete(
180
- f"/cloud/v2/limits_request/{request_id}"
181
- if self._client._base_url_overridden
182
- else f"https://api.gcore.com//cloud/v2/limits_request/{request_id}",
176
+ f"/cloud/v2/limits_request/{request_id}",
183
177
  options=make_request_options(
184
178
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
185
179
  ),
@@ -212,9 +206,7 @@ class RequestsResource(SyncAPIResource):
212
206
  timeout: Override the client-level default timeout for this request, in seconds
213
207
  """
214
208
  return self._get(
215
- f"/cloud/v2/limits_request/{request_id}"
216
- if self._client._base_url_overridden
217
- else f"https://api.gcore.com//cloud/v2/limits_request/{request_id}",
209
+ f"/cloud/v2/limits_request/{request_id}",
218
210
  options=make_request_options(
219
211
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
220
212
  ),
@@ -275,9 +267,7 @@ class AsyncRequestsResource(AsyncAPIResource):
275
267
  """
276
268
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
277
269
  return await self._post(
278
- "/cloud/v2/limits_request"
279
- if self._client._base_url_overridden
280
- else "https://api.gcore.com//cloud/v2/limits_request",
270
+ "/cloud/v2/limits_request",
281
271
  body=await async_maybe_transform(
282
272
  {
283
273
  "description": description,
@@ -325,9 +315,7 @@ class AsyncRequestsResource(AsyncAPIResource):
325
315
  timeout: Override the client-level default timeout for this request, in seconds
326
316
  """
327
317
  return self._get_api_list(
328
- "/cloud/v2/limits_request"
329
- if self._client._base_url_overridden
330
- else "https://api.gcore.com//cloud/v2/limits_request",
318
+ "/cloud/v2/limits_request",
331
319
  page=AsyncOffsetPage[RequestListResponse],
332
320
  options=make_request_options(
333
321
  extra_headers=extra_headers,
@@ -373,9 +361,7 @@ class AsyncRequestsResource(AsyncAPIResource):
373
361
  """
374
362
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
375
363
  return await self._delete(
376
- f"/cloud/v2/limits_request/{request_id}"
377
- if self._client._base_url_overridden
378
- else f"https://api.gcore.com//cloud/v2/limits_request/{request_id}",
364
+ f"/cloud/v2/limits_request/{request_id}",
379
365
  options=make_request_options(
380
366
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
381
367
  ),
@@ -408,9 +394,7 @@ class AsyncRequestsResource(AsyncAPIResource):
408
394
  timeout: Override the client-level default timeout for this request, in seconds
409
395
  """
410
396
  return await self._get(
411
- f"/cloud/v2/limits_request/{request_id}"
412
- if self._client._base_url_overridden
413
- else f"https://api.gcore.com//cloud/v2/limits_request/{request_id}",
397
+ f"/cloud/v2/limits_request/{request_id}",
414
398
  options=make_request_options(
415
399
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
416
400
  ),
@@ -85,7 +85,7 @@ class RegionsResource(SyncAPIResource):
85
85
  timeout: Override the client-level default timeout for this request, in seconds
86
86
  """
87
87
  return self._get_api_list(
88
- "/cloud/v1/regions" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/regions",
88
+ "/cloud/v1/regions",
89
89
  page=SyncOffsetPage[Region],
90
90
  options=make_request_options(
91
91
  extra_headers=extra_headers,
@@ -138,9 +138,7 @@ class RegionsResource(SyncAPIResource):
138
138
  if region_id is None:
139
139
  region_id = self._client._get_cloud_region_id_path_param()
140
140
  return self._get(
141
- f"/cloud/v1/regions/{region_id}"
142
- if self._client._base_url_overridden
143
- else f"https://api.gcore.com//cloud/v1/regions/{region_id}",
141
+ f"/cloud/v1/regions/{region_id}",
144
142
  options=make_request_options(
145
143
  extra_headers=extra_headers,
146
144
  extra_query=extra_query,
@@ -213,7 +211,7 @@ class AsyncRegionsResource(AsyncAPIResource):
213
211
  timeout: Override the client-level default timeout for this request, in seconds
214
212
  """
215
213
  return self._get_api_list(
216
- "/cloud/v1/regions" if self._client._base_url_overridden else "https://api.gcore.com//cloud/v1/regions",
214
+ "/cloud/v1/regions",
217
215
  page=AsyncOffsetPage[Region],
218
216
  options=make_request_options(
219
217
  extra_headers=extra_headers,
@@ -266,9 +264,7 @@ class AsyncRegionsResource(AsyncAPIResource):
266
264
  if region_id is None:
267
265
  region_id = self._client._get_cloud_region_id_path_param()
268
266
  return await self._get(
269
- f"/cloud/v1/regions/{region_id}"
270
- if self._client._base_url_overridden
271
- else f"https://api.gcore.com//cloud/v1/regions/{region_id}",
267
+ f"/cloud/v1/regions/{region_id}",
272
268
  options=make_request_options(
273
269
  extra_headers=extra_headers,
274
270
  extra_query=extra_query,
@@ -72,9 +72,7 @@ class ArtifactsResource(SyncAPIResource):
72
72
  if not repository_name:
73
73
  raise ValueError(f"Expected a non-empty value for `repository_name` but received {repository_name!r}")
74
74
  return self._get(
75
- f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts"
76
- if self._client._base_url_overridden
77
- else f"https://api.gcore.com//cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts",
75
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts",
78
76
  options=make_request_options(
79
77
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
80
78
  ),
@@ -118,9 +116,7 @@ class ArtifactsResource(SyncAPIResource):
118
116
  raise ValueError(f"Expected a non-empty value for `digest` but received {digest!r}")
119
117
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
120
118
  return self._delete(
121
- f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}"
122
- if self._client._base_url_overridden
123
- else f"https://api.gcore.com//cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}",
119
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}",
124
120
  options=make_request_options(
125
121
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
126
122
  ),
@@ -181,9 +177,7 @@ class AsyncArtifactsResource(AsyncAPIResource):
181
177
  if not repository_name:
182
178
  raise ValueError(f"Expected a non-empty value for `repository_name` but received {repository_name!r}")
183
179
  return await self._get(
184
- f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts"
185
- if self._client._base_url_overridden
186
- else f"https://api.gcore.com//cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts",
180
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts",
187
181
  options=make_request_options(
188
182
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
189
183
  ),
@@ -227,9 +221,7 @@ class AsyncArtifactsResource(AsyncAPIResource):
227
221
  raise ValueError(f"Expected a non-empty value for `digest` but received {digest!r}")
228
222
  extra_headers = {"Accept": "*/*", **(extra_headers or {})}
229
223
  return await self._delete(
230
- f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}"
231
- if self._client._base_url_overridden
232
- else f"https://api.gcore.com//cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}",
224
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/repositories/{repository_name}/artifacts/{digest}",
233
225
  options=make_request_options(
234
226
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
235
227
  ),