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,419 @@
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
+
7
+ import httpx
8
+
9
+ from ..._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
10
+ from ..._utils import maybe_transform, async_maybe_transform
11
+ from ..._compat import cached_property
12
+ from ..._resource import SyncAPIResource, AsyncAPIResource
13
+ from ..._response import (
14
+ to_raw_response_wrapper,
15
+ to_streamed_response_wrapper,
16
+ async_to_raw_response_wrapper,
17
+ async_to_streamed_response_wrapper,
18
+ )
19
+ from ...types.cdn import metric_list_params
20
+ from ..._base_client import make_request_options
21
+ from ...types.cdn.cdn_metrics import CdnMetrics
22
+
23
+ __all__ = ["MetricsResource", "AsyncMetricsResource"]
24
+
25
+
26
+ class MetricsResource(SyncAPIResource):
27
+ @cached_property
28
+ def with_raw_response(self) -> MetricsResourceWithRawResponse:
29
+ """
30
+ This property can be used as a prefix for any HTTP method call to return
31
+ the raw response object instead of the parsed content.
32
+
33
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
34
+ """
35
+ return MetricsResourceWithRawResponse(self)
36
+
37
+ @cached_property
38
+ def with_streaming_response(self) -> MetricsResourceWithStreamingResponse:
39
+ """
40
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
41
+
42
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
43
+ """
44
+ return MetricsResourceWithStreamingResponse(self)
45
+
46
+ def list(
47
+ self,
48
+ *,
49
+ from_: str,
50
+ metrics: SequenceNotStr[str],
51
+ to: str,
52
+ filter_by: Iterable[metric_list_params.FilterBy] | Omit = omit,
53
+ granularity: str | Omit = omit,
54
+ group_by: SequenceNotStr[str] | Omit = omit,
55
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
56
+ # The extra values given here take precedence over values defined on the client or passed to this method.
57
+ extra_headers: Headers | None = None,
58
+ extra_query: Query | None = None,
59
+ extra_body: Body | None = None,
60
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
61
+ ) -> CdnMetrics:
62
+ """
63
+ Get CDN metrics
64
+
65
+ Args:
66
+ from_: Beginning period to fetch metrics (ISO 8601/RFC 3339 format, UTC.)
67
+
68
+ Examples:
69
+
70
+ - 2021-06-14T00:00:00Z
71
+ - 2021-06-14T00:00:00.000Z
72
+
73
+ The total number of points, which is determined as the difference between "from"
74
+ and "to" divided by "granularity", cannot exceed 1440. Exception: "speed"
75
+ metrics are limited to 72 points.
76
+
77
+ metrics:
78
+ Possible values:
79
+
80
+ - **`edge_bandwidth`** - Bandwidth from client to CDN (bit/s.)
81
+ - **`edge_requests`** - Number of requests per interval (requests/s.)
82
+ - **`edge_requests_total`** - Total number of requests per interval.
83
+ - **`edge_status_1xx`** - Number of 1xx status codes from edge.
84
+ - **`edge_status_200`** - Number of 200 status codes from edge.
85
+ - **`edge_status_204`** - Number of 204 status codes from edge.
86
+ - **`edge_status_206`** - Number of 206 status codes from edge.
87
+ - **`edge_status_2xx`** - Number of 2xx status codes from edge.
88
+ - **`edge_status_301`** - Number of 301 status codes from edge.
89
+ - **`edge_status_302`** - Number of 302 status codes from edge.
90
+ - **`edge_status_304`** - Number of 304 status codes from edge.
91
+ - **`edge_status_3xx`** - Number of 3xx status codes from edge.
92
+ - **`edge_status_400`** - Number of 400 status codes from edge.
93
+ - **`edge_status_401`** - Number of 401 status codes from edge.
94
+ - **`edge_status_403`** - Number of 403 status codes from edge.
95
+ - **`edge_status_404`** - Number of 404 status codes from edge.
96
+ - **`edge_status_416`** - Number of 416 status codes from edge.
97
+ - **`edge_status_429`** - Number of 429 status codes from edge.
98
+ - **`edge_status_4xx`** - Number of 4xx status codes from edge.
99
+ - **`edge_status_500`** - Number of 500 status codes from edge.
100
+ - **`edge_status_501`** - Number of 501 status codes from edge.
101
+ - **`edge_status_502`** - Number of 502 status codes from edge.
102
+ - **`edge_status_503`** - Number of 503 status codes from edge.
103
+ - **`edge_status_504`** - Number of 504 status codes from edge.
104
+ - **`edge_status_505`** - Number of 505 status codes from edge.
105
+ - **`edge_status_5xx`** - Number of 5xx status codes from edge.
106
+ - **`edge_hit_ratio`** - Percent of cache hits (0.0 - 1.0).
107
+ - **`edge_hit_bytes`** - Number of bytes sent back when cache hits.
108
+ - **`origin_bandwidth`** - Bandwidth from CDN to Origin (bit/s.)
109
+ - **`origin_requests`** - Number of requests per interval (requests/s.)
110
+ - **`origin_status_1xx`** - Number of 1xx status from origin.
111
+ - **`origin_status_200`** - Number of 200 status from origin.
112
+ - **`origin_status_204`** - Number of 204 status from origin.
113
+ - **`origin_status_206`** - Number of 206 status from origin.
114
+ - **`origin_status_2xx`** - Number of 2xx status from origin.
115
+ - **`origin_status_301`** - Number of 301 status from origin.
116
+ - **`origin_status_302`** - Number of 302 status from origin.
117
+ - **`origin_status_304`** - Number of 304 status from origin.
118
+ - **`origin_status_3xx`** - Number of 3xx status from origin.
119
+ - **`origin_status_400`** - Number of 400 status from origin.
120
+ - **`origin_status_401`** - Number of 401 status from origin.
121
+ - **`origin_status_403`** - Number of 403 status from origin.
122
+ - **`origin_status_404`** - Number of 404 status from origin.
123
+ - **`origin_status_416`** - Number of 416 status from origin.
124
+ - **`origin_status_429`** - Number of 426 status from origin.
125
+ - **`origin_status_4xx`** - Number of 4xx status from origin.
126
+ - **`origin_status_500`** - Number of 500 status from origin.
127
+ - **`origin_status_501`** - Number of 501 status from origin.
128
+ - **`origin_status_502`** - Number of 502 status from origin.
129
+ - **`origin_status_503`** - Number of 503 status from origin.
130
+ - **`origin_status_504`** - Number of 504 status from origin.
131
+ - **`origin_status_505`** - Number of 505 status from origin.
132
+ - **`origin_status_5xx`** - Number of 5xx status from origin.
133
+ - **`edge_download_speed`** - Download speed from edge in KB/s (includes only
134
+ requests that status was in the range [200, 300].)
135
+ - **`origin_download_speed`** - Download speed from origin in KB/s (includes
136
+ only requests that status was in the range [200, 300].)
137
+
138
+ to: Specifies ending period to fetch metrics (ISO 8601/RFC 3339 format, UTC)
139
+
140
+ Examples:
141
+
142
+ - 2021-06-15T00:00:00Z
143
+ - 2021-06-15T00:00:00.000Z
144
+
145
+ The total number of points, which is determined as the difference between "from"
146
+ and "to" divided by "granularity", cannot exceed 1440. Exception: "speed"
147
+ metrics are limited to 72 points.
148
+
149
+ filter_by: Each item represents one filter statement.
150
+
151
+ granularity: Duration of the time blocks into which the data is divided. The value must
152
+ correspond to the ISO 8601 period format.
153
+
154
+ Examples:
155
+
156
+ - P1D
157
+ - PT5M
158
+
159
+ Notes:
160
+
161
+ - The total number of points, which is determined as the difference between
162
+ "from" and "to" divided by "granularity", cannot exceed 1440. Exception:
163
+ "speed" metrics are limited to 72 points.
164
+ - For "speed" metrics the value must be a multiple of 5.
165
+
166
+ group_by: Output data grouping.
167
+
168
+ Possible values:
169
+
170
+ - **resource** - Data is grouped by CDN resource.
171
+ - **cname** - Data is grouped by common names.
172
+ - **region** – Data is grouped by regions (continents.) Available for "speed"
173
+ metrics only.
174
+ - **isp** - Data is grouped by ISP names. Available for "speed" metrics only.
175
+
176
+ extra_headers: Send extra headers
177
+
178
+ extra_query: Add additional query parameters to the request
179
+
180
+ extra_body: Add additional JSON properties to the request
181
+
182
+ timeout: Override the client-level default timeout for this request, in seconds
183
+ """
184
+ return self._post(
185
+ "/cdn/advanced/v1/metrics"
186
+ if self._client._base_url_overridden
187
+ else "https://api.gcore.com//cdn/advanced/v1/metrics",
188
+ body=maybe_transform(
189
+ {
190
+ "from_": from_,
191
+ "metrics": metrics,
192
+ "to": to,
193
+ "filter_by": filter_by,
194
+ "granularity": granularity,
195
+ "group_by": group_by,
196
+ },
197
+ metric_list_params.MetricListParams,
198
+ ),
199
+ options=make_request_options(
200
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
201
+ ),
202
+ cast_to=CdnMetrics,
203
+ )
204
+
205
+
206
+ class AsyncMetricsResource(AsyncAPIResource):
207
+ @cached_property
208
+ def with_raw_response(self) -> AsyncMetricsResourceWithRawResponse:
209
+ """
210
+ This property can be used as a prefix for any HTTP method call to return
211
+ the raw response object instead of the parsed content.
212
+
213
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
214
+ """
215
+ return AsyncMetricsResourceWithRawResponse(self)
216
+
217
+ @cached_property
218
+ def with_streaming_response(self) -> AsyncMetricsResourceWithStreamingResponse:
219
+ """
220
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
221
+
222
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
223
+ """
224
+ return AsyncMetricsResourceWithStreamingResponse(self)
225
+
226
+ async def list(
227
+ self,
228
+ *,
229
+ from_: str,
230
+ metrics: SequenceNotStr[str],
231
+ to: str,
232
+ filter_by: Iterable[metric_list_params.FilterBy] | Omit = omit,
233
+ granularity: str | Omit = omit,
234
+ group_by: SequenceNotStr[str] | Omit = omit,
235
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
236
+ # The extra values given here take precedence over values defined on the client or passed to this method.
237
+ extra_headers: Headers | None = None,
238
+ extra_query: Query | None = None,
239
+ extra_body: Body | None = None,
240
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
241
+ ) -> CdnMetrics:
242
+ """
243
+ Get CDN metrics
244
+
245
+ Args:
246
+ from_: Beginning period to fetch metrics (ISO 8601/RFC 3339 format, UTC.)
247
+
248
+ Examples:
249
+
250
+ - 2021-06-14T00:00:00Z
251
+ - 2021-06-14T00:00:00.000Z
252
+
253
+ The total number of points, which is determined as the difference between "from"
254
+ and "to" divided by "granularity", cannot exceed 1440. Exception: "speed"
255
+ metrics are limited to 72 points.
256
+
257
+ metrics:
258
+ Possible values:
259
+
260
+ - **`edge_bandwidth`** - Bandwidth from client to CDN (bit/s.)
261
+ - **`edge_requests`** - Number of requests per interval (requests/s.)
262
+ - **`edge_requests_total`** - Total number of requests per interval.
263
+ - **`edge_status_1xx`** - Number of 1xx status codes from edge.
264
+ - **`edge_status_200`** - Number of 200 status codes from edge.
265
+ - **`edge_status_204`** - Number of 204 status codes from edge.
266
+ - **`edge_status_206`** - Number of 206 status codes from edge.
267
+ - **`edge_status_2xx`** - Number of 2xx status codes from edge.
268
+ - **`edge_status_301`** - Number of 301 status codes from edge.
269
+ - **`edge_status_302`** - Number of 302 status codes from edge.
270
+ - **`edge_status_304`** - Number of 304 status codes from edge.
271
+ - **`edge_status_3xx`** - Number of 3xx status codes from edge.
272
+ - **`edge_status_400`** - Number of 400 status codes from edge.
273
+ - **`edge_status_401`** - Number of 401 status codes from edge.
274
+ - **`edge_status_403`** - Number of 403 status codes from edge.
275
+ - **`edge_status_404`** - Number of 404 status codes from edge.
276
+ - **`edge_status_416`** - Number of 416 status codes from edge.
277
+ - **`edge_status_429`** - Number of 429 status codes from edge.
278
+ - **`edge_status_4xx`** - Number of 4xx status codes from edge.
279
+ - **`edge_status_500`** - Number of 500 status codes from edge.
280
+ - **`edge_status_501`** - Number of 501 status codes from edge.
281
+ - **`edge_status_502`** - Number of 502 status codes from edge.
282
+ - **`edge_status_503`** - Number of 503 status codes from edge.
283
+ - **`edge_status_504`** - Number of 504 status codes from edge.
284
+ - **`edge_status_505`** - Number of 505 status codes from edge.
285
+ - **`edge_status_5xx`** - Number of 5xx status codes from edge.
286
+ - **`edge_hit_ratio`** - Percent of cache hits (0.0 - 1.0).
287
+ - **`edge_hit_bytes`** - Number of bytes sent back when cache hits.
288
+ - **`origin_bandwidth`** - Bandwidth from CDN to Origin (bit/s.)
289
+ - **`origin_requests`** - Number of requests per interval (requests/s.)
290
+ - **`origin_status_1xx`** - Number of 1xx status from origin.
291
+ - **`origin_status_200`** - Number of 200 status from origin.
292
+ - **`origin_status_204`** - Number of 204 status from origin.
293
+ - **`origin_status_206`** - Number of 206 status from origin.
294
+ - **`origin_status_2xx`** - Number of 2xx status from origin.
295
+ - **`origin_status_301`** - Number of 301 status from origin.
296
+ - **`origin_status_302`** - Number of 302 status from origin.
297
+ - **`origin_status_304`** - Number of 304 status from origin.
298
+ - **`origin_status_3xx`** - Number of 3xx status from origin.
299
+ - **`origin_status_400`** - Number of 400 status from origin.
300
+ - **`origin_status_401`** - Number of 401 status from origin.
301
+ - **`origin_status_403`** - Number of 403 status from origin.
302
+ - **`origin_status_404`** - Number of 404 status from origin.
303
+ - **`origin_status_416`** - Number of 416 status from origin.
304
+ - **`origin_status_429`** - Number of 426 status from origin.
305
+ - **`origin_status_4xx`** - Number of 4xx status from origin.
306
+ - **`origin_status_500`** - Number of 500 status from origin.
307
+ - **`origin_status_501`** - Number of 501 status from origin.
308
+ - **`origin_status_502`** - Number of 502 status from origin.
309
+ - **`origin_status_503`** - Number of 503 status from origin.
310
+ - **`origin_status_504`** - Number of 504 status from origin.
311
+ - **`origin_status_505`** - Number of 505 status from origin.
312
+ - **`origin_status_5xx`** - Number of 5xx status from origin.
313
+ - **`edge_download_speed`** - Download speed from edge in KB/s (includes only
314
+ requests that status was in the range [200, 300].)
315
+ - **`origin_download_speed`** - Download speed from origin in KB/s (includes
316
+ only requests that status was in the range [200, 300].)
317
+
318
+ to: Specifies ending period to fetch metrics (ISO 8601/RFC 3339 format, UTC)
319
+
320
+ Examples:
321
+
322
+ - 2021-06-15T00:00:00Z
323
+ - 2021-06-15T00:00:00.000Z
324
+
325
+ The total number of points, which is determined as the difference between "from"
326
+ and "to" divided by "granularity", cannot exceed 1440. Exception: "speed"
327
+ metrics are limited to 72 points.
328
+
329
+ filter_by: Each item represents one filter statement.
330
+
331
+ granularity: Duration of the time blocks into which the data is divided. The value must
332
+ correspond to the ISO 8601 period format.
333
+
334
+ Examples:
335
+
336
+ - P1D
337
+ - PT5M
338
+
339
+ Notes:
340
+
341
+ - The total number of points, which is determined as the difference between
342
+ "from" and "to" divided by "granularity", cannot exceed 1440. Exception:
343
+ "speed" metrics are limited to 72 points.
344
+ - For "speed" metrics the value must be a multiple of 5.
345
+
346
+ group_by: Output data grouping.
347
+
348
+ Possible values:
349
+
350
+ - **resource** - Data is grouped by CDN resource.
351
+ - **cname** - Data is grouped by common names.
352
+ - **region** – Data is grouped by regions (continents.) Available for "speed"
353
+ metrics only.
354
+ - **isp** - Data is grouped by ISP names. Available for "speed" metrics only.
355
+
356
+ extra_headers: Send extra headers
357
+
358
+ extra_query: Add additional query parameters to the request
359
+
360
+ extra_body: Add additional JSON properties to the request
361
+
362
+ timeout: Override the client-level default timeout for this request, in seconds
363
+ """
364
+ return await self._post(
365
+ "/cdn/advanced/v1/metrics"
366
+ if self._client._base_url_overridden
367
+ else "https://api.gcore.com//cdn/advanced/v1/metrics",
368
+ body=await async_maybe_transform(
369
+ {
370
+ "from_": from_,
371
+ "metrics": metrics,
372
+ "to": to,
373
+ "filter_by": filter_by,
374
+ "granularity": granularity,
375
+ "group_by": group_by,
376
+ },
377
+ metric_list_params.MetricListParams,
378
+ ),
379
+ options=make_request_options(
380
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
381
+ ),
382
+ cast_to=CdnMetrics,
383
+ )
384
+
385
+
386
+ class MetricsResourceWithRawResponse:
387
+ def __init__(self, metrics: MetricsResource) -> None:
388
+ self._metrics = metrics
389
+
390
+ self.list = to_raw_response_wrapper(
391
+ metrics.list,
392
+ )
393
+
394
+
395
+ class AsyncMetricsResourceWithRawResponse:
396
+ def __init__(self, metrics: AsyncMetricsResource) -> None:
397
+ self._metrics = metrics
398
+
399
+ self.list = async_to_raw_response_wrapper(
400
+ metrics.list,
401
+ )
402
+
403
+
404
+ class MetricsResourceWithStreamingResponse:
405
+ def __init__(self, metrics: MetricsResource) -> None:
406
+ self._metrics = metrics
407
+
408
+ self.list = to_streamed_response_wrapper(
409
+ metrics.list,
410
+ )
411
+
412
+
413
+ class AsyncMetricsResourceWithStreamingResponse:
414
+ def __init__(self, metrics: AsyncMetricsResource) -> None:
415
+ self._metrics = metrics
416
+
417
+ self.list = async_to_streamed_response_wrapper(
418
+ metrics.list,
419
+ )
@@ -0,0 +1,139 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ..._types import Body, Query, Headers, NotGiven, not_given
8
+ from ..._compat import cached_property
9
+ from ..._resource import SyncAPIResource, AsyncAPIResource
10
+ from ..._response import (
11
+ to_raw_response_wrapper,
12
+ to_streamed_response_wrapper,
13
+ async_to_raw_response_wrapper,
14
+ async_to_streamed_response_wrapper,
15
+ )
16
+ from ..._base_client import make_request_options
17
+ from ...types.cdn.network_capacity import NetworkCapacity
18
+
19
+ __all__ = ["NetworkCapacityResource", "AsyncNetworkCapacityResource"]
20
+
21
+
22
+ class NetworkCapacityResource(SyncAPIResource):
23
+ @cached_property
24
+ def with_raw_response(self) -> NetworkCapacityResourceWithRawResponse:
25
+ """
26
+ This property can be used as a prefix for any HTTP method call to return
27
+ the raw response object instead of the parsed content.
28
+
29
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
30
+ """
31
+ return NetworkCapacityResourceWithRawResponse(self)
32
+
33
+ @cached_property
34
+ def with_streaming_response(self) -> NetworkCapacityResourceWithStreamingResponse:
35
+ """
36
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
37
+
38
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
39
+ """
40
+ return NetworkCapacityResourceWithStreamingResponse(self)
41
+
42
+ def list(
43
+ self,
44
+ *,
45
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
46
+ # The extra values given here take precedence over values defined on the client or passed to this method.
47
+ extra_headers: Headers | None = None,
48
+ extra_query: Query | None = None,
49
+ extra_body: Body | None = None,
50
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
51
+ ) -> NetworkCapacity:
52
+ """Get network capacity per country."""
53
+ return self._get(
54
+ "/cdn/advanced/v1/capacity"
55
+ if self._client._base_url_overridden
56
+ else "https://api.gcore.com//cdn/advanced/v1/capacity",
57
+ options=make_request_options(
58
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
59
+ ),
60
+ cast_to=NetworkCapacity,
61
+ )
62
+
63
+
64
+ class AsyncNetworkCapacityResource(AsyncAPIResource):
65
+ @cached_property
66
+ def with_raw_response(self) -> AsyncNetworkCapacityResourceWithRawResponse:
67
+ """
68
+ This property can be used as a prefix for any HTTP method call to return
69
+ the raw response object instead of the parsed content.
70
+
71
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
72
+ """
73
+ return AsyncNetworkCapacityResourceWithRawResponse(self)
74
+
75
+ @cached_property
76
+ def with_streaming_response(self) -> AsyncNetworkCapacityResourceWithStreamingResponse:
77
+ """
78
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
79
+
80
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
81
+ """
82
+ return AsyncNetworkCapacityResourceWithStreamingResponse(self)
83
+
84
+ async def list(
85
+ self,
86
+ *,
87
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
88
+ # The extra values given here take precedence over values defined on the client or passed to this method.
89
+ extra_headers: Headers | None = None,
90
+ extra_query: Query | None = None,
91
+ extra_body: Body | None = None,
92
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
93
+ ) -> NetworkCapacity:
94
+ """Get network capacity per country."""
95
+ return await self._get(
96
+ "/cdn/advanced/v1/capacity"
97
+ if self._client._base_url_overridden
98
+ else "https://api.gcore.com//cdn/advanced/v1/capacity",
99
+ options=make_request_options(
100
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
101
+ ),
102
+ cast_to=NetworkCapacity,
103
+ )
104
+
105
+
106
+ class NetworkCapacityResourceWithRawResponse:
107
+ def __init__(self, network_capacity: NetworkCapacityResource) -> None:
108
+ self._network_capacity = network_capacity
109
+
110
+ self.list = to_raw_response_wrapper(
111
+ network_capacity.list,
112
+ )
113
+
114
+
115
+ class AsyncNetworkCapacityResourceWithRawResponse:
116
+ def __init__(self, network_capacity: AsyncNetworkCapacityResource) -> None:
117
+ self._network_capacity = network_capacity
118
+
119
+ self.list = async_to_raw_response_wrapper(
120
+ network_capacity.list,
121
+ )
122
+
123
+
124
+ class NetworkCapacityResourceWithStreamingResponse:
125
+ def __init__(self, network_capacity: NetworkCapacityResource) -> None:
126
+ self._network_capacity = network_capacity
127
+
128
+ self.list = to_streamed_response_wrapper(
129
+ network_capacity.list,
130
+ )
131
+
132
+
133
+ class AsyncNetworkCapacityResourceWithStreamingResponse:
134
+ def __init__(self, network_capacity: AsyncNetworkCapacityResource) -> None:
135
+ self._network_capacity = network_capacity
136
+
137
+ self.list = async_to_streamed_response_wrapper(
138
+ network_capacity.list,
139
+ )