gcore 0.6.0__py3-none-any.whl → 0.7.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 (181) hide show
  1. gcore/_client.py +9 -0
  2. gcore/_models.py +24 -3
  3. gcore/_version.py +1 -1
  4. gcore/pagination.py +101 -1
  5. gcore/resources/__init__.py +14 -0
  6. gcore/resources/cloud/__init__.py +28 -0
  7. gcore/resources/cloud/cloud.py +64 -0
  8. gcore/resources/cloud/cost_reports.py +811 -0
  9. gcore/resources/cloud/file_shares/file_shares.py +10 -0
  10. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +61 -26
  11. gcore/resources/cloud/inference/registry_credentials.py +4 -6
  12. gcore/resources/cloud/usage_reports.py +337 -0
  13. gcore/resources/streaming/__init__.py +159 -0
  14. gcore/resources/streaming/ai_tasks.py +1288 -0
  15. gcore/resources/streaming/broadcasts.py +579 -0
  16. gcore/resources/streaming/directories.py +515 -0
  17. gcore/resources/streaming/players.py +577 -0
  18. gcore/resources/streaming/playlists.py +1059 -0
  19. gcore/resources/streaming/quality_sets.py +331 -0
  20. gcore/resources/streaming/restreams.py +484 -0
  21. gcore/resources/streaming/statistics.py +3224 -0
  22. gcore/resources/streaming/streaming.py +390 -0
  23. gcore/resources/streaming/streams/__init__.py +33 -0
  24. gcore/resources/streaming/streams/overlays.py +716 -0
  25. gcore/resources/streaming/streams/streams.py +1592 -0
  26. gcore/resources/streaming/videos/__init__.py +33 -0
  27. gcore/resources/streaming/videos/subtitles.py +623 -0
  28. gcore/resources/streaming/videos/videos.py +1553 -0
  29. gcore/resources/waap/ip_info.py +28 -10
  30. gcore/types/cloud/__init__.py +10 -0
  31. gcore/types/cloud/cost_report_aggregated.py +865 -0
  32. gcore/types/cloud/cost_report_aggregated_monthly.py +865 -0
  33. gcore/types/cloud/cost_report_detailed.py +1343 -0
  34. gcore/types/cloud/cost_report_get_aggregated_monthly_params.py +394 -0
  35. gcore/types/cloud/cost_report_get_aggregated_params.py +409 -0
  36. gcore/types/cloud/cost_report_get_detailed_params.py +435 -0
  37. gcore/types/cloud/file_share.py +37 -3
  38. gcore/types/cloud/file_share_create_params.py +16 -0
  39. gcore/types/cloud/gpu_baremetal_cluster.py +2 -2
  40. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +9 -0
  41. gcore/types/cloud/quota_get_all_response.py +24 -2
  42. gcore/types/cloud/quota_get_by_region_response.py +24 -2
  43. gcore/types/cloud/quotas/request_create_params.py +12 -1
  44. gcore/types/cloud/quotas/request_get_response.py +12 -1
  45. gcore/types/cloud/quotas/request_list_response.py +12 -1
  46. gcore/types/cloud/usage_report.py +1612 -0
  47. gcore/types/cloud/usage_report_get_params.py +432 -0
  48. gcore/types/streaming/__init__.py +143 -0
  49. gcore/types/streaming/ai_contentmoderation_casm.py +39 -0
  50. gcore/types/streaming/ai_contentmoderation_hardnudity.py +54 -0
  51. gcore/types/streaming/ai_contentmoderation_nsfw.py +39 -0
  52. gcore/types/streaming/ai_contentmoderation_softnudity.py +66 -0
  53. gcore/types/streaming/ai_contentmoderation_sport.py +39 -0
  54. gcore/types/streaming/ai_contentmoderation_weapon.py +39 -0
  55. gcore/types/streaming/ai_task.py +205 -0
  56. gcore/types/streaming/ai_task_cancel_response.py +12 -0
  57. gcore/types/streaming/ai_task_create_params.py +168 -0
  58. gcore/types/streaming/ai_task_create_response.py +10 -0
  59. gcore/types/streaming/ai_task_get_ai_settings_params.py +27 -0
  60. gcore/types/streaming/ai_task_get_ai_settings_response.py +12 -0
  61. gcore/types/streaming/ai_task_get_response.py +313 -0
  62. gcore/types/streaming/ai_task_list_params.py +50 -0
  63. gcore/types/streaming/broadcast.py +71 -0
  64. gcore/types/streaming/broadcast_create_params.py +76 -0
  65. gcore/types/streaming/broadcast_list_params.py +12 -0
  66. gcore/types/streaming/broadcast_spectators_count.py +12 -0
  67. gcore/types/streaming/broadcast_update_params.py +76 -0
  68. gcore/types/streaming/clip.py +78 -0
  69. gcore/types/streaming/create_video_param.py +214 -0
  70. gcore/types/streaming/direct_upload_parameters.py +33 -0
  71. gcore/types/streaming/directories_tree.py +19 -0
  72. gcore/types/streaming/directory_base.py +31 -0
  73. gcore/types/streaming/directory_create_params.py +15 -0
  74. gcore/types/streaming/directory_get_response.py +19 -0
  75. gcore/types/streaming/directory_item.py +13 -0
  76. gcore/types/streaming/directory_update_params.py +18 -0
  77. gcore/types/streaming/directory_video.py +13 -0
  78. gcore/types/streaming/ffprobes.py +25 -0
  79. gcore/types/streaming/max_stream_series.py +21 -0
  80. gcore/types/streaming/meet_series.py +23 -0
  81. gcore/types/streaming/player.py +114 -0
  82. gcore/types/streaming/player_create_params.py +18 -0
  83. gcore/types/streaming/player_list_params.py +12 -0
  84. gcore/types/streaming/player_param.py +114 -0
  85. gcore/types/streaming/player_update_params.py +18 -0
  86. gcore/types/streaming/playlist.py +102 -0
  87. gcore/types/streaming/playlist_create.py +12 -0
  88. gcore/types/streaming/playlist_create_params.py +102 -0
  89. gcore/types/streaming/playlist_list_params.py +12 -0
  90. gcore/types/streaming/playlist_list_videos_response.py +10 -0
  91. gcore/types/streaming/playlist_update_params.py +102 -0
  92. gcore/types/streaming/playlist_video.py +215 -0
  93. gcore/types/streaming/popular_videos.py +17 -0
  94. gcore/types/streaming/quality_set_set_default_params.py +23 -0
  95. gcore/types/streaming/quality_sets.py +57 -0
  96. gcore/types/streaming/restream.py +37 -0
  97. gcore/types/streaming/restream_create_params.py +41 -0
  98. gcore/types/streaming/restream_list_params.py +12 -0
  99. gcore/types/streaming/restream_update_params.py +41 -0
  100. gcore/types/streaming/statistic_get_ffprobes_params.py +22 -0
  101. gcore/types/streaming/statistic_get_live_unique_viewers_params.py +26 -0
  102. gcore/types/streaming/statistic_get_live_unique_viewers_response.py +25 -0
  103. gcore/types/streaming/statistic_get_live_watch_time_cdn_params.py +32 -0
  104. gcore/types/streaming/statistic_get_live_watch_time_total_cdn_params.py +30 -0
  105. gcore/types/streaming/statistic_get_max_streams_series_params.py +20 -0
  106. gcore/types/streaming/statistic_get_meet_series_params.py +20 -0
  107. gcore/types/streaming/statistic_get_popular_videos_params.py +15 -0
  108. gcore/types/streaming/statistic_get_storage_series_params.py +20 -0
  109. gcore/types/streaming/statistic_get_stream_series_params.py +20 -0
  110. gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +27 -0
  111. gcore/types/streaming/statistic_get_unique_viewers_params.py +34 -0
  112. gcore/types/streaming/statistic_get_views_by_browsers_params.py +15 -0
  113. gcore/types/streaming/statistic_get_views_by_country_params.py +15 -0
  114. gcore/types/streaming/statistic_get_views_by_hostname_params.py +15 -0
  115. gcore/types/streaming/statistic_get_views_by_operating_system_params.py +15 -0
  116. gcore/types/streaming/statistic_get_views_by_referer_params.py +15 -0
  117. gcore/types/streaming/statistic_get_views_by_region_params.py +15 -0
  118. gcore/types/streaming/statistic_get_views_heatmap_params.py +21 -0
  119. gcore/types/streaming/statistic_get_views_params.py +34 -0
  120. gcore/types/streaming/statistic_get_vod_storage_volume_params.py +17 -0
  121. gcore/types/streaming/statistic_get_vod_transcoding_duration_params.py +17 -0
  122. gcore/types/streaming/statistic_get_vod_unique_viewers_cdn_params.py +26 -0
  123. gcore/types/streaming/statistic_get_vod_watch_time_cdn_params.py +32 -0
  124. gcore/types/streaming/statistic_get_vod_watch_time_total_cdn_params.py +30 -0
  125. gcore/types/streaming/statistic_get_vod_watch_time_total_cdn_response.py +22 -0
  126. gcore/types/streaming/storage_series.py +23 -0
  127. gcore/types/streaming/stream.py +420 -0
  128. gcore/types/streaming/stream_create_clip_params.py +48 -0
  129. gcore/types/streaming/stream_create_params.py +165 -0
  130. gcore/types/streaming/stream_list_clips_response.py +10 -0
  131. gcore/types/streaming/stream_list_params.py +18 -0
  132. gcore/types/streaming/stream_series.py +21 -0
  133. gcore/types/streaming/stream_start_recording_response.py +76 -0
  134. gcore/types/streaming/stream_update_params.py +169 -0
  135. gcore/types/streaming/streams/__init__.py +11 -0
  136. gcore/types/streaming/streams/overlay.py +43 -0
  137. gcore/types/streaming/streams/overlay_create_params.py +36 -0
  138. gcore/types/streaming/streams/overlay_create_response.py +10 -0
  139. gcore/types/streaming/streams/overlay_list_response.py +10 -0
  140. gcore/types/streaming/streams/overlay_update_multiple_params.py +39 -0
  141. gcore/types/streaming/streams/overlay_update_multiple_response.py +10 -0
  142. gcore/types/streaming/streams/overlay_update_params.py +33 -0
  143. gcore/types/streaming/subtitle.py +12 -0
  144. gcore/types/streaming/subtitle_base.py +18 -0
  145. gcore/types/streaming/subtitle_base_param.py +18 -0
  146. gcore/types/streaming/unique_viewers.py +35 -0
  147. gcore/types/streaming/unique_viewers_cdn.py +17 -0
  148. gcore/types/streaming/video.py +444 -0
  149. gcore/types/streaming/video_create_multiple_params.py +28 -0
  150. gcore/types/streaming/video_create_multiple_response.py +10 -0
  151. gcore/types/streaming/video_create_params.py +13 -0
  152. gcore/types/streaming/video_create_response.py +10 -0
  153. gcore/types/streaming/video_list_names_params.py +13 -0
  154. gcore/types/streaming/video_list_params.py +59 -0
  155. gcore/types/streaming/video_update_params.py +214 -0
  156. gcore/types/streaming/videos/__init__.py +7 -0
  157. gcore/types/streaming/videos/subtitle_create_params.py +17 -0
  158. gcore/types/streaming/videos/subtitle_list_response.py +10 -0
  159. gcore/types/streaming/videos/subtitle_update_params.py +20 -0
  160. gcore/types/streaming/views.py +35 -0
  161. gcore/types/streaming/views_by_browser.py +17 -0
  162. gcore/types/streaming/views_by_country.py +19 -0
  163. gcore/types/streaming/views_by_hostname.py +17 -0
  164. gcore/types/streaming/views_by_operating_system.py +17 -0
  165. gcore/types/streaming/views_by_referer.py +17 -0
  166. gcore/types/streaming/views_by_region.py +19 -0
  167. gcore/types/streaming/views_heatmap.py +19 -0
  168. gcore/types/streaming/vod_statistics_series.py +21 -0
  169. gcore/types/streaming/vod_total_stream_duration_series.py +22 -0
  170. gcore/types/waap/domains/custom_rule_create_params.py +4 -4
  171. gcore/types/waap/domains/custom_rule_update_params.py +4 -4
  172. gcore/types/waap/ip_info_get_blocked_requests_params.py +5 -1
  173. gcore/types/waap/ip_info_get_counts_params.py +2 -1
  174. gcore/types/waap/ip_info_get_top_sessions_params.py +5 -1
  175. gcore/types/waap/ip_info_get_top_urls_params.py +5 -1
  176. gcore/types/waap/ip_info_get_top_user_agents_params.py +5 -1
  177. gcore/types/waap/waap_custom_rule.py +4 -4
  178. {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/METADATA +1 -1
  179. {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/RECORD +181 -33
  180. {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/WHEEL +0 -0
  181. {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,432 @@
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 List, Union, Iterable, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Literal, Required, Annotated, TypeAlias, TypedDict
8
+
9
+ from ..._utils import PropertyInfo
10
+
11
+ __all__ = [
12
+ "UsageReportGetParams",
13
+ "SchemaFilter",
14
+ "SchemaFilterSchemaFilterSnapshotSerializer",
15
+ "SchemaFilterSchemaFilterInstanceSerializer",
16
+ "SchemaFilterSchemaFilterAIClusterSerializer",
17
+ "SchemaFilterSchemaFilterAIVirtualClusterSerializer",
18
+ "SchemaFilterSchemaFilterBasicVmSerializer",
19
+ "SchemaFilterSchemaFilterBaremetalSerializer",
20
+ "SchemaFilterSchemaFilterVolumeSerializer",
21
+ "SchemaFilterSchemaFilterFileShareSerializer",
22
+ "SchemaFilterSchemaFilterImageSerializer",
23
+ "SchemaFilterSchemaFilterFloatingIPSerializer",
24
+ "SchemaFilterSchemaFilterEgressTrafficSerializer",
25
+ "SchemaFilterSchemaFilterLoadBalancerSerializer",
26
+ "SchemaFilterSchemaFilterExternalIPSerializer",
27
+ "SchemaFilterSchemaFilterBackupSerializer",
28
+ "SchemaFilterSchemaFilterLogIndexSerializer",
29
+ "SchemaFilterSchemaFilterFunctionsSerializer",
30
+ "SchemaFilterSchemaFilterFunctionsCallsSerializer",
31
+ "SchemaFilterSchemaFilterFunctionsTrafficSerializer",
32
+ "SchemaFilterSchemaFilterContainersSerializer",
33
+ "SchemaFilterSchemaFilterInferenceSerializer",
34
+ "SchemaFilterSchemaFilterDbaasPostgreSQLVolumeSerializer",
35
+ "SchemaFilterSchemaFilterDbaasPostgreSQLPublicNetworkSerializer",
36
+ "SchemaFilterSchemaFilterDbaasPostgreSqlcpuSerializer",
37
+ "SchemaFilterSchemaFilterDbaasPostgreSQLMemorySerializer",
38
+ "SchemaFilterSchemaFilterDbaasPostgreSQLPoolerSerializer",
39
+ "Sorting",
40
+ "Tags",
41
+ "TagsCondition",
42
+ ]
43
+
44
+
45
+ class UsageReportGetParams(TypedDict, total=False):
46
+ time_from: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
47
+ """The start date of the report period (ISO 8601).
48
+
49
+ The report starts from the beginning of this day.
50
+ """
51
+
52
+ time_to: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
53
+ """The end date of the report period (ISO 8601).
54
+
55
+ The report ends just before the beginning of this day.
56
+ """
57
+
58
+ enable_last_day: bool
59
+ """Expenses for the last specified day are taken into account.
60
+
61
+ As the default, False.
62
+ """
63
+
64
+ limit: int
65
+ """The response resources limit. Defaults to 10."""
66
+
67
+ offset: int
68
+ """The response resources offset."""
69
+
70
+ projects: Optional[Iterable[int]]
71
+ """List of project IDs"""
72
+
73
+ regions: Iterable[int]
74
+ """List of region IDs."""
75
+
76
+ schema_filter: SchemaFilter
77
+ """Extended filter for field filtering."""
78
+
79
+ sorting: Iterable[Sorting]
80
+ """List of sorting filters (JSON objects) fields: project. directions: asc, desc."""
81
+
82
+ tags: Tags
83
+ """Filter by tags"""
84
+
85
+ types: List[
86
+ Literal[
87
+ "ai_cluster",
88
+ "ai_virtual_cluster",
89
+ "backup",
90
+ "baremetal",
91
+ "basic_vm",
92
+ "containers",
93
+ "dbaas_postgresql_connection_pooler",
94
+ "dbaas_postgresql_cpu",
95
+ "dbaas_postgresql_memory",
96
+ "dbaas_postgresql_public_network",
97
+ "dbaas_postgresql_volume",
98
+ "egress_traffic",
99
+ "external_ip",
100
+ "file_share",
101
+ "floatingip",
102
+ "functions",
103
+ "functions_calls",
104
+ "functions_traffic",
105
+ "image",
106
+ "inference",
107
+ "instance",
108
+ "load_balancer",
109
+ "log_index",
110
+ "snapshot",
111
+ "volume",
112
+ ]
113
+ ]
114
+ """List of resource types to be filtered in the report."""
115
+
116
+
117
+ class SchemaFilterSchemaFilterSnapshotSerializer(TypedDict, total=False):
118
+ field: Required[Literal["last_name", "last_size", "source_volume_uuid", "type", "uuid", "volume_type"]]
119
+ """Field name to filter by"""
120
+
121
+ type: Required[Literal["snapshot"]]
122
+
123
+ values: Required[List[str]]
124
+ """List of field values to filter"""
125
+
126
+
127
+ class SchemaFilterSchemaFilterInstanceSerializer(TypedDict, total=False):
128
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
129
+ """Field name to filter by"""
130
+
131
+ type: Required[Literal["instance"]]
132
+
133
+ values: Required[List[str]]
134
+ """List of field values to filter"""
135
+
136
+
137
+ class SchemaFilterSchemaFilterAIClusterSerializer(TypedDict, total=False):
138
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
139
+ """Field name to filter by"""
140
+
141
+ type: Required[Literal["ai_cluster"]]
142
+
143
+ values: Required[List[str]]
144
+ """List of field values to filter"""
145
+
146
+
147
+ class SchemaFilterSchemaFilterAIVirtualClusterSerializer(TypedDict, total=False):
148
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
149
+ """Field name to filter by"""
150
+
151
+ type: Required[Literal["ai_virtual_cluster"]]
152
+
153
+ values: Required[List[str]]
154
+ """List of field values to filter"""
155
+
156
+
157
+ class SchemaFilterSchemaFilterBasicVmSerializer(TypedDict, total=False):
158
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
159
+ """Field name to filter by"""
160
+
161
+ type: Required[Literal["basic_vm"]]
162
+
163
+ values: Required[List[str]]
164
+ """List of field values to filter"""
165
+
166
+
167
+ class SchemaFilterSchemaFilterBaremetalSerializer(TypedDict, total=False):
168
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
169
+ """Field name to filter by"""
170
+
171
+ type: Required[Literal["baremetal"]]
172
+
173
+ values: Required[List[str]]
174
+ """List of field values to filter"""
175
+
176
+
177
+ class SchemaFilterSchemaFilterVolumeSerializer(TypedDict, total=False):
178
+ field: Required[Literal["attached_to_vm", "last_name", "last_size", "type", "uuid", "volume_type"]]
179
+ """Field name to filter by"""
180
+
181
+ type: Required[Literal["volume"]]
182
+
183
+ values: Required[List[str]]
184
+ """List of field values to filter"""
185
+
186
+
187
+ class SchemaFilterSchemaFilterFileShareSerializer(TypedDict, total=False):
188
+ field: Required[Literal["file_share_type", "last_name", "last_size", "type", "uuid"]]
189
+ """Field name to filter by"""
190
+
191
+ type: Required[Literal["file_share"]]
192
+
193
+ values: Required[List[str]]
194
+ """List of field values to filter"""
195
+
196
+
197
+ class SchemaFilterSchemaFilterImageSerializer(TypedDict, total=False):
198
+ field: Required[Literal["last_name", "last_size", "type", "uuid"]]
199
+ """Field name to filter by"""
200
+
201
+ type: Required[Literal["image"]]
202
+
203
+ values: Required[List[str]]
204
+ """List of field values to filter"""
205
+
206
+
207
+ class SchemaFilterSchemaFilterFloatingIPSerializer(TypedDict, total=False):
208
+ field: Required[Literal["ip_address", "last_name", "type", "uuid"]]
209
+ """Field name to filter by"""
210
+
211
+ type: Required[Literal["floatingip"]]
212
+
213
+ values: Required[List[str]]
214
+ """List of field values to filter"""
215
+
216
+
217
+ class SchemaFilterSchemaFilterEgressTrafficSerializer(TypedDict, total=False):
218
+ field: Required[Literal["instance_name", "instance_type", "port_id", "type", "vm_id"]]
219
+ """Field name to filter by"""
220
+
221
+ type: Required[Literal["egress_traffic"]]
222
+
223
+ values: Required[List[str]]
224
+ """List of field values to filter"""
225
+
226
+
227
+ class SchemaFilterSchemaFilterLoadBalancerSerializer(TypedDict, total=False):
228
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
229
+ """Field name to filter by"""
230
+
231
+ type: Required[Literal["load_balancer"]]
232
+
233
+ values: Required[List[str]]
234
+ """List of field values to filter"""
235
+
236
+
237
+ class SchemaFilterSchemaFilterExternalIPSerializer(TypedDict, total=False):
238
+ field: Required[Literal["attached_to_vm", "ip_address", "network_id", "port_id", "subnet_id", "type"]]
239
+ """Field name to filter by"""
240
+
241
+ type: Required[Literal["external_ip"]]
242
+
243
+ values: Required[List[str]]
244
+ """List of field values to filter"""
245
+
246
+
247
+ class SchemaFilterSchemaFilterBackupSerializer(TypedDict, total=False):
248
+ field: Required[Literal["last_name", "last_size", "schedule_id", "source_volume_uuid", "type", "uuid"]]
249
+ """Field name to filter by"""
250
+
251
+ type: Required[Literal["backup"]]
252
+
253
+ values: Required[List[str]]
254
+ """List of field values to filter"""
255
+
256
+
257
+ class SchemaFilterSchemaFilterLogIndexSerializer(TypedDict, total=False):
258
+ field: Required[Literal["last_name", "last_size", "type", "uuid"]]
259
+ """Field name to filter by"""
260
+
261
+ type: Required[Literal["log_index"]]
262
+
263
+ values: Required[List[str]]
264
+ """List of field values to filter"""
265
+
266
+
267
+ class SchemaFilterSchemaFilterFunctionsSerializer(TypedDict, total=False):
268
+ field: Required[Literal["last_name", "type", "uuid"]]
269
+ """Field name to filter by"""
270
+
271
+ type: Required[Literal["functions"]]
272
+
273
+ values: Required[List[str]]
274
+ """List of field values to filter"""
275
+
276
+
277
+ class SchemaFilterSchemaFilterFunctionsCallsSerializer(TypedDict, total=False):
278
+ field: Required[Literal["last_name", "type", "uuid"]]
279
+ """Field name to filter by"""
280
+
281
+ type: Required[Literal["functions_calls"]]
282
+
283
+ values: Required[List[str]]
284
+ """List of field values to filter"""
285
+
286
+
287
+ class SchemaFilterSchemaFilterFunctionsTrafficSerializer(TypedDict, total=False):
288
+ field: Required[Literal["last_name", "type", "uuid"]]
289
+ """Field name to filter by"""
290
+
291
+ type: Required[Literal["functions_traffic"]]
292
+
293
+ values: Required[List[str]]
294
+ """List of field values to filter"""
295
+
296
+
297
+ class SchemaFilterSchemaFilterContainersSerializer(TypedDict, total=False):
298
+ field: Required[Literal["last_name", "type", "uuid"]]
299
+ """Field name to filter by"""
300
+
301
+ type: Required[Literal["containers"]]
302
+
303
+ values: Required[List[str]]
304
+ """List of field values to filter"""
305
+
306
+
307
+ class SchemaFilterSchemaFilterInferenceSerializer(TypedDict, total=False):
308
+ field: Required[Literal["flavor", "last_name", "type", "uuid"]]
309
+ """Field name to filter by"""
310
+
311
+ type: Required[Literal["inference"]]
312
+
313
+ values: Required[List[str]]
314
+ """List of field values to filter"""
315
+
316
+
317
+ class SchemaFilterSchemaFilterDbaasPostgreSQLVolumeSerializer(TypedDict, total=False):
318
+ field: Required[Literal["last_name", "type", "uuid", "volume_type"]]
319
+ """Field name to filter by"""
320
+
321
+ type: Required[Literal["dbaas_postgresql_volume"]]
322
+
323
+ values: Required[List[str]]
324
+ """List of field values to filter"""
325
+
326
+
327
+ class SchemaFilterSchemaFilterDbaasPostgreSQLPublicNetworkSerializer(TypedDict, total=False):
328
+ field: Required[Literal["last_name", "type", "uuid"]]
329
+ """Field name to filter by"""
330
+
331
+ type: Required[Literal["dbaas_postgresql_public_network"]]
332
+
333
+ values: Required[List[str]]
334
+ """List of field values to filter"""
335
+
336
+
337
+ class SchemaFilterSchemaFilterDbaasPostgreSqlcpuSerializer(TypedDict, total=False):
338
+ field: Required[Literal["last_name", "type", "uuid"]]
339
+ """Field name to filter by"""
340
+
341
+ type: Required[Literal["dbaas_postgresql_cpu"]]
342
+
343
+ values: Required[List[str]]
344
+ """List of field values to filter"""
345
+
346
+
347
+ class SchemaFilterSchemaFilterDbaasPostgreSQLMemorySerializer(TypedDict, total=False):
348
+ field: Required[Literal["last_name", "type", "uuid"]]
349
+ """Field name to filter by"""
350
+
351
+ type: Required[Literal["dbaas_postgresql_memory"]]
352
+
353
+ values: Required[List[str]]
354
+ """List of field values to filter"""
355
+
356
+
357
+ class SchemaFilterSchemaFilterDbaasPostgreSQLPoolerSerializer(TypedDict, total=False):
358
+ field: Required[Literal["last_name", "type", "uuid"]]
359
+ """Field name to filter by"""
360
+
361
+ type: Required[Literal["dbaas_postgresql_connection_pooler"]]
362
+
363
+ values: Required[List[str]]
364
+ """List of field values to filter"""
365
+
366
+
367
+ SchemaFilter: TypeAlias = Union[
368
+ SchemaFilterSchemaFilterSnapshotSerializer,
369
+ SchemaFilterSchemaFilterInstanceSerializer,
370
+ SchemaFilterSchemaFilterAIClusterSerializer,
371
+ SchemaFilterSchemaFilterAIVirtualClusterSerializer,
372
+ SchemaFilterSchemaFilterBasicVmSerializer,
373
+ SchemaFilterSchemaFilterBaremetalSerializer,
374
+ SchemaFilterSchemaFilterVolumeSerializer,
375
+ SchemaFilterSchemaFilterFileShareSerializer,
376
+ SchemaFilterSchemaFilterImageSerializer,
377
+ SchemaFilterSchemaFilterFloatingIPSerializer,
378
+ SchemaFilterSchemaFilterEgressTrafficSerializer,
379
+ SchemaFilterSchemaFilterLoadBalancerSerializer,
380
+ SchemaFilterSchemaFilterExternalIPSerializer,
381
+ SchemaFilterSchemaFilterBackupSerializer,
382
+ SchemaFilterSchemaFilterLogIndexSerializer,
383
+ SchemaFilterSchemaFilterFunctionsSerializer,
384
+ SchemaFilterSchemaFilterFunctionsCallsSerializer,
385
+ SchemaFilterSchemaFilterFunctionsTrafficSerializer,
386
+ SchemaFilterSchemaFilterContainersSerializer,
387
+ SchemaFilterSchemaFilterInferenceSerializer,
388
+ SchemaFilterSchemaFilterDbaasPostgreSQLVolumeSerializer,
389
+ SchemaFilterSchemaFilterDbaasPostgreSQLPublicNetworkSerializer,
390
+ SchemaFilterSchemaFilterDbaasPostgreSqlcpuSerializer,
391
+ SchemaFilterSchemaFilterDbaasPostgreSQLMemorySerializer,
392
+ SchemaFilterSchemaFilterDbaasPostgreSQLPoolerSerializer,
393
+ ]
394
+
395
+
396
+ class Sorting(TypedDict, total=False):
397
+ billing_value: Literal["asc", "desc"]
398
+
399
+ first_seen: Literal["asc", "desc"]
400
+
401
+ last_name: Literal["asc", "desc"]
402
+
403
+ last_seen: Literal["asc", "desc"]
404
+
405
+ project: Literal["asc", "desc"]
406
+
407
+ region: Literal["asc", "desc"]
408
+
409
+ type: Literal["asc", "desc"]
410
+
411
+
412
+ class TagsCondition(TypedDict, total=False):
413
+ key: str
414
+ """The name of the tag to filter (e.g., '`os_version`')."""
415
+
416
+ strict: bool
417
+ """Determines how strictly the tag value must match the specified value.
418
+
419
+ If true, the tag value must exactly match the given value. If false, a less
420
+ strict match (e.g., partial or case-insensitive match) may be applied.
421
+ """
422
+
423
+ value: str
424
+ """The value of the tag to filter (e.g., '22.04')."""
425
+
426
+
427
+ class Tags(TypedDict, total=False):
428
+ conditions: Required[Iterable[TagsCondition]]
429
+ """A list of tag filtering conditions defining how tags should match."""
430
+
431
+ condition_type: Literal["AND", "OR"]
432
+ """Specifies whether conditions are combined using OR (default) or AND logic."""
@@ -0,0 +1,143 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .clip import Clip as Clip
6
+ from .video import Video as Video
7
+ from .views import Views as Views
8
+ from .player import Player as Player
9
+ from .stream import Stream as Stream
10
+ from .ai_task import AITask as AITask
11
+ from .ffprobes import Ffprobes as Ffprobes
12
+ from .playlist import Playlist as Playlist
13
+ from .restream import Restream as Restream
14
+ from .subtitle import Subtitle as Subtitle
15
+ from .broadcast import Broadcast as Broadcast
16
+ from .meet_series import MeetSeries as MeetSeries
17
+ from .player_param import PlayerParam as PlayerParam
18
+ from .quality_sets import QualitySets as QualitySets
19
+ from .stream_series import StreamSeries as StreamSeries
20
+ from .subtitle_base import SubtitleBase as SubtitleBase
21
+ from .views_heatmap import ViewsHeatmap as ViewsHeatmap
22
+ from .directory_base import DirectoryBase as DirectoryBase
23
+ from .directory_item import DirectoryItem as DirectoryItem
24
+ from .playlist_video import PlaylistVideo as PlaylistVideo
25
+ from .popular_videos import PopularVideos as PopularVideos
26
+ from .storage_series import StorageSeries as StorageSeries
27
+ from .unique_viewers import UniqueViewers as UniqueViewers
28
+ from .directory_video import DirectoryVideo as DirectoryVideo
29
+ from .playlist_create import PlaylistCreate as PlaylistCreate
30
+ from .views_by_region import ViewsByRegion as ViewsByRegion
31
+ from .directories_tree import DirectoriesTree as DirectoriesTree
32
+ from .views_by_browser import ViewsByBrowser as ViewsByBrowser
33
+ from .views_by_country import ViewsByCountry as ViewsByCountry
34
+ from .views_by_referer import ViewsByReferer as ViewsByReferer
35
+ from .max_stream_series import MaxStreamSeries as MaxStreamSeries
36
+ from .video_list_params import VideoListParams as VideoListParams
37
+ from .views_by_hostname import ViewsByHostname as ViewsByHostname
38
+ from .create_video_param import CreateVideoParam as CreateVideoParam
39
+ from .player_list_params import PlayerListParams as PlayerListParams
40
+ from .stream_list_params import StreamListParams as StreamListParams
41
+ from .unique_viewers_cdn import UniqueViewersCdn as UniqueViewersCdn
42
+ from .ai_task_list_params import AITaskListParams as AITaskListParams
43
+ from .subtitle_base_param import SubtitleBaseParam as SubtitleBaseParam
44
+ from .video_create_params import VideoCreateParams as VideoCreateParams
45
+ from .video_update_params import VideoUpdateParams as VideoUpdateParams
46
+ from .ai_task_get_response import AITaskGetResponse as AITaskGetResponse
47
+ from .player_create_params import PlayerCreateParams as PlayerCreateParams
48
+ from .player_update_params import PlayerUpdateParams as PlayerUpdateParams
49
+ from .playlist_list_params import PlaylistListParams as PlaylistListParams
50
+ from .restream_list_params import RestreamListParams as RestreamListParams
51
+ from .stream_create_params import StreamCreateParams as StreamCreateParams
52
+ from .stream_update_params import StreamUpdateParams as StreamUpdateParams
53
+ from .ai_task_create_params import AITaskCreateParams as AITaskCreateParams
54
+ from .broadcast_list_params import BroadcastListParams as BroadcastListParams
55
+ from .video_create_response import VideoCreateResponse as VideoCreateResponse
56
+ from .vod_statistics_series import VodStatisticsSeries as VodStatisticsSeries
57
+ from .directory_get_response import DirectoryGetResponse as DirectoryGetResponse
58
+ from .playlist_create_params import PlaylistCreateParams as PlaylistCreateParams
59
+ from .playlist_update_params import PlaylistUpdateParams as PlaylistUpdateParams
60
+ from .restream_create_params import RestreamCreateParams as RestreamCreateParams
61
+ from .restream_update_params import RestreamUpdateParams as RestreamUpdateParams
62
+ from .ai_task_cancel_response import AITaskCancelResponse as AITaskCancelResponse
63
+ from .ai_task_create_response import AITaskCreateResponse as AITaskCreateResponse
64
+ from .broadcast_create_params import BroadcastCreateParams as BroadcastCreateParams
65
+ from .broadcast_update_params import BroadcastUpdateParams as BroadcastUpdateParams
66
+ from .directory_create_params import DirectoryCreateParams as DirectoryCreateParams
67
+ from .directory_update_params import DirectoryUpdateParams as DirectoryUpdateParams
68
+ from .video_list_names_params import VideoListNamesParams as VideoListNamesParams
69
+ from .direct_upload_parameters import DirectUploadParameters as DirectUploadParameters
70
+ from .ai_contentmoderation_casm import AIContentmoderationCasm as AIContentmoderationCasm
71
+ from .ai_contentmoderation_nsfw import AIContentmoderationNsfw as AIContentmoderationNsfw
72
+ from .stream_create_clip_params import StreamCreateClipParams as StreamCreateClipParams
73
+ from .views_by_operating_system import ViewsByOperatingSystem as ViewsByOperatingSystem
74
+ from .ai_contentmoderation_sport import AIContentmoderationSport as AIContentmoderationSport
75
+ from .broadcast_spectators_count import BroadcastSpectatorsCount as BroadcastSpectatorsCount
76
+ from .statistic_get_views_params import StatisticGetViewsParams as StatisticGetViewsParams
77
+ from .stream_list_clips_response import StreamListClipsResponse as StreamListClipsResponse
78
+ from .ai_contentmoderation_weapon import AIContentmoderationWeapon as AIContentmoderationWeapon
79
+ from .video_create_multiple_params import VideoCreateMultipleParams as VideoCreateMultipleParams
80
+ from .playlist_list_videos_response import PlaylistListVideosResponse as PlaylistListVideosResponse
81
+ from .statistic_get_ffprobes_params import StatisticGetFfprobesParams as StatisticGetFfprobesParams
82
+ from .ai_task_get_ai_settings_params import AITaskGetAISettingsParams as AITaskGetAISettingsParams
83
+ from .quality_set_set_default_params import QualitySetSetDefaultParams as QualitySetSetDefaultParams
84
+ from .video_create_multiple_response import VideoCreateMultipleResponse as VideoCreateMultipleResponse
85
+ from .ai_contentmoderation_hardnudity import AIContentmoderationHardnudity as AIContentmoderationHardnudity
86
+ from .ai_contentmoderation_softnudity import AIContentmoderationSoftnudity as AIContentmoderationSoftnudity
87
+ from .stream_start_recording_response import StreamStartRecordingResponse as StreamStartRecordingResponse
88
+ from .ai_task_get_ai_settings_response import AITaskGetAISettingsResponse as AITaskGetAISettingsResponse
89
+ from .statistic_get_meet_series_params import StatisticGetMeetSeriesParams as StatisticGetMeetSeriesParams
90
+ from .vod_total_stream_duration_series import VodTotalStreamDurationSeries as VodTotalStreamDurationSeries
91
+ from .statistic_get_stream_series_params import StatisticGetStreamSeriesParams as StatisticGetStreamSeriesParams
92
+ from .statistic_get_views_heatmap_params import StatisticGetViewsHeatmapParams as StatisticGetViewsHeatmapParams
93
+ from .statistic_get_popular_videos_params import StatisticGetPopularVideosParams as StatisticGetPopularVideosParams
94
+ from .statistic_get_storage_series_params import StatisticGetStorageSeriesParams as StatisticGetStorageSeriesParams
95
+ from .statistic_get_unique_viewers_params import StatisticGetUniqueViewersParams as StatisticGetUniqueViewersParams
96
+ from .statistic_get_views_by_region_params import StatisticGetViewsByRegionParams as StatisticGetViewsByRegionParams
97
+ from .statistic_get_views_by_country_params import StatisticGetViewsByCountryParams as StatisticGetViewsByCountryParams
98
+ from .statistic_get_views_by_referer_params import StatisticGetViewsByRefererParams as StatisticGetViewsByRefererParams
99
+ from .statistic_get_views_by_browsers_params import (
100
+ StatisticGetViewsByBrowsersParams as StatisticGetViewsByBrowsersParams,
101
+ )
102
+ from .statistic_get_views_by_hostname_params import (
103
+ StatisticGetViewsByHostnameParams as StatisticGetViewsByHostnameParams,
104
+ )
105
+ from .statistic_get_max_streams_series_params import (
106
+ StatisticGetMaxStreamsSeriesParams as StatisticGetMaxStreamsSeriesParams,
107
+ )
108
+ from .statistic_get_unique_viewers_cdn_params import (
109
+ StatisticGetUniqueViewersCdnParams as StatisticGetUniqueViewersCdnParams,
110
+ )
111
+ from .statistic_get_vod_storage_volume_params import (
112
+ StatisticGetVodStorageVolumeParams as StatisticGetVodStorageVolumeParams,
113
+ )
114
+ from .statistic_get_vod_watch_time_cdn_params import (
115
+ StatisticGetVodWatchTimeCdnParams as StatisticGetVodWatchTimeCdnParams,
116
+ )
117
+ from .statistic_get_live_unique_viewers_params import (
118
+ StatisticGetLiveUniqueViewersParams as StatisticGetLiveUniqueViewersParams,
119
+ )
120
+ from .statistic_get_live_watch_time_cdn_params import (
121
+ StatisticGetLiveWatchTimeCdnParams as StatisticGetLiveWatchTimeCdnParams,
122
+ )
123
+ from .statistic_get_live_unique_viewers_response import (
124
+ StatisticGetLiveUniqueViewersResponse as StatisticGetLiveUniqueViewersResponse,
125
+ )
126
+ from .statistic_get_vod_unique_viewers_cdn_params import (
127
+ StatisticGetVodUniqueViewersCdnParams as StatisticGetVodUniqueViewersCdnParams,
128
+ )
129
+ from .statistic_get_vod_transcoding_duration_params import (
130
+ StatisticGetVodTranscodingDurationParams as StatisticGetVodTranscodingDurationParams,
131
+ )
132
+ from .statistic_get_vod_watch_time_total_cdn_params import (
133
+ StatisticGetVodWatchTimeTotalCdnParams as StatisticGetVodWatchTimeTotalCdnParams,
134
+ )
135
+ from .statistic_get_live_watch_time_total_cdn_params import (
136
+ StatisticGetLiveWatchTimeTotalCdnParams as StatisticGetLiveWatchTimeTotalCdnParams,
137
+ )
138
+ from .statistic_get_views_by_operating_system_params import (
139
+ StatisticGetViewsByOperatingSystemParams as StatisticGetViewsByOperatingSystemParams,
140
+ )
141
+ from .statistic_get_vod_watch_time_total_cdn_response import (
142
+ StatisticGetVodWatchTimeTotalCdnResponse as StatisticGetVodWatchTimeTotalCdnResponse,
143
+ )
@@ -0,0 +1,39 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["AIContentmoderationCasm"]
9
+
10
+
11
+ class AIContentmoderationCasm(BaseModel):
12
+ category: Literal["child_pornography", "sport", "weapon", "nsfw", "hard_nudity", "soft_nudity"]
13
+ """AI content moderation with child pornography detection algorithm"""
14
+
15
+ task_name: Literal["content-moderation"]
16
+ """Name of the task to be performed"""
17
+
18
+ url: str
19
+ """URL to the MP4 file to analyse.
20
+
21
+ File must be publicly accessible via HTTP/HTTPS.
22
+ """
23
+
24
+ client_entity_data: Optional[str] = None
25
+ """
26
+ Meta parameter, designed to store your own extra information about a video
27
+ entity: video source, video id, etc. It is not used in any way in video
28
+ processing. For example, if an AI-task was created automatically when you
29
+ uploaded a video with the AI auto-processing option (nudity detection, etc),
30
+ then the ID of the associated video for which the task was performed will be
31
+ explicitly indicated here.
32
+ """
33
+
34
+ client_user_id: Optional[str] = None
35
+ """Meta parameter, designed to store your own identifier.
36
+
37
+ Can be used by you to tag requests from different end-users. It is not used in
38
+ any way in video processing.
39
+ """
@@ -0,0 +1,54 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["AIContentmoderationHardnudity"]
9
+
10
+
11
+ class AIContentmoderationHardnudity(BaseModel):
12
+ category: Literal["hard_nudity", "sport", "weapon", "nsfw", "soft_nudity", "child_pornography"]
13
+ """AI content moderation with "`hard_nudity`" algorithm"""
14
+
15
+ task_name: Literal["content-moderation"]
16
+ """Name of the task to be performed"""
17
+
18
+ url: str
19
+ """URL to the MP4 file to analyse.
20
+
21
+ File must be publicly accessible via HTTP/HTTPS.
22
+ """
23
+
24
+ client_entity_data: Optional[str] = None
25
+ """
26
+ Meta parameter, designed to store your own extra information about a video
27
+ entity: video source, video id, etc. It is not used in any way in video
28
+ processing. For example, if an AI-task was created automatically when you
29
+ uploaded a video with the AI auto-processing option (nudity detection, etc),
30
+ then the ID of the associated video for which the task was performed will be
31
+ explicitly indicated here.
32
+ """
33
+
34
+ client_user_id: Optional[str] = None
35
+ """Meta parameter, designed to store your own identifier.
36
+
37
+ Can be used by you to tag requests from different end-users. It is not used in
38
+ any way in video processing.
39
+ """
40
+
41
+ stop_objects: Optional[
42
+ Literal[
43
+ "ANUS_EXPOSED",
44
+ "BUTTOCKS_EXPOSED",
45
+ "FEMALE_BREAST_EXPOSED",
46
+ "FEMALE_GENITALIA_EXPOSED",
47
+ "MALE_BREAST_EXPOSED",
48
+ "MALE_GENITALIA_EXPOSED",
49
+ ]
50
+ ] = None
51
+ """
52
+ Comma separated objects, and probabilities, that will cause the processing to
53
+ stop immediatelly after finding.
54
+ """