gcore 0.12.0__py3-none-any.whl → 0.14.0__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (340) hide show
  1. gcore/__init__.py +3 -1
  2. gcore/_base_client.py +9 -9
  3. gcore/_client.py +25 -10
  4. gcore/_models.py +10 -4
  5. gcore/_qs.py +7 -7
  6. gcore/_types.py +18 -11
  7. gcore/_utils/_transform.py +2 -2
  8. gcore/_utils/_utils.py +4 -4
  9. gcore/_version.py +1 -1
  10. gcore/pagination.py +137 -0
  11. gcore/resources/__init__.py +14 -0
  12. gcore/resources/cdn/__init__.py +201 -0
  13. gcore/resources/cdn/audit_log.py +406 -0
  14. gcore/resources/cdn/cdn.py +957 -0
  15. gcore/resources/cdn/certificates.py +1062 -0
  16. gcore/resources/cdn/ip_ranges.py +224 -0
  17. gcore/resources/cdn/logs/__init__.py +33 -0
  18. gcore/resources/cdn/logs/logs.py +1424 -0
  19. gcore/resources/cdn/logs/settings.py +1081 -0
  20. gcore/resources/cdn/logs_uploader/__init__.py +61 -0
  21. gcore/resources/cdn/logs_uploader/configs.py +868 -0
  22. gcore/resources/cdn/logs_uploader/logs_uploader.py +166 -0
  23. gcore/resources/cdn/logs_uploader/policies.py +1060 -0
  24. gcore/resources/cdn/logs_uploader/targets.py +811 -0
  25. gcore/resources/cdn/metrics.py +419 -0
  26. gcore/resources/cdn/network_capacity.py +139 -0
  27. gcore/resources/cdn/origin_groups.py +1496 -0
  28. gcore/resources/cdn/resources/__init__.py +47 -0
  29. gcore/resources/cdn/resources/resources.py +2060 -0
  30. gcore/resources/cdn/resources/rules.py +1027 -0
  31. gcore/resources/cdn/resources/shield.py +259 -0
  32. gcore/resources/cdn/rule_templates.py +883 -0
  33. gcore/resources/cdn/shields.py +139 -0
  34. gcore/resources/cdn/statistics.py +1408 -0
  35. gcore/resources/cdn/trusted_ca_certificates.py +592 -0
  36. gcore/resources/cloud/audit_logs.py +33 -29
  37. gcore/resources/cloud/baremetal/flavors.py +21 -17
  38. gcore/resources/cloud/baremetal/images.py +19 -15
  39. gcore/resources/cloud/baremetal/servers.py +141 -119
  40. gcore/resources/cloud/billing_reservations.py +41 -33
  41. gcore/resources/cloud/cloud.py +24 -0
  42. gcore/resources/cloud/cost_reports.py +149 -119
  43. gcore/resources/cloud/file_shares/access_rules.py +25 -13
  44. gcore/resources/cloud/file_shares/file_shares.py +107 -71
  45. gcore/resources/cloud/floating_ips.py +270 -52
  46. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +13 -9
  47. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +275 -65
  48. gcore/resources/cloud/gpu_baremetal_clusters/images.py +69 -53
  49. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +9 -5
  50. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +151 -127
  51. gcore/resources/cloud/inference/api_keys.py +51 -31
  52. gcore/resources/cloud/inference/applications/deployments.py +49 -31
  53. gcore/resources/cloud/inference/applications/templates.py +17 -9
  54. gcore/resources/cloud/inference/deployments/deployments.py +171 -139
  55. gcore/resources/cloud/inference/deployments/logs.py +17 -13
  56. gcore/resources/cloud/inference/flavors.py +21 -13
  57. gcore/resources/cloud/inference/inference.py +9 -5
  58. gcore/resources/cloud/inference/registry_credentials.py +45 -25
  59. gcore/resources/cloud/inference/secrets.py +45 -25
  60. gcore/resources/cloud/instances/flavors.py +17 -13
  61. gcore/resources/cloud/instances/images.py +153 -129
  62. gcore/resources/cloud/instances/instances.py +287 -213
  63. gcore/resources/cloud/instances/interfaces.py +165 -161
  64. gcore/resources/cloud/instances/metrics.py +9 -5
  65. gcore/resources/cloud/ip_ranges.py +25 -15
  66. gcore/resources/cloud/k8s/clusters/clusters.py +151 -87
  67. gcore/resources/cloud/k8s/clusters/nodes.py +19 -11
  68. gcore/resources/cloud/k8s/clusters/pools/nodes.py +19 -11
  69. gcore/resources/cloud/k8s/clusters/pools/pools.py +83 -59
  70. gcore/resources/cloud/k8s/flavors.py +13 -9
  71. gcore/resources/cloud/k8s/k8s.py +9 -5
  72. gcore/resources/cloud/load_balancers/flavors.py +11 -7
  73. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +103 -83
  74. gcore/resources/cloud/load_balancers/l7_policies/rules.py +77 -57
  75. gcore/resources/cloud/load_balancers/listeners.py +125 -105
  76. gcore/resources/cloud/load_balancers/load_balancers.py +155 -123
  77. gcore/resources/cloud/load_balancers/metrics.py +9 -5
  78. gcore/resources/cloud/load_balancers/pools/health_monitors.py +25 -17
  79. gcore/resources/cloud/load_balancers/pools/members.py +31 -23
  80. gcore/resources/cloud/load_balancers/pools/pools.py +155 -129
  81. gcore/resources/cloud/load_balancers/statuses.py +17 -9
  82. gcore/resources/cloud/networks/networks.py +79 -55
  83. gcore/resources/cloud/networks/routers.py +75 -47
  84. gcore/resources/cloud/networks/subnets.py +105 -81
  85. gcore/resources/cloud/placement_groups.py +33 -17
  86. gcore/resources/cloud/projects.py +53 -41
  87. gcore/resources/cloud/quotas/quotas.py +25 -13
  88. gcore/resources/cloud/quotas/requests.py +41 -25
  89. gcore/resources/cloud/regions.py +25 -23
  90. gcore/resources/cloud/registries/artifacts.py +17 -9
  91. gcore/resources/cloud/registries/registries.py +55 -29
  92. gcore/resources/cloud/registries/repositories.py +17 -9
  93. gcore/resources/cloud/registries/tags.py +9 -5
  94. gcore/resources/cloud/registries/users.py +65 -35
  95. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +123 -107
  96. gcore/resources/cloud/reserved_fixed_ips/vip.py +45 -25
  97. gcore/resources/cloud/secrets.py +43 -27
  98. gcore/resources/cloud/security_groups/rules.py +55 -43
  99. gcore/resources/cloud/security_groups/security_groups.py +79 -47
  100. gcore/resources/cloud/ssh_keys.py +51 -31
  101. gcore/resources/cloud/tasks.py +57 -45
  102. gcore/resources/cloud/usage_reports.py +27 -23
  103. gcore/resources/cloud/users/role_assignments.py +49 -33
  104. gcore/resources/cloud/volumes.py +237 -201
  105. gcore/resources/dns/dns.py +17 -13
  106. gcore/resources/dns/locations.py +29 -17
  107. gcore/resources/dns/metrics.py +13 -9
  108. gcore/resources/dns/pickers/pickers.py +5 -5
  109. gcore/resources/dns/pickers/presets.py +9 -5
  110. gcore/resources/dns/zones/dnssec.py +19 -11
  111. gcore/resources/dns/zones/rrsets.py +149 -91
  112. gcore/resources/dns/zones/zones.py +247 -189
  113. gcore/resources/fastedge/apps/apps.py +105 -89
  114. gcore/resources/fastedge/apps/logs.py +25 -21
  115. gcore/resources/fastedge/binaries.py +33 -17
  116. gcore/resources/fastedge/fastedge.py +5 -5
  117. gcore/resources/fastedge/kv_stores.py +43 -31
  118. gcore/resources/fastedge/secrets.py +69 -45
  119. gcore/resources/fastedge/statistics.py +25 -17
  120. gcore/resources/fastedge/templates.py +59 -39
  121. gcore/resources/iam/api_tokens.py +43 -27
  122. gcore/resources/iam/iam.py +5 -5
  123. gcore/resources/iam/users.py +97 -65
  124. gcore/resources/security/bgp_announces.py +27 -19
  125. gcore/resources/security/events.py +23 -19
  126. gcore/resources/security/profile_templates.py +9 -5
  127. gcore/resources/security/profiles.py +69 -45
  128. gcore/resources/storage/buckets/buckets.py +37 -25
  129. gcore/resources/storage/buckets/cors.py +19 -11
  130. gcore/resources/storage/buckets/lifecycle.py +19 -11
  131. gcore/resources/storage/buckets/policy.py +25 -13
  132. gcore/resources/storage/credentials.py +19 -15
  133. gcore/resources/storage/locations.py +13 -9
  134. gcore/resources/storage/statistics.py +39 -31
  135. gcore/resources/storage/storage.py +105 -69
  136. gcore/resources/streaming/ai_tasks.py +307 -197
  137. gcore/resources/streaming/broadcasts.py +63 -35
  138. gcore/resources/streaming/directories.py +65 -39
  139. gcore/resources/streaming/players.py +47 -31
  140. gcore/resources/streaming/playlists.py +189 -123
  141. gcore/resources/streaming/quality_sets.py +69 -39
  142. gcore/resources/streaming/restreams.py +47 -27
  143. gcore/resources/streaming/statistics.py +613 -407
  144. gcore/resources/streaming/streams/overlays.py +107 -67
  145. gcore/resources/streaming/streams/streams.py +403 -263
  146. gcore/resources/streaming/videos/subtitles.py +131 -75
  147. gcore/resources/streaming/videos/videos.py +429 -279
  148. gcore/resources/waap/advanced_rules.py +9 -5
  149. gcore/resources/waap/custom_page_sets.py +99 -75
  150. gcore/resources/waap/domains/advanced_rules.py +157 -99
  151. gcore/resources/waap/domains/api_discovery.py +71 -47
  152. gcore/resources/waap/domains/api_path_groups.py +9 -5
  153. gcore/resources/waap/domains/api_paths.py +79 -83
  154. gcore/resources/waap/domains/custom_rules.py +89 -59
  155. gcore/resources/waap/domains/domains.py +59 -41
  156. gcore/resources/waap/domains/firewall_rules.py +83 -55
  157. gcore/resources/waap/domains/insight_silences.py +59 -39
  158. gcore/resources/waap/domains/insights.py +39 -27
  159. gcore/resources/waap/domains/settings.py +21 -13
  160. gcore/resources/waap/domains/statistics.py +99 -75
  161. gcore/resources/waap/insights.py +23 -21
  162. gcore/resources/waap/ip_info/ip_info.py +70 -38
  163. gcore/resources/waap/ip_info/metrics.py +11 -7
  164. gcore/resources/waap/organizations.py +17 -13
  165. gcore/resources/waap/statistics.py +9 -5
  166. gcore/resources/waap/tags.py +17 -17
  167. gcore/resources/waap/waap.py +5 -5
  168. gcore/types/cdn/__init__.py +80 -0
  169. gcore/types/cdn/audit_log_list_params.py +73 -0
  170. gcore/types/cdn/ca_certificate.py +53 -0
  171. gcore/types/cdn/ca_certificate_list.py +10 -0
  172. gcore/types/cdn/cdn_account.py +86 -0
  173. gcore/types/cdn/cdn_account_limits.py +27 -0
  174. gcore/types/cdn/cdn_audit_log_entry.py +66 -0
  175. gcore/types/cdn/cdn_available_features.py +46 -0
  176. gcore/types/cdn/cdn_list_purge_statuses_params.py +67 -0
  177. gcore/types/cdn/cdn_log_entry.py +70 -0
  178. gcore/types/cdn/cdn_metrics.py +22 -0
  179. gcore/types/cdn/cdn_metrics_groups.py +13 -0
  180. gcore/types/cdn/cdn_metrics_values.py +19 -0
  181. gcore/types/cdn/cdn_resource.py +1977 -0
  182. gcore/types/cdn/cdn_resource_list.py +10 -0
  183. gcore/types/cdn/cdn_update_account_params.py +15 -0
  184. gcore/types/cdn/certificate_create_params.py +51 -0
  185. gcore/types/cdn/certificate_get_status_params.py +14 -0
  186. gcore/types/cdn/certificate_list_params.py +29 -0
  187. gcore/types/cdn/certificate_replace_params.py +39 -0
  188. gcore/types/cdn/log_download_params.py +279 -0
  189. gcore/types/cdn/log_list_params.py +273 -0
  190. gcore/types/cdn/logs/__init__.py +7 -0
  191. gcore/types/cdn/logs/log_settings.py +172 -0
  192. gcore/types/cdn/logs/setting_create_params.py +200 -0
  193. gcore/types/cdn/logs/setting_update_params.py +200 -0
  194. gcore/types/cdn/logs_aggregated_stats.py +23 -0
  195. gcore/types/cdn/logs_uploader/__init__.py +23 -0
  196. gcore/types/cdn/logs_uploader/config_create_params.py +32 -0
  197. gcore/types/cdn/logs_uploader/config_list_params.py +16 -0
  198. gcore/types/cdn/logs_uploader/config_replace_params.py +32 -0
  199. gcore/types/cdn/logs_uploader/config_update_params.py +32 -0
  200. gcore/types/cdn/logs_uploader/logs_uploader_config.py +51 -0
  201. gcore/types/cdn/logs_uploader/logs_uploader_config_list.py +10 -0
  202. gcore/types/cdn/logs_uploader/logs_uploader_policy.py +73 -0
  203. gcore/types/cdn/logs_uploader/logs_uploader_policy_list.py +10 -0
  204. gcore/types/cdn/logs_uploader/logs_uploader_target.py +236 -0
  205. gcore/types/cdn/logs_uploader/logs_uploader_target_list.py +10 -0
  206. gcore/types/cdn/logs_uploader/policy_create_params.py +61 -0
  207. gcore/types/cdn/logs_uploader/policy_list_fields_response.py +8 -0
  208. gcore/types/cdn/logs_uploader/policy_list_params.py +16 -0
  209. gcore/types/cdn/logs_uploader/policy_replace_params.py +61 -0
  210. gcore/types/cdn/logs_uploader/policy_update_params.py +61 -0
  211. gcore/types/cdn/logs_uploader/target_create_params.py +249 -0
  212. gcore/types/cdn/logs_uploader/target_list_params.py +16 -0
  213. gcore/types/cdn/logs_uploader/target_replace_params.py +249 -0
  214. gcore/types/cdn/logs_uploader/target_update_params.py +249 -0
  215. gcore/types/cdn/logs_uploader_validation.py +23 -0
  216. gcore/types/cdn/metric_list_params.py +168 -0
  217. gcore/types/cdn/network_capacity.py +22 -0
  218. gcore/types/cdn/origin_group_create_params.py +184 -0
  219. gcore/types/cdn/origin_group_list_params.py +24 -0
  220. gcore/types/cdn/origin_group_replace_params.py +190 -0
  221. gcore/types/cdn/origin_group_update_params.py +190 -0
  222. gcore/types/cdn/origin_groups.py +212 -0
  223. gcore/types/cdn/origin_groups_list.py +10 -0
  224. gcore/types/cdn/public_ip_list.py +15 -0
  225. gcore/types/cdn/public_network_list.py +15 -0
  226. gcore/types/cdn/purge_status.py +55 -0
  227. gcore/types/cdn/resource_aggregated_stats.py +80 -0
  228. gcore/types/cdn/resource_create_params.py +1825 -0
  229. gcore/types/cdn/resource_list_params.py +107 -0
  230. gcore/types/cdn/resource_prefetch_params.py +17 -0
  231. gcore/types/cdn/resource_purge_params.py +71 -0
  232. gcore/types/cdn/resource_replace_params.py +1803 -0
  233. gcore/types/cdn/resource_update_params.py +1794 -0
  234. gcore/types/cdn/resource_usage_stats.py +111 -0
  235. gcore/types/cdn/resources/__init__.py +11 -0
  236. gcore/types/cdn/resources/cdn_resource_rule.py +1695 -0
  237. gcore/types/cdn/resources/origin_shielding.py +15 -0
  238. gcore/types/cdn/resources/rule_create_params.py +1652 -0
  239. gcore/types/cdn/resources/rule_list_response.py +10 -0
  240. gcore/types/cdn/resources/rule_replace_params.py +1654 -0
  241. gcore/types/cdn/resources/rule_update_params.py +1654 -0
  242. gcore/types/cdn/resources/shield_replace_params.py +16 -0
  243. gcore/types/cdn/rule_template.py +1666 -0
  244. gcore/types/cdn/rule_template_create_params.py +1636 -0
  245. gcore/types/cdn/rule_template_list.py +10 -0
  246. gcore/types/cdn/rule_template_replace_params.py +1636 -0
  247. gcore/types/cdn/rule_template_update_params.py +1636 -0
  248. gcore/types/cdn/shield_aggregated_stats.py +23 -0
  249. gcore/types/cdn/shield_list_response.py +25 -0
  250. gcore/types/cdn/ssl_detail.py +62 -0
  251. gcore/types/cdn/ssl_detail_list.py +10 -0
  252. gcore/types/cdn/ssl_request_status.py +135 -0
  253. gcore/types/cdn/statistic_get_logs_usage_aggregated_params.py +42 -0
  254. gcore/types/cdn/statistic_get_logs_usage_series_params.py +35 -0
  255. gcore/types/cdn/statistic_get_resource_usage_aggregated_params.py +151 -0
  256. gcore/types/cdn/statistic_get_resource_usage_series_params.py +131 -0
  257. gcore/types/cdn/statistic_get_shield_usage_aggregated_params.py +42 -0
  258. gcore/types/cdn/statistic_get_shield_usage_series_params.py +25 -0
  259. gcore/types/cdn/trusted_ca_certificate_create_params.py +23 -0
  260. gcore/types/cdn/trusted_ca_certificate_list_params.py +29 -0
  261. gcore/types/cdn/trusted_ca_certificate_replace_params.py +15 -0
  262. gcore/types/cdn/usage_series_stats.py +31 -0
  263. gcore/types/cloud/__init__.py +2 -0
  264. gcore/types/cloud/file_share.py +4 -0
  265. gcore/types/cloud/file_share_create_params.py +20 -0
  266. gcore/types/cloud/file_share_update_params.py +40 -3
  267. gcore/types/cloud/floating_ip.py +1 -1
  268. gcore/types/cloud/floating_ip_detailed.py +1 -1
  269. gcore/types/cloud/floating_ip_update_params.py +43 -0
  270. gcore/types/cloud/gpu_baremetal_cluster_action_params.py +46 -0
  271. gcore/types/cloud/inference/inference_deployment.py +3 -1
  272. gcore/types/cloud/instance_create_params.py +3 -1
  273. gcore/types/cloud/k8s/cluster_create_params.py +46 -4
  274. gcore/types/cloud/k8s/cluster_update_params.py +60 -6
  275. gcore/types/cloud/k8s/clusters/pool_update_params.py +1 -1
  276. gcore/types/cloud/k8s/k8s_cluster.py +40 -3
  277. gcore/types/cloud/load_balancer_update_params.py +3 -1
  278. gcore/types/cloud/network_update_params.py +3 -1
  279. gcore/types/cloud/networks/subnet_update_params.py +3 -1
  280. gcore/types/cloud/registries/user_create_multiple_params.py +5 -3
  281. gcore/types/cloud/registries/user_create_params.py +5 -3
  282. gcore/types/cloud/registry_create_params.py +5 -3
  283. gcore/types/cloud/security_group_update_params.py +3 -1
  284. gcore/types/cloud/ssh_key_created.py +6 -3
  285. gcore/types/cloud/volume_update_params.py +3 -1
  286. gcore/types/dns/zone_get_statistics_params.py +12 -9
  287. gcore/types/dns/zone_get_statistics_response.py +3 -1
  288. gcore/types/dns/zone_import_params.py +21 -15
  289. gcore/types/dns/zones/dns_output_rrset.py +7 -3
  290. gcore/types/iam/account_overview.py +7 -2
  291. gcore/types/iam/user.py +7 -2
  292. gcore/types/iam/user_detailed.py +7 -2
  293. gcore/types/iam/user_invite_params.py +4 -1
  294. gcore/types/iam/user_update.py +7 -2
  295. gcore/types/iam/user_update_params.py +7 -2
  296. gcore/types/streaming/ai_contentmoderation_hardnudity.py +6 -4
  297. gcore/types/streaming/ai_contentmoderation_nsfw.py +6 -4
  298. gcore/types/streaming/ai_contentmoderation_softnudity.py +6 -4
  299. gcore/types/streaming/ai_contentmoderation_sport.py +6 -4
  300. gcore/types/streaming/ai_task.py +20 -11
  301. gcore/types/streaming/ai_task_create_params.py +20 -11
  302. gcore/types/streaming/ai_task_get_response.py +5 -4
  303. gcore/types/streaming/ai_task_list_params.py +11 -5
  304. gcore/types/streaming/clip.py +33 -22
  305. gcore/types/streaming/create_video_param.py +75 -43
  306. gcore/types/streaming/playlist.py +7 -5
  307. gcore/types/streaming/playlist_create_params.py +7 -5
  308. gcore/types/streaming/playlist_update_params.py +7 -5
  309. gcore/types/streaming/playlist_video.py +75 -43
  310. gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +7 -4
  311. gcore/types/streaming/stream.py +207 -136
  312. gcore/types/streaming/stream_create_clip_params.py +33 -22
  313. gcore/types/streaming/stream_create_params.py +41 -24
  314. gcore/types/streaming/stream_update_params.py +41 -24
  315. gcore/types/streaming/video.py +138 -76
  316. gcore/types/streaming/video_list_params.py +4 -2
  317. gcore/types/streaming/video_update_params.py +75 -43
  318. gcore/types/waap/__init__.py +2 -1
  319. gcore/types/waap/domain_update_params.py +2 -2
  320. gcore/types/waap/domains/advanced_rule_create_params.py +26 -18
  321. gcore/types/waap/domains/advanced_rule_list_params.py +10 -7
  322. gcore/types/waap/domains/advanced_rule_update_params.py +22 -17
  323. gcore/types/waap/domains/api_path_create_params.py +0 -3
  324. gcore/types/waap/domains/api_path_update_params.py +1 -3
  325. gcore/types/waap/domains/custom_rule_create_params.py +36 -35
  326. gcore/types/waap/domains/custom_rule_update_params.py +31 -33
  327. gcore/types/waap/domains/firewall_rule_create_params.py +6 -6
  328. gcore/types/waap/domains/firewall_rule_update_params.py +5 -5
  329. gcore/types/waap/domains/waap_advanced_rule.py +17 -9
  330. gcore/types/waap/domains/waap_custom_rule.py +5 -2
  331. gcore/types/waap/domains/waap_firewall_rule.py +1 -1
  332. gcore/types/waap/domains/waap_insight.py +1 -1
  333. gcore/types/waap/insight_list_types_params.py +1 -1
  334. gcore/types/waap/ip_info_get_top_urls_response.py +3 -12
  335. gcore/types/waap/{ip_info_get_ip_info_response.py → waap_ip_info.py} +2 -2
  336. gcore/types/waap/waap_top_url.py +13 -0
  337. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/METADATA +1 -1
  338. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/RECORD +340 -218
  339. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/WHEEL +0 -0
  340. {gcore-0.12.0.dist-info → gcore-0.14.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,236 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, List, Union, Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal, TypeAlias
6
+
7
+ from ...._models import BaseModel
8
+ from ..logs_uploader_validation import LogsUploaderValidation
9
+
10
+ __all__ = [
11
+ "LogsUploaderTarget",
12
+ "Config",
13
+ "ConfigS3GcoreConfigResponse",
14
+ "ConfigS3AmazonConfigResponse",
15
+ "ConfigUnionMember2",
16
+ "ConfigBaseFtpConfig",
17
+ "ConfigSftpConfigResponse",
18
+ "ConfigHTTPConfigResponse",
19
+ "ConfigHTTPConfigResponseAppend",
20
+ "ConfigHTTPConfigResponseAppendResponseAction",
21
+ "ConfigHTTPConfigResponseAuth",
22
+ "ConfigHTTPConfigResponseAuthConfig",
23
+ "ConfigHTTPConfigResponseRetry",
24
+ "ConfigHTTPConfigResponseRetryResponseAction",
25
+ "ConfigHTTPConfigResponseUpload",
26
+ "ConfigHTTPConfigResponseUploadResponseAction",
27
+ "Status",
28
+ ]
29
+
30
+
31
+ class ConfigS3GcoreConfigResponse(BaseModel):
32
+ access_key_id: Optional[str] = None
33
+
34
+ bucket_name: Optional[str] = None
35
+
36
+ directory: Optional[str] = None
37
+
38
+ endpoint: Optional[str] = None
39
+
40
+ region: Optional[str] = None
41
+
42
+ use_path_style: Optional[bool] = None
43
+
44
+
45
+ class ConfigS3AmazonConfigResponse(BaseModel):
46
+ access_key_id: Optional[str] = None
47
+
48
+ bucket_name: Optional[str] = None
49
+
50
+ directory: Optional[str] = None
51
+
52
+ region: Optional[str] = None
53
+
54
+
55
+ class ConfigUnionMember2(BaseModel):
56
+ access_key_id: Optional[str] = None
57
+
58
+ bucket_name: Optional[str] = None
59
+
60
+ directory: Optional[str] = None
61
+
62
+ region: Optional[str] = None
63
+
64
+
65
+ class ConfigBaseFtpConfig(BaseModel):
66
+ directory: Optional[str] = None
67
+
68
+ hostname: Optional[str] = None
69
+
70
+ timeout_seconds: Optional[int] = None
71
+
72
+ user: Optional[str] = None
73
+
74
+
75
+ class ConfigSftpConfigResponse(BaseModel):
76
+ hostname: str
77
+
78
+ user: str
79
+
80
+ directory: Optional[str] = None
81
+
82
+ key_passphrase: Optional[str] = None
83
+
84
+ password: Optional[str] = None
85
+
86
+ private_key: Optional[str] = None
87
+
88
+ timeout_seconds: Optional[int] = None
89
+
90
+
91
+ class ConfigHTTPConfigResponseAppendResponseAction(BaseModel):
92
+ action: Optional[Literal["drop", "retry", "append"]] = None
93
+
94
+ description: Optional[str] = None
95
+
96
+ match_payload: Optional[str] = None
97
+
98
+ match_status_code: Optional[int] = None
99
+
100
+
101
+ class ConfigHTTPConfigResponseAppend(BaseModel):
102
+ headers: Optional[Dict[str, str]] = None
103
+
104
+ method: Optional[Literal["POST", "PUT"]] = None
105
+
106
+ response_actions: Optional[List[ConfigHTTPConfigResponseAppendResponseAction]] = None
107
+
108
+ timeout_seconds: Optional[int] = None
109
+
110
+ url: Optional[str] = None
111
+
112
+ use_compression: Optional[bool] = None
113
+
114
+
115
+ class ConfigHTTPConfigResponseAuthConfig(BaseModel):
116
+ token: Optional[str] = None
117
+
118
+ header_name: Optional[str] = None
119
+
120
+
121
+ class ConfigHTTPConfigResponseAuth(BaseModel):
122
+ config: Optional[ConfigHTTPConfigResponseAuthConfig] = None
123
+
124
+ type: Optional[Literal["token"]] = None
125
+
126
+
127
+ class ConfigHTTPConfigResponseRetryResponseAction(BaseModel):
128
+ action: Optional[Literal["drop", "retry", "append"]] = None
129
+
130
+ description: Optional[str] = None
131
+
132
+ match_payload: Optional[str] = None
133
+
134
+ match_status_code: Optional[int] = None
135
+
136
+
137
+ class ConfigHTTPConfigResponseRetry(BaseModel):
138
+ headers: Optional[Dict[str, str]] = None
139
+
140
+ method: Optional[Literal["POST", "PUT"]] = None
141
+
142
+ response_actions: Optional[List[ConfigHTTPConfigResponseRetryResponseAction]] = None
143
+
144
+ timeout_seconds: Optional[int] = None
145
+
146
+ url: Optional[str] = None
147
+
148
+ use_compression: Optional[bool] = None
149
+
150
+
151
+ class ConfigHTTPConfigResponseUploadResponseAction(BaseModel):
152
+ action: Optional[Literal["drop", "retry", "append"]] = None
153
+
154
+ description: Optional[str] = None
155
+
156
+ match_payload: Optional[str] = None
157
+
158
+ match_status_code: Optional[int] = None
159
+
160
+
161
+ class ConfigHTTPConfigResponseUpload(BaseModel):
162
+ headers: Optional[Dict[str, str]] = None
163
+
164
+ method: Optional[Literal["POST", "PUT"]] = None
165
+
166
+ response_actions: Optional[List[ConfigHTTPConfigResponseUploadResponseAction]] = None
167
+
168
+ timeout_seconds: Optional[int] = None
169
+
170
+ url: Optional[str] = None
171
+
172
+ use_compression: Optional[bool] = None
173
+
174
+
175
+ class ConfigHTTPConfigResponse(BaseModel):
176
+ append: Optional[ConfigHTTPConfigResponseAppend] = None
177
+
178
+ auth: Optional[ConfigHTTPConfigResponseAuth] = None
179
+
180
+ content_type: Optional[Literal["json", "text"]] = None
181
+
182
+ retry: Optional[ConfigHTTPConfigResponseRetry] = None
183
+
184
+ upload: Optional[ConfigHTTPConfigResponseUpload] = None
185
+
186
+
187
+ Config: TypeAlias = Union[
188
+ ConfigS3GcoreConfigResponse,
189
+ ConfigS3AmazonConfigResponse,
190
+ ConfigUnionMember2,
191
+ ConfigS3GcoreConfigResponse,
192
+ ConfigS3GcoreConfigResponse,
193
+ ConfigBaseFtpConfig,
194
+ ConfigSftpConfigResponse,
195
+ ConfigHTTPConfigResponse,
196
+ ]
197
+
198
+
199
+ class Status(LogsUploaderValidation):
200
+ pass
201
+
202
+
203
+ class LogsUploaderTarget(BaseModel):
204
+ id: Optional[int] = None
205
+
206
+ client_id: Optional[int] = None
207
+ """Client that owns the target."""
208
+
209
+ config: Optional[Config] = None
210
+ """Config for specific storage type."""
211
+
212
+ created: Optional[datetime] = None
213
+ """Time when logs uploader target was created."""
214
+
215
+ description: Optional[str] = None
216
+ """Description of the target."""
217
+
218
+ name: Optional[str] = None
219
+ """Name of the target."""
220
+
221
+ related_uploader_configs: Optional[List[int]] = None
222
+ """List of logs uploader configs that use this target."""
223
+
224
+ status: Optional[Status] = None
225
+ """Validation status of the logs uploader target.
226
+
227
+ Informs if the specified target is reachable.
228
+ """
229
+
230
+ storage_type: Optional[Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"]] = (
231
+ None
232
+ )
233
+ """Type of storage for logs."""
234
+
235
+ updated: Optional[datetime] = None
236
+ """Time when logs uploader target was updated."""
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .logs_uploader_target import LogsUploaderTarget
7
+
8
+ __all__ = ["LogsUploaderTargetList"]
9
+
10
+ LogsUploaderTargetList: TypeAlias = List[LogsUploaderTarget]
@@ -0,0 +1,61 @@
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 Dict, Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ from ...._types import SequenceNotStr
9
+
10
+ __all__ = ["PolicyCreateParams"]
11
+
12
+
13
+ class PolicyCreateParams(TypedDict, total=False):
14
+ date_format: str
15
+ """Date format for logs."""
16
+
17
+ description: str
18
+ """Description of the policy."""
19
+
20
+ field_delimiter: str
21
+ """Field delimiter for logs."""
22
+
23
+ field_separator: str
24
+ """Field separator for logs."""
25
+
26
+ fields: SequenceNotStr[str]
27
+ """List of fields to include in logs."""
28
+
29
+ file_name_template: str
30
+ """Template for log file name."""
31
+
32
+ format_type: str
33
+ """Format type for logs."""
34
+
35
+ include_empty_logs: bool
36
+ """Include empty logs in the upload."""
37
+
38
+ include_shield_logs: bool
39
+ """Include logs from origin shielding in the upload."""
40
+
41
+ name: str
42
+ """Name of the policy."""
43
+
44
+ retry_interval_minutes: int
45
+ """Interval in minutes to retry failed uploads."""
46
+
47
+ rotate_interval_minutes: int
48
+ """Interval in minutes to rotate logs."""
49
+
50
+ rotate_threshold_lines: int
51
+ """Threshold in lines to rotate logs."""
52
+
53
+ rotate_threshold_mb: Optional[int]
54
+ """Threshold in MB to rotate logs."""
55
+
56
+ tags: Dict[str, str]
57
+ """
58
+ Tags allow for dynamic decoration of logs by adding predefined fields to the log
59
+ format. These tags serve as customizable key-value pairs that can be included in
60
+ log entries to enhance context and readability.
61
+ """
@@ -0,0 +1,8 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ __all__ = ["PolicyListFieldsResponse"]
7
+
8
+ PolicyListFieldsResponse: TypeAlias = List[str]
@@ -0,0 +1,16 @@
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 TypedDict
7
+
8
+ __all__ = ["PolicyListParams"]
9
+
10
+
11
+ class PolicyListParams(TypedDict, total=False):
12
+ config_ids: Iterable[int]
13
+ """Filter by ids of related logs uploader configs that use given policy."""
14
+
15
+ search: str
16
+ """Search by policy name or id."""
@@ -0,0 +1,61 @@
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 Dict, Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ from ...._types import SequenceNotStr
9
+
10
+ __all__ = ["PolicyReplaceParams"]
11
+
12
+
13
+ class PolicyReplaceParams(TypedDict, total=False):
14
+ date_format: str
15
+ """Date format for logs."""
16
+
17
+ description: str
18
+ """Description of the policy."""
19
+
20
+ field_delimiter: str
21
+ """Field delimiter for logs."""
22
+
23
+ field_separator: str
24
+ """Field separator for logs."""
25
+
26
+ fields: SequenceNotStr[str]
27
+ """List of fields to include in logs."""
28
+
29
+ file_name_template: str
30
+ """Template for log file name."""
31
+
32
+ format_type: str
33
+ """Format type for logs."""
34
+
35
+ include_empty_logs: bool
36
+ """Include empty logs in the upload."""
37
+
38
+ include_shield_logs: bool
39
+ """Include logs from origin shielding in the upload."""
40
+
41
+ name: str
42
+ """Name of the policy."""
43
+
44
+ retry_interval_minutes: int
45
+ """Interval in minutes to retry failed uploads."""
46
+
47
+ rotate_interval_minutes: int
48
+ """Interval in minutes to rotate logs."""
49
+
50
+ rotate_threshold_lines: int
51
+ """Threshold in lines to rotate logs."""
52
+
53
+ rotate_threshold_mb: Optional[int]
54
+ """Threshold in MB to rotate logs."""
55
+
56
+ tags: Dict[str, str]
57
+ """
58
+ Tags allow for dynamic decoration of logs by adding predefined fields to the log
59
+ format. These tags serve as customizable key-value pairs that can be included in
60
+ log entries to enhance context and readability.
61
+ """
@@ -0,0 +1,61 @@
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 Dict, Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ from ...._types import SequenceNotStr
9
+
10
+ __all__ = ["PolicyUpdateParams"]
11
+
12
+
13
+ class PolicyUpdateParams(TypedDict, total=False):
14
+ date_format: str
15
+ """Date format for logs."""
16
+
17
+ description: str
18
+ """Description of the policy."""
19
+
20
+ field_delimiter: str
21
+ """Field delimiter for logs."""
22
+
23
+ field_separator: str
24
+ """Field separator for logs."""
25
+
26
+ fields: SequenceNotStr[str]
27
+ """List of fields to include in logs."""
28
+
29
+ file_name_template: str
30
+ """Template for log file name."""
31
+
32
+ format_type: str
33
+ """Format type for logs."""
34
+
35
+ include_empty_logs: bool
36
+ """Include empty logs in the upload."""
37
+
38
+ include_shield_logs: bool
39
+ """Include logs from origin shielding in the upload."""
40
+
41
+ name: str
42
+ """Name of the policy."""
43
+
44
+ retry_interval_minutes: int
45
+ """Interval in minutes to retry failed uploads."""
46
+
47
+ rotate_interval_minutes: int
48
+ """Interval in minutes to rotate logs."""
49
+
50
+ rotate_threshold_lines: int
51
+ """Threshold in lines to rotate logs."""
52
+
53
+ rotate_threshold_mb: Optional[int]
54
+ """Threshold in MB to rotate logs."""
55
+
56
+ tags: Dict[str, str]
57
+ """
58
+ Tags allow for dynamic decoration of logs by adding predefined fields to the log
59
+ format. These tags serve as customizable key-value pairs that can be included in
60
+ log entries to enhance context and readability.
61
+ """
@@ -0,0 +1,249 @@
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 Dict, Union, Iterable, Optional
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
+
8
+ __all__ = [
9
+ "TargetCreateParams",
10
+ "Config",
11
+ "ConfigS3GcoreConfig",
12
+ "ConfigS3AmazonConfig",
13
+ "ConfigS3OssConfig",
14
+ "ConfigS3OtherConfig",
15
+ "ConfigS3V1Config",
16
+ "ConfigFtpConfig",
17
+ "ConfigSftpConfig",
18
+ "ConfigHTTPConfig",
19
+ "ConfigHTTPConfigUpload",
20
+ "ConfigHTTPConfigUploadResponseAction",
21
+ "ConfigHTTPConfigAppend",
22
+ "ConfigHTTPConfigAppendResponseAction",
23
+ "ConfigHTTPConfigAuth",
24
+ "ConfigHTTPConfigAuthConfig",
25
+ "ConfigHTTPConfigRetry",
26
+ "ConfigHTTPConfigRetryResponseAction",
27
+ ]
28
+
29
+
30
+ class TargetCreateParams(TypedDict, total=False):
31
+ config: Required[Config]
32
+ """Config for specific storage type."""
33
+
34
+ storage_type: Required[Literal["s3_gcore", "s3_amazon", "s3_oss", "s3_other", "s3_v1", "ftp", "sftp", "http"]]
35
+ """Type of storage for logs."""
36
+
37
+ description: str
38
+ """Description of the target."""
39
+
40
+ name: str
41
+ """Name of the target."""
42
+
43
+
44
+ class ConfigS3GcoreConfig(TypedDict, total=False):
45
+ access_key_id: Required[str]
46
+
47
+ bucket_name: Required[str]
48
+
49
+ endpoint: Required[str]
50
+
51
+ region: Required[str]
52
+
53
+ secret_access_key: Required[str]
54
+
55
+ directory: Optional[str]
56
+
57
+ use_path_style: bool
58
+
59
+
60
+ class ConfigS3AmazonConfig(TypedDict, total=False):
61
+ access_key_id: Required[str]
62
+
63
+ bucket_name: Required[str]
64
+
65
+ region: Required[str]
66
+
67
+ secret_access_key: Required[str]
68
+
69
+ directory: Optional[str]
70
+
71
+
72
+ class ConfigS3OssConfig(TypedDict, total=False):
73
+ access_key_id: Required[str]
74
+
75
+ bucket_name: Required[str]
76
+
77
+ secret_access_key: Required[str]
78
+
79
+ directory: Optional[str]
80
+
81
+ region: Optional[str]
82
+
83
+
84
+ class ConfigS3OtherConfig(TypedDict, total=False):
85
+ access_key_id: Required[str]
86
+
87
+ bucket_name: Required[str]
88
+
89
+ endpoint: Required[str]
90
+
91
+ region: Required[str]
92
+
93
+ secret_access_key: Required[str]
94
+
95
+ directory: Optional[str]
96
+
97
+ use_path_style: bool
98
+
99
+
100
+ class ConfigS3V1Config(TypedDict, total=False):
101
+ access_key_id: Required[str]
102
+
103
+ bucket_name: Required[str]
104
+
105
+ endpoint: Required[str]
106
+
107
+ region: Required[str]
108
+
109
+ secret_access_key: Required[str]
110
+
111
+ directory: Optional[str]
112
+
113
+ use_path_style: bool
114
+
115
+
116
+ class ConfigFtpConfig(TypedDict, total=False):
117
+ hostname: Required[str]
118
+
119
+ password: Required[str]
120
+
121
+ user: Required[str]
122
+
123
+ directory: Optional[str]
124
+
125
+ timeout_seconds: int
126
+
127
+
128
+ class ConfigSftpConfig(TypedDict, total=False):
129
+ hostname: Required[str]
130
+
131
+ user: Required[str]
132
+
133
+ directory: Optional[str]
134
+
135
+ key_passphrase: Optional[str]
136
+
137
+ password: Optional[str]
138
+
139
+ private_key: Optional[str]
140
+
141
+ timeout_seconds: int
142
+
143
+
144
+ class ConfigHTTPConfigUploadResponseAction(TypedDict, total=False):
145
+ action: Required[Literal["drop", "retry", "append"]]
146
+
147
+ description: str
148
+
149
+ match_payload: str
150
+
151
+ match_status_code: int
152
+
153
+
154
+ class ConfigHTTPConfigUpload(TypedDict, total=False):
155
+ url: Required[str]
156
+
157
+ headers: Dict[str, str]
158
+
159
+ method: Literal["POST", "PUT"]
160
+
161
+ response_actions: Iterable[ConfigHTTPConfigUploadResponseAction]
162
+
163
+ timeout_seconds: int
164
+
165
+ use_compression: bool
166
+
167
+
168
+ class ConfigHTTPConfigAppendResponseAction(TypedDict, total=False):
169
+ action: Required[Literal["drop", "retry", "append"]]
170
+
171
+ description: str
172
+
173
+ match_payload: str
174
+
175
+ match_status_code: int
176
+
177
+
178
+ class ConfigHTTPConfigAppend(TypedDict, total=False):
179
+ url: Required[str]
180
+
181
+ headers: Dict[str, str]
182
+
183
+ method: Literal["POST", "PUT"]
184
+
185
+ response_actions: Iterable[ConfigHTTPConfigAppendResponseAction]
186
+
187
+ timeout_seconds: int
188
+
189
+ use_compression: bool
190
+
191
+
192
+ class ConfigHTTPConfigAuthConfig(TypedDict, total=False):
193
+ token: Required[str]
194
+
195
+ header_name: Required[str]
196
+
197
+
198
+ class ConfigHTTPConfigAuth(TypedDict, total=False):
199
+ config: Required[ConfigHTTPConfigAuthConfig]
200
+
201
+ type: Required[Literal["token"]]
202
+
203
+
204
+ class ConfigHTTPConfigRetryResponseAction(TypedDict, total=False):
205
+ action: Required[Literal["drop", "retry", "append"]]
206
+
207
+ description: str
208
+
209
+ match_payload: str
210
+
211
+ match_status_code: int
212
+
213
+
214
+ class ConfigHTTPConfigRetry(TypedDict, total=False):
215
+ url: Required[str]
216
+
217
+ headers: Dict[str, str]
218
+
219
+ method: Literal["POST", "PUT"]
220
+
221
+ response_actions: Iterable[ConfigHTTPConfigRetryResponseAction]
222
+
223
+ timeout_seconds: int
224
+
225
+ use_compression: bool
226
+
227
+
228
+ class ConfigHTTPConfig(TypedDict, total=False):
229
+ upload: Required[ConfigHTTPConfigUpload]
230
+
231
+ append: ConfigHTTPConfigAppend
232
+
233
+ auth: ConfigHTTPConfigAuth
234
+
235
+ content_type: Literal["json", "text"]
236
+
237
+ retry: ConfigHTTPConfigRetry
238
+
239
+
240
+ Config: TypeAlias = Union[
241
+ ConfigS3GcoreConfig,
242
+ ConfigS3AmazonConfig,
243
+ ConfigS3OssConfig,
244
+ ConfigS3OtherConfig,
245
+ ConfigS3V1Config,
246
+ ConfigFtpConfig,
247
+ ConfigSftpConfig,
248
+ ConfigHTTPConfig,
249
+ ]