gcore 0.13.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 (334) 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 +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 +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 +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 +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 +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 +1 -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/inference/inference_deployment.py +3 -1
  270. gcore/types/cloud/instance_create_params.py +3 -1
  271. gcore/types/cloud/k8s/cluster_create_params.py +46 -4
  272. gcore/types/cloud/k8s/cluster_update_params.py +60 -6
  273. gcore/types/cloud/k8s/clusters/pool_update_params.py +1 -1
  274. gcore/types/cloud/k8s/k8s_cluster.py +40 -3
  275. gcore/types/cloud/load_balancer_update_params.py +3 -1
  276. gcore/types/cloud/network_update_params.py +3 -1
  277. gcore/types/cloud/networks/subnet_update_params.py +3 -1
  278. gcore/types/cloud/registries/user_create_multiple_params.py +5 -3
  279. gcore/types/cloud/registries/user_create_params.py +5 -3
  280. gcore/types/cloud/registry_create_params.py +5 -3
  281. gcore/types/cloud/security_group_update_params.py +3 -1
  282. gcore/types/cloud/ssh_key_created.py +6 -3
  283. gcore/types/cloud/volume_update_params.py +3 -1
  284. gcore/types/dns/zone_get_statistics_params.py +12 -9
  285. gcore/types/dns/zone_get_statistics_response.py +3 -1
  286. gcore/types/dns/zone_import_params.py +21 -15
  287. gcore/types/dns/zones/dns_output_rrset.py +7 -3
  288. gcore/types/iam/account_overview.py +7 -2
  289. gcore/types/iam/user.py +7 -2
  290. gcore/types/iam/user_detailed.py +7 -2
  291. gcore/types/iam/user_invite_params.py +4 -1
  292. gcore/types/iam/user_update.py +7 -2
  293. gcore/types/iam/user_update_params.py +7 -2
  294. gcore/types/streaming/ai_contentmoderation_hardnudity.py +6 -4
  295. gcore/types/streaming/ai_contentmoderation_nsfw.py +6 -4
  296. gcore/types/streaming/ai_contentmoderation_softnudity.py +6 -4
  297. gcore/types/streaming/ai_contentmoderation_sport.py +6 -4
  298. gcore/types/streaming/ai_task.py +20 -11
  299. gcore/types/streaming/ai_task_create_params.py +20 -11
  300. gcore/types/streaming/ai_task_get_response.py +5 -4
  301. gcore/types/streaming/ai_task_list_params.py +11 -5
  302. gcore/types/streaming/clip.py +33 -22
  303. gcore/types/streaming/create_video_param.py +75 -43
  304. gcore/types/streaming/playlist.py +7 -5
  305. gcore/types/streaming/playlist_create_params.py +7 -5
  306. gcore/types/streaming/playlist_update_params.py +7 -5
  307. gcore/types/streaming/playlist_video.py +75 -43
  308. gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +7 -4
  309. gcore/types/streaming/stream.py +207 -136
  310. gcore/types/streaming/stream_create_clip_params.py +33 -22
  311. gcore/types/streaming/stream_create_params.py +41 -24
  312. gcore/types/streaming/stream_update_params.py +41 -24
  313. gcore/types/streaming/video.py +138 -76
  314. gcore/types/streaming/video_list_params.py +4 -2
  315. gcore/types/streaming/video_update_params.py +75 -43
  316. gcore/types/waap/domain_update_params.py +2 -2
  317. gcore/types/waap/domains/advanced_rule_create_params.py +26 -18
  318. gcore/types/waap/domains/advanced_rule_list_params.py +10 -7
  319. gcore/types/waap/domains/advanced_rule_update_params.py +22 -17
  320. gcore/types/waap/domains/api_path_create_params.py +0 -3
  321. gcore/types/waap/domains/api_path_update_params.py +1 -3
  322. gcore/types/waap/domains/custom_rule_create_params.py +36 -35
  323. gcore/types/waap/domains/custom_rule_update_params.py +31 -33
  324. gcore/types/waap/domains/firewall_rule_create_params.py +6 -6
  325. gcore/types/waap/domains/firewall_rule_update_params.py +5 -5
  326. gcore/types/waap/domains/waap_advanced_rule.py +17 -9
  327. gcore/types/waap/domains/waap_custom_rule.py +5 -2
  328. gcore/types/waap/domains/waap_firewall_rule.py +1 -1
  329. gcore/types/waap/domains/waap_insight.py +1 -1
  330. gcore/types/waap/insight_list_types_params.py +1 -1
  331. {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/METADATA +1 -1
  332. {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/RECORD +334 -214
  333. {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/WHEEL +0 -0
  334. {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,811 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Iterable
6
+ from typing_extensions import Literal
7
+
8
+ import httpx
9
+
10
+ from ...._types import Body, Omit, Query, Headers, NoneType, NotGiven, omit, not_given
11
+ from ...._utils import maybe_transform, async_maybe_transform
12
+ from ...._compat import cached_property
13
+ from ...._resource import SyncAPIResource, AsyncAPIResource
14
+ from ...._response import (
15
+ to_raw_response_wrapper,
16
+ to_streamed_response_wrapper,
17
+ async_to_raw_response_wrapper,
18
+ async_to_streamed_response_wrapper,
19
+ )
20
+ from ...._base_client import make_request_options
21
+ from ....types.cdn.logs_uploader import (
22
+ target_list_params,
23
+ target_create_params,
24
+ target_update_params,
25
+ target_replace_params,
26
+ )
27
+ from ....types.cdn.logs_uploader_validation import LogsUploaderValidation
28
+ from ....types.cdn.logs_uploader.logs_uploader_target import LogsUploaderTarget
29
+ from ....types.cdn.logs_uploader.logs_uploader_target_list import LogsUploaderTargetList
30
+
31
+ __all__ = ["TargetsResource", "AsyncTargetsResource"]
32
+
33
+
34
+ class TargetsResource(SyncAPIResource):
35
+ @cached_property
36
+ def with_raw_response(self) -> TargetsResourceWithRawResponse:
37
+ """
38
+ This property can be used as a prefix for any HTTP method call to return
39
+ the raw response object instead of the parsed content.
40
+
41
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
42
+ """
43
+ return TargetsResourceWithRawResponse(self)
44
+
45
+ @cached_property
46
+ def with_streaming_response(self) -> TargetsResourceWithStreamingResponse:
47
+ """
48
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
49
+
50
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
51
+ """
52
+ return TargetsResourceWithStreamingResponse(self)
53
+
54
+ def create(
55
+ self,
56
+ *,
57
+ config: target_create_params.Config,
58
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"],
59
+ description: str | Omit = omit,
60
+ name: str | Omit = omit,
61
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
62
+ # The extra values given here take precedence over values defined on the client or passed to this method.
63
+ extra_headers: Headers | None = None,
64
+ extra_query: Query | None = None,
65
+ extra_body: Body | None = None,
66
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
67
+ ) -> LogsUploaderTarget:
68
+ """
69
+ Create logs uploader target.
70
+
71
+ Args:
72
+ config: Config for specific storage type.
73
+
74
+ storage_type: Type of storage for logs.
75
+
76
+ description: Description of the target.
77
+
78
+ name: Name of the target.
79
+
80
+ extra_headers: Send extra headers
81
+
82
+ extra_query: Add additional query parameters to the request
83
+
84
+ extra_body: Add additional JSON properties to the request
85
+
86
+ timeout: Override the client-level default timeout for this request, in seconds
87
+ """
88
+ return self._post(
89
+ "/cdn/logs_uploader/targets"
90
+ if self._client._base_url_overridden
91
+ else "https://api.gcore.com//cdn/logs_uploader/targets",
92
+ body=maybe_transform(
93
+ {
94
+ "config": config,
95
+ "storage_type": storage_type,
96
+ "description": description,
97
+ "name": name,
98
+ },
99
+ target_create_params.TargetCreateParams,
100
+ ),
101
+ options=make_request_options(
102
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
103
+ ),
104
+ cast_to=LogsUploaderTarget,
105
+ )
106
+
107
+ def update(
108
+ self,
109
+ id: int,
110
+ *,
111
+ config: target_update_params.Config | Omit = omit,
112
+ description: str | Omit = omit,
113
+ name: str | Omit = omit,
114
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"]
115
+ | Omit = omit,
116
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
117
+ # The extra values given here take precedence over values defined on the client or passed to this method.
118
+ extra_headers: Headers | None = None,
119
+ extra_query: Query | None = None,
120
+ extra_body: Body | None = None,
121
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
122
+ ) -> LogsUploaderTarget:
123
+ """
124
+ Change logs uploader target partially.
125
+
126
+ Args:
127
+ config: Config for specific storage type.
128
+
129
+ description: Description of the target.
130
+
131
+ name: Name of the target.
132
+
133
+ storage_type: Type of storage for logs.
134
+
135
+ extra_headers: Send extra headers
136
+
137
+ extra_query: Add additional query parameters to the request
138
+
139
+ extra_body: Add additional JSON properties to the request
140
+
141
+ timeout: Override the client-level default timeout for this request, in seconds
142
+ """
143
+ return self._patch(
144
+ f"/cdn/logs_uploader/targets/{id}"
145
+ if self._client._base_url_overridden
146
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
147
+ body=maybe_transform(
148
+ {
149
+ "config": config,
150
+ "description": description,
151
+ "name": name,
152
+ "storage_type": storage_type,
153
+ },
154
+ target_update_params.TargetUpdateParams,
155
+ ),
156
+ options=make_request_options(
157
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
158
+ ),
159
+ cast_to=LogsUploaderTarget,
160
+ )
161
+
162
+ def list(
163
+ self,
164
+ *,
165
+ config_ids: Iterable[int] | Omit = omit,
166
+ search: str | Omit = omit,
167
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
168
+ # The extra values given here take precedence over values defined on the client or passed to this method.
169
+ extra_headers: Headers | None = None,
170
+ extra_query: Query | None = None,
171
+ extra_body: Body | None = None,
172
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
173
+ ) -> LogsUploaderTargetList:
174
+ """
175
+ Get list of logs uploader targets.
176
+
177
+ Args:
178
+ config_ids: Filter by ids of related logs uploader configs that use given target.
179
+
180
+ search: Search by target name or id.
181
+
182
+ extra_headers: Send extra headers
183
+
184
+ extra_query: Add additional query parameters to the request
185
+
186
+ extra_body: Add additional JSON properties to the request
187
+
188
+ timeout: Override the client-level default timeout for this request, in seconds
189
+ """
190
+ return self._get(
191
+ "/cdn/logs_uploader/targets"
192
+ if self._client._base_url_overridden
193
+ else "https://api.gcore.com//cdn/logs_uploader/targets",
194
+ options=make_request_options(
195
+ extra_headers=extra_headers,
196
+ extra_query=extra_query,
197
+ extra_body=extra_body,
198
+ timeout=timeout,
199
+ query=maybe_transform(
200
+ {
201
+ "config_ids": config_ids,
202
+ "search": search,
203
+ },
204
+ target_list_params.TargetListParams,
205
+ ),
206
+ ),
207
+ cast_to=LogsUploaderTargetList,
208
+ )
209
+
210
+ def delete(
211
+ self,
212
+ id: int,
213
+ *,
214
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
215
+ # The extra values given here take precedence over values defined on the client or passed to this method.
216
+ extra_headers: Headers | None = None,
217
+ extra_query: Query | None = None,
218
+ extra_body: Body | None = None,
219
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
220
+ ) -> None:
221
+ """
222
+ Delete the logs uploader target from the system permanently.
223
+
224
+ Notes:
225
+
226
+ - **Irreversibility**: This action is irreversible. Once deleted, the logs
227
+ uploader target cannot be recovered.
228
+
229
+ Args:
230
+ extra_headers: Send extra headers
231
+
232
+ extra_query: Add additional query parameters to the request
233
+
234
+ extra_body: Add additional JSON properties to the request
235
+
236
+ timeout: Override the client-level default timeout for this request, in seconds
237
+ """
238
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
239
+ return self._delete(
240
+ f"/cdn/logs_uploader/targets/{id}"
241
+ if self._client._base_url_overridden
242
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
243
+ options=make_request_options(
244
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
245
+ ),
246
+ cast_to=NoneType,
247
+ )
248
+
249
+ def get(
250
+ self,
251
+ id: int,
252
+ *,
253
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
254
+ # The extra values given here take precedence over values defined on the client or passed to this method.
255
+ extra_headers: Headers | None = None,
256
+ extra_query: Query | None = None,
257
+ extra_body: Body | None = None,
258
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
259
+ ) -> LogsUploaderTarget:
260
+ """
261
+ Get information about logs uploader target.
262
+
263
+ Args:
264
+ extra_headers: Send extra headers
265
+
266
+ extra_query: Add additional query parameters to the request
267
+
268
+ extra_body: Add additional JSON properties to the request
269
+
270
+ timeout: Override the client-level default timeout for this request, in seconds
271
+ """
272
+ return self._get(
273
+ f"/cdn/logs_uploader/targets/{id}"
274
+ if self._client._base_url_overridden
275
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
276
+ options=make_request_options(
277
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
278
+ ),
279
+ cast_to=LogsUploaderTarget,
280
+ )
281
+
282
+ def replace(
283
+ self,
284
+ id: int,
285
+ *,
286
+ config: target_replace_params.Config,
287
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"],
288
+ description: str | Omit = omit,
289
+ name: str | Omit = omit,
290
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
291
+ # The extra values given here take precedence over values defined on the client or passed to this method.
292
+ extra_headers: Headers | None = None,
293
+ extra_query: Query | None = None,
294
+ extra_body: Body | None = None,
295
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
296
+ ) -> LogsUploaderTarget:
297
+ """
298
+ Change logs uploader target.
299
+
300
+ Args:
301
+ config: Config for specific storage type.
302
+
303
+ storage_type: Type of storage for logs.
304
+
305
+ description: Description of the target.
306
+
307
+ name: Name of the target.
308
+
309
+ extra_headers: Send extra headers
310
+
311
+ extra_query: Add additional query parameters to the request
312
+
313
+ extra_body: Add additional JSON properties to the request
314
+
315
+ timeout: Override the client-level default timeout for this request, in seconds
316
+ """
317
+ return self._put(
318
+ f"/cdn/logs_uploader/targets/{id}"
319
+ if self._client._base_url_overridden
320
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
321
+ body=maybe_transform(
322
+ {
323
+ "config": config,
324
+ "storage_type": storage_type,
325
+ "description": description,
326
+ "name": name,
327
+ },
328
+ target_replace_params.TargetReplaceParams,
329
+ ),
330
+ options=make_request_options(
331
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
332
+ ),
333
+ cast_to=LogsUploaderTarget,
334
+ )
335
+
336
+ def validate(
337
+ self,
338
+ id: int,
339
+ *,
340
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
341
+ # The extra values given here take precedence over values defined on the client or passed to this method.
342
+ extra_headers: Headers | None = None,
343
+ extra_query: Query | None = None,
344
+ extra_body: Body | None = None,
345
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
346
+ ) -> LogsUploaderValidation:
347
+ """
348
+ Validate logs uploader target.
349
+
350
+ Args:
351
+ extra_headers: Send extra headers
352
+
353
+ extra_query: Add additional query parameters to the request
354
+
355
+ extra_body: Add additional JSON properties to the request
356
+
357
+ timeout: Override the client-level default timeout for this request, in seconds
358
+ """
359
+ return self._post(
360
+ f"/cdn/logs_uploader/targets/{id}/validate"
361
+ if self._client._base_url_overridden
362
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}/validate",
363
+ options=make_request_options(
364
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
365
+ ),
366
+ cast_to=LogsUploaderValidation,
367
+ )
368
+
369
+
370
+ class AsyncTargetsResource(AsyncAPIResource):
371
+ @cached_property
372
+ def with_raw_response(self) -> AsyncTargetsResourceWithRawResponse:
373
+ """
374
+ This property can be used as a prefix for any HTTP method call to return
375
+ the raw response object instead of the parsed content.
376
+
377
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
378
+ """
379
+ return AsyncTargetsResourceWithRawResponse(self)
380
+
381
+ @cached_property
382
+ def with_streaming_response(self) -> AsyncTargetsResourceWithStreamingResponse:
383
+ """
384
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
385
+
386
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
387
+ """
388
+ return AsyncTargetsResourceWithStreamingResponse(self)
389
+
390
+ async def create(
391
+ self,
392
+ *,
393
+ config: target_create_params.Config,
394
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"],
395
+ description: str | Omit = omit,
396
+ name: str | Omit = omit,
397
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
398
+ # The extra values given here take precedence over values defined on the client or passed to this method.
399
+ extra_headers: Headers | None = None,
400
+ extra_query: Query | None = None,
401
+ extra_body: Body | None = None,
402
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
403
+ ) -> LogsUploaderTarget:
404
+ """
405
+ Create logs uploader target.
406
+
407
+ Args:
408
+ config: Config for specific storage type.
409
+
410
+ storage_type: Type of storage for logs.
411
+
412
+ description: Description of the target.
413
+
414
+ name: Name of the target.
415
+
416
+ extra_headers: Send extra headers
417
+
418
+ extra_query: Add additional query parameters to the request
419
+
420
+ extra_body: Add additional JSON properties to the request
421
+
422
+ timeout: Override the client-level default timeout for this request, in seconds
423
+ """
424
+ return await self._post(
425
+ "/cdn/logs_uploader/targets"
426
+ if self._client._base_url_overridden
427
+ else "https://api.gcore.com//cdn/logs_uploader/targets",
428
+ body=await async_maybe_transform(
429
+ {
430
+ "config": config,
431
+ "storage_type": storage_type,
432
+ "description": description,
433
+ "name": name,
434
+ },
435
+ target_create_params.TargetCreateParams,
436
+ ),
437
+ options=make_request_options(
438
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
439
+ ),
440
+ cast_to=LogsUploaderTarget,
441
+ )
442
+
443
+ async def update(
444
+ self,
445
+ id: int,
446
+ *,
447
+ config: target_update_params.Config | Omit = omit,
448
+ description: str | Omit = omit,
449
+ name: str | Omit = omit,
450
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"]
451
+ | Omit = omit,
452
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
453
+ # The extra values given here take precedence over values defined on the client or passed to this method.
454
+ extra_headers: Headers | None = None,
455
+ extra_query: Query | None = None,
456
+ extra_body: Body | None = None,
457
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
458
+ ) -> LogsUploaderTarget:
459
+ """
460
+ Change logs uploader target partially.
461
+
462
+ Args:
463
+ config: Config for specific storage type.
464
+
465
+ description: Description of the target.
466
+
467
+ name: Name of the target.
468
+
469
+ storage_type: Type of storage for logs.
470
+
471
+ extra_headers: Send extra headers
472
+
473
+ extra_query: Add additional query parameters to the request
474
+
475
+ extra_body: Add additional JSON properties to the request
476
+
477
+ timeout: Override the client-level default timeout for this request, in seconds
478
+ """
479
+ return await self._patch(
480
+ f"/cdn/logs_uploader/targets/{id}"
481
+ if self._client._base_url_overridden
482
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
483
+ body=await async_maybe_transform(
484
+ {
485
+ "config": config,
486
+ "description": description,
487
+ "name": name,
488
+ "storage_type": storage_type,
489
+ },
490
+ target_update_params.TargetUpdateParams,
491
+ ),
492
+ options=make_request_options(
493
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
494
+ ),
495
+ cast_to=LogsUploaderTarget,
496
+ )
497
+
498
+ async def list(
499
+ self,
500
+ *,
501
+ config_ids: Iterable[int] | Omit = omit,
502
+ search: str | Omit = omit,
503
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
504
+ # The extra values given here take precedence over values defined on the client or passed to this method.
505
+ extra_headers: Headers | None = None,
506
+ extra_query: Query | None = None,
507
+ extra_body: Body | None = None,
508
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
509
+ ) -> LogsUploaderTargetList:
510
+ """
511
+ Get list of logs uploader targets.
512
+
513
+ Args:
514
+ config_ids: Filter by ids of related logs uploader configs that use given target.
515
+
516
+ search: Search by target name or id.
517
+
518
+ extra_headers: Send extra headers
519
+
520
+ extra_query: Add additional query parameters to the request
521
+
522
+ extra_body: Add additional JSON properties to the request
523
+
524
+ timeout: Override the client-level default timeout for this request, in seconds
525
+ """
526
+ return await self._get(
527
+ "/cdn/logs_uploader/targets"
528
+ if self._client._base_url_overridden
529
+ else "https://api.gcore.com//cdn/logs_uploader/targets",
530
+ options=make_request_options(
531
+ extra_headers=extra_headers,
532
+ extra_query=extra_query,
533
+ extra_body=extra_body,
534
+ timeout=timeout,
535
+ query=await async_maybe_transform(
536
+ {
537
+ "config_ids": config_ids,
538
+ "search": search,
539
+ },
540
+ target_list_params.TargetListParams,
541
+ ),
542
+ ),
543
+ cast_to=LogsUploaderTargetList,
544
+ )
545
+
546
+ async def delete(
547
+ self,
548
+ id: int,
549
+ *,
550
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
551
+ # The extra values given here take precedence over values defined on the client or passed to this method.
552
+ extra_headers: Headers | None = None,
553
+ extra_query: Query | None = None,
554
+ extra_body: Body | None = None,
555
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
556
+ ) -> None:
557
+ """
558
+ Delete the logs uploader target from the system permanently.
559
+
560
+ Notes:
561
+
562
+ - **Irreversibility**: This action is irreversible. Once deleted, the logs
563
+ uploader target cannot be recovered.
564
+
565
+ Args:
566
+ extra_headers: Send extra headers
567
+
568
+ extra_query: Add additional query parameters to the request
569
+
570
+ extra_body: Add additional JSON properties to the request
571
+
572
+ timeout: Override the client-level default timeout for this request, in seconds
573
+ """
574
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
575
+ return await self._delete(
576
+ f"/cdn/logs_uploader/targets/{id}"
577
+ if self._client._base_url_overridden
578
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
579
+ options=make_request_options(
580
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
581
+ ),
582
+ cast_to=NoneType,
583
+ )
584
+
585
+ async def get(
586
+ self,
587
+ id: int,
588
+ *,
589
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
590
+ # The extra values given here take precedence over values defined on the client or passed to this method.
591
+ extra_headers: Headers | None = None,
592
+ extra_query: Query | None = None,
593
+ extra_body: Body | None = None,
594
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
595
+ ) -> LogsUploaderTarget:
596
+ """
597
+ Get information about logs uploader target.
598
+
599
+ Args:
600
+ extra_headers: Send extra headers
601
+
602
+ extra_query: Add additional query parameters to the request
603
+
604
+ extra_body: Add additional JSON properties to the request
605
+
606
+ timeout: Override the client-level default timeout for this request, in seconds
607
+ """
608
+ return await self._get(
609
+ f"/cdn/logs_uploader/targets/{id}"
610
+ if self._client._base_url_overridden
611
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
612
+ options=make_request_options(
613
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
614
+ ),
615
+ cast_to=LogsUploaderTarget,
616
+ )
617
+
618
+ async def replace(
619
+ self,
620
+ id: int,
621
+ *,
622
+ config: target_replace_params.Config,
623
+ storage_type: Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"],
624
+ description: str | Omit = omit,
625
+ name: str | Omit = omit,
626
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
627
+ # The extra values given here take precedence over values defined on the client or passed to this method.
628
+ extra_headers: Headers | None = None,
629
+ extra_query: Query | None = None,
630
+ extra_body: Body | None = None,
631
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
632
+ ) -> LogsUploaderTarget:
633
+ """
634
+ Change logs uploader target.
635
+
636
+ Args:
637
+ config: Config for specific storage type.
638
+
639
+ storage_type: Type of storage for logs.
640
+
641
+ description: Description of the target.
642
+
643
+ name: Name of the target.
644
+
645
+ extra_headers: Send extra headers
646
+
647
+ extra_query: Add additional query parameters to the request
648
+
649
+ extra_body: Add additional JSON properties to the request
650
+
651
+ timeout: Override the client-level default timeout for this request, in seconds
652
+ """
653
+ return await self._put(
654
+ f"/cdn/logs_uploader/targets/{id}"
655
+ if self._client._base_url_overridden
656
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}",
657
+ body=await async_maybe_transform(
658
+ {
659
+ "config": config,
660
+ "storage_type": storage_type,
661
+ "description": description,
662
+ "name": name,
663
+ },
664
+ target_replace_params.TargetReplaceParams,
665
+ ),
666
+ options=make_request_options(
667
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
668
+ ),
669
+ cast_to=LogsUploaderTarget,
670
+ )
671
+
672
+ async def validate(
673
+ self,
674
+ id: int,
675
+ *,
676
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
677
+ # The extra values given here take precedence over values defined on the client or passed to this method.
678
+ extra_headers: Headers | None = None,
679
+ extra_query: Query | None = None,
680
+ extra_body: Body | None = None,
681
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
682
+ ) -> LogsUploaderValidation:
683
+ """
684
+ Validate logs uploader target.
685
+
686
+ Args:
687
+ extra_headers: Send extra headers
688
+
689
+ extra_query: Add additional query parameters to the request
690
+
691
+ extra_body: Add additional JSON properties to the request
692
+
693
+ timeout: Override the client-level default timeout for this request, in seconds
694
+ """
695
+ return await self._post(
696
+ f"/cdn/logs_uploader/targets/{id}/validate"
697
+ if self._client._base_url_overridden
698
+ else f"https://api.gcore.com//cdn/logs_uploader/targets/{id}/validate",
699
+ options=make_request_options(
700
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
701
+ ),
702
+ cast_to=LogsUploaderValidation,
703
+ )
704
+
705
+
706
+ class TargetsResourceWithRawResponse:
707
+ def __init__(self, targets: TargetsResource) -> None:
708
+ self._targets = targets
709
+
710
+ self.create = to_raw_response_wrapper(
711
+ targets.create,
712
+ )
713
+ self.update = to_raw_response_wrapper(
714
+ targets.update,
715
+ )
716
+ self.list = to_raw_response_wrapper(
717
+ targets.list,
718
+ )
719
+ self.delete = to_raw_response_wrapper(
720
+ targets.delete,
721
+ )
722
+ self.get = to_raw_response_wrapper(
723
+ targets.get,
724
+ )
725
+ self.replace = to_raw_response_wrapper(
726
+ targets.replace,
727
+ )
728
+ self.validate = to_raw_response_wrapper(
729
+ targets.validate,
730
+ )
731
+
732
+
733
+ class AsyncTargetsResourceWithRawResponse:
734
+ def __init__(self, targets: AsyncTargetsResource) -> None:
735
+ self._targets = targets
736
+
737
+ self.create = async_to_raw_response_wrapper(
738
+ targets.create,
739
+ )
740
+ self.update = async_to_raw_response_wrapper(
741
+ targets.update,
742
+ )
743
+ self.list = async_to_raw_response_wrapper(
744
+ targets.list,
745
+ )
746
+ self.delete = async_to_raw_response_wrapper(
747
+ targets.delete,
748
+ )
749
+ self.get = async_to_raw_response_wrapper(
750
+ targets.get,
751
+ )
752
+ self.replace = async_to_raw_response_wrapper(
753
+ targets.replace,
754
+ )
755
+ self.validate = async_to_raw_response_wrapper(
756
+ targets.validate,
757
+ )
758
+
759
+
760
+ class TargetsResourceWithStreamingResponse:
761
+ def __init__(self, targets: TargetsResource) -> None:
762
+ self._targets = targets
763
+
764
+ self.create = to_streamed_response_wrapper(
765
+ targets.create,
766
+ )
767
+ self.update = to_streamed_response_wrapper(
768
+ targets.update,
769
+ )
770
+ self.list = to_streamed_response_wrapper(
771
+ targets.list,
772
+ )
773
+ self.delete = to_streamed_response_wrapper(
774
+ targets.delete,
775
+ )
776
+ self.get = to_streamed_response_wrapper(
777
+ targets.get,
778
+ )
779
+ self.replace = to_streamed_response_wrapper(
780
+ targets.replace,
781
+ )
782
+ self.validate = to_streamed_response_wrapper(
783
+ targets.validate,
784
+ )
785
+
786
+
787
+ class AsyncTargetsResourceWithStreamingResponse:
788
+ def __init__(self, targets: AsyncTargetsResource) -> None:
789
+ self._targets = targets
790
+
791
+ self.create = async_to_streamed_response_wrapper(
792
+ targets.create,
793
+ )
794
+ self.update = async_to_streamed_response_wrapper(
795
+ targets.update,
796
+ )
797
+ self.list = async_to_streamed_response_wrapper(
798
+ targets.list,
799
+ )
800
+ self.delete = async_to_streamed_response_wrapper(
801
+ targets.delete,
802
+ )
803
+ self.get = async_to_streamed_response_wrapper(
804
+ targets.get,
805
+ )
806
+ self.replace = async_to_streamed_response_wrapper(
807
+ targets.replace,
808
+ )
809
+ self.validate = async_to_streamed_response_wrapper(
810
+ targets.validate,
811
+ )