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.
- gcore/_client.py +9 -0
- gcore/_models.py +24 -3
- gcore/_version.py +1 -1
- gcore/pagination.py +101 -1
- gcore/resources/__init__.py +14 -0
- gcore/resources/cloud/__init__.py +28 -0
- gcore/resources/cloud/cloud.py +64 -0
- gcore/resources/cloud/cost_reports.py +811 -0
- gcore/resources/cloud/file_shares/file_shares.py +10 -0
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +61 -26
- gcore/resources/cloud/inference/registry_credentials.py +4 -6
- gcore/resources/cloud/usage_reports.py +337 -0
- gcore/resources/streaming/__init__.py +159 -0
- gcore/resources/streaming/ai_tasks.py +1288 -0
- gcore/resources/streaming/broadcasts.py +579 -0
- gcore/resources/streaming/directories.py +515 -0
- gcore/resources/streaming/players.py +577 -0
- gcore/resources/streaming/playlists.py +1059 -0
- gcore/resources/streaming/quality_sets.py +331 -0
- gcore/resources/streaming/restreams.py +484 -0
- gcore/resources/streaming/statistics.py +3224 -0
- gcore/resources/streaming/streaming.py +390 -0
- gcore/resources/streaming/streams/__init__.py +33 -0
- gcore/resources/streaming/streams/overlays.py +716 -0
- gcore/resources/streaming/streams/streams.py +1592 -0
- gcore/resources/streaming/videos/__init__.py +33 -0
- gcore/resources/streaming/videos/subtitles.py +623 -0
- gcore/resources/streaming/videos/videos.py +1553 -0
- gcore/resources/waap/ip_info.py +28 -10
- gcore/types/cloud/__init__.py +10 -0
- gcore/types/cloud/cost_report_aggregated.py +865 -0
- gcore/types/cloud/cost_report_aggregated_monthly.py +865 -0
- gcore/types/cloud/cost_report_detailed.py +1343 -0
- gcore/types/cloud/cost_report_get_aggregated_monthly_params.py +394 -0
- gcore/types/cloud/cost_report_get_aggregated_params.py +409 -0
- gcore/types/cloud/cost_report_get_detailed_params.py +435 -0
- gcore/types/cloud/file_share.py +37 -3
- gcore/types/cloud/file_share_create_params.py +16 -0
- gcore/types/cloud/gpu_baremetal_cluster.py +2 -2
- gcore/types/cloud/gpu_baremetal_cluster_create_params.py +9 -0
- gcore/types/cloud/quota_get_all_response.py +24 -2
- gcore/types/cloud/quota_get_by_region_response.py +24 -2
- gcore/types/cloud/quotas/request_create_params.py +12 -1
- gcore/types/cloud/quotas/request_get_response.py +12 -1
- gcore/types/cloud/quotas/request_list_response.py +12 -1
- gcore/types/cloud/usage_report.py +1612 -0
- gcore/types/cloud/usage_report_get_params.py +432 -0
- gcore/types/streaming/__init__.py +143 -0
- gcore/types/streaming/ai_contentmoderation_casm.py +39 -0
- gcore/types/streaming/ai_contentmoderation_hardnudity.py +54 -0
- gcore/types/streaming/ai_contentmoderation_nsfw.py +39 -0
- gcore/types/streaming/ai_contentmoderation_softnudity.py +66 -0
- gcore/types/streaming/ai_contentmoderation_sport.py +39 -0
- gcore/types/streaming/ai_contentmoderation_weapon.py +39 -0
- gcore/types/streaming/ai_task.py +205 -0
- gcore/types/streaming/ai_task_cancel_response.py +12 -0
- gcore/types/streaming/ai_task_create_params.py +168 -0
- gcore/types/streaming/ai_task_create_response.py +10 -0
- gcore/types/streaming/ai_task_get_ai_settings_params.py +27 -0
- gcore/types/streaming/ai_task_get_ai_settings_response.py +12 -0
- gcore/types/streaming/ai_task_get_response.py +313 -0
- gcore/types/streaming/ai_task_list_params.py +50 -0
- gcore/types/streaming/broadcast.py +71 -0
- gcore/types/streaming/broadcast_create_params.py +76 -0
- gcore/types/streaming/broadcast_list_params.py +12 -0
- gcore/types/streaming/broadcast_spectators_count.py +12 -0
- gcore/types/streaming/broadcast_update_params.py +76 -0
- gcore/types/streaming/clip.py +78 -0
- gcore/types/streaming/create_video_param.py +214 -0
- gcore/types/streaming/direct_upload_parameters.py +33 -0
- gcore/types/streaming/directories_tree.py +19 -0
- gcore/types/streaming/directory_base.py +31 -0
- gcore/types/streaming/directory_create_params.py +15 -0
- gcore/types/streaming/directory_get_response.py +19 -0
- gcore/types/streaming/directory_item.py +13 -0
- gcore/types/streaming/directory_update_params.py +18 -0
- gcore/types/streaming/directory_video.py +13 -0
- gcore/types/streaming/ffprobes.py +25 -0
- gcore/types/streaming/max_stream_series.py +21 -0
- gcore/types/streaming/meet_series.py +23 -0
- gcore/types/streaming/player.py +114 -0
- gcore/types/streaming/player_create_params.py +18 -0
- gcore/types/streaming/player_list_params.py +12 -0
- gcore/types/streaming/player_param.py +114 -0
- gcore/types/streaming/player_update_params.py +18 -0
- gcore/types/streaming/playlist.py +102 -0
- gcore/types/streaming/playlist_create.py +12 -0
- gcore/types/streaming/playlist_create_params.py +102 -0
- gcore/types/streaming/playlist_list_params.py +12 -0
- gcore/types/streaming/playlist_list_videos_response.py +10 -0
- gcore/types/streaming/playlist_update_params.py +102 -0
- gcore/types/streaming/playlist_video.py +215 -0
- gcore/types/streaming/popular_videos.py +17 -0
- gcore/types/streaming/quality_set_set_default_params.py +23 -0
- gcore/types/streaming/quality_sets.py +57 -0
- gcore/types/streaming/restream.py +37 -0
- gcore/types/streaming/restream_create_params.py +41 -0
- gcore/types/streaming/restream_list_params.py +12 -0
- gcore/types/streaming/restream_update_params.py +41 -0
- gcore/types/streaming/statistic_get_ffprobes_params.py +22 -0
- gcore/types/streaming/statistic_get_live_unique_viewers_params.py +26 -0
- gcore/types/streaming/statistic_get_live_unique_viewers_response.py +25 -0
- gcore/types/streaming/statistic_get_live_watch_time_cdn_params.py +32 -0
- gcore/types/streaming/statistic_get_live_watch_time_total_cdn_params.py +30 -0
- gcore/types/streaming/statistic_get_max_streams_series_params.py +20 -0
- gcore/types/streaming/statistic_get_meet_series_params.py +20 -0
- gcore/types/streaming/statistic_get_popular_videos_params.py +15 -0
- gcore/types/streaming/statistic_get_storage_series_params.py +20 -0
- gcore/types/streaming/statistic_get_stream_series_params.py +20 -0
- gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +27 -0
- gcore/types/streaming/statistic_get_unique_viewers_params.py +34 -0
- gcore/types/streaming/statistic_get_views_by_browsers_params.py +15 -0
- gcore/types/streaming/statistic_get_views_by_country_params.py +15 -0
- gcore/types/streaming/statistic_get_views_by_hostname_params.py +15 -0
- gcore/types/streaming/statistic_get_views_by_operating_system_params.py +15 -0
- gcore/types/streaming/statistic_get_views_by_referer_params.py +15 -0
- gcore/types/streaming/statistic_get_views_by_region_params.py +15 -0
- gcore/types/streaming/statistic_get_views_heatmap_params.py +21 -0
- gcore/types/streaming/statistic_get_views_params.py +34 -0
- gcore/types/streaming/statistic_get_vod_storage_volume_params.py +17 -0
- gcore/types/streaming/statistic_get_vod_transcoding_duration_params.py +17 -0
- gcore/types/streaming/statistic_get_vod_unique_viewers_cdn_params.py +26 -0
- gcore/types/streaming/statistic_get_vod_watch_time_cdn_params.py +32 -0
- gcore/types/streaming/statistic_get_vod_watch_time_total_cdn_params.py +30 -0
- gcore/types/streaming/statistic_get_vod_watch_time_total_cdn_response.py +22 -0
- gcore/types/streaming/storage_series.py +23 -0
- gcore/types/streaming/stream.py +420 -0
- gcore/types/streaming/stream_create_clip_params.py +48 -0
- gcore/types/streaming/stream_create_params.py +165 -0
- gcore/types/streaming/stream_list_clips_response.py +10 -0
- gcore/types/streaming/stream_list_params.py +18 -0
- gcore/types/streaming/stream_series.py +21 -0
- gcore/types/streaming/stream_start_recording_response.py +76 -0
- gcore/types/streaming/stream_update_params.py +169 -0
- gcore/types/streaming/streams/__init__.py +11 -0
- gcore/types/streaming/streams/overlay.py +43 -0
- gcore/types/streaming/streams/overlay_create_params.py +36 -0
- gcore/types/streaming/streams/overlay_create_response.py +10 -0
- gcore/types/streaming/streams/overlay_list_response.py +10 -0
- gcore/types/streaming/streams/overlay_update_multiple_params.py +39 -0
- gcore/types/streaming/streams/overlay_update_multiple_response.py +10 -0
- gcore/types/streaming/streams/overlay_update_params.py +33 -0
- gcore/types/streaming/subtitle.py +12 -0
- gcore/types/streaming/subtitle_base.py +18 -0
- gcore/types/streaming/subtitle_base_param.py +18 -0
- gcore/types/streaming/unique_viewers.py +35 -0
- gcore/types/streaming/unique_viewers_cdn.py +17 -0
- gcore/types/streaming/video.py +444 -0
- gcore/types/streaming/video_create_multiple_params.py +28 -0
- gcore/types/streaming/video_create_multiple_response.py +10 -0
- gcore/types/streaming/video_create_params.py +13 -0
- gcore/types/streaming/video_create_response.py +10 -0
- gcore/types/streaming/video_list_names_params.py +13 -0
- gcore/types/streaming/video_list_params.py +59 -0
- gcore/types/streaming/video_update_params.py +214 -0
- gcore/types/streaming/videos/__init__.py +7 -0
- gcore/types/streaming/videos/subtitle_create_params.py +17 -0
- gcore/types/streaming/videos/subtitle_list_response.py +10 -0
- gcore/types/streaming/videos/subtitle_update_params.py +20 -0
- gcore/types/streaming/views.py +35 -0
- gcore/types/streaming/views_by_browser.py +17 -0
- gcore/types/streaming/views_by_country.py +19 -0
- gcore/types/streaming/views_by_hostname.py +17 -0
- gcore/types/streaming/views_by_operating_system.py +17 -0
- gcore/types/streaming/views_by_referer.py +17 -0
- gcore/types/streaming/views_by_region.py +19 -0
- gcore/types/streaming/views_heatmap.py +19 -0
- gcore/types/streaming/vod_statistics_series.py +21 -0
- gcore/types/streaming/vod_total_stream_duration_series.py +22 -0
- gcore/types/waap/domains/custom_rule_create_params.py +4 -4
- gcore/types/waap/domains/custom_rule_update_params.py +4 -4
- gcore/types/waap/ip_info_get_blocked_requests_params.py +5 -1
- gcore/types/waap/ip_info_get_counts_params.py +2 -1
- gcore/types/waap/ip_info_get_top_sessions_params.py +5 -1
- gcore/types/waap/ip_info_get_top_urls_params.py +5 -1
- gcore/types/waap/ip_info_get_top_user_agents_params.py +5 -1
- gcore/types/waap/waap_custom_rule.py +4 -4
- {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/METADATA +1 -1
- {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/RECORD +181 -33
- {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/WHEEL +0 -0
- {gcore-0.6.0.dist-info → gcore-0.7.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,1343 @@
|
|
|
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, Annotated, TypeAlias
|
|
6
|
+
|
|
7
|
+
from ..._utils import PropertyInfo
|
|
8
|
+
from ..._models import BaseModel
|
|
9
|
+
|
|
10
|
+
__all__ = [
|
|
11
|
+
"CostReportDetailed",
|
|
12
|
+
"Result",
|
|
13
|
+
"ResultResourceAIClusterWithCostSerializer",
|
|
14
|
+
"ResultResourceAIVirtualClusterWithCostSerializer",
|
|
15
|
+
"ResultResourceBaremetalWithCostSerializer",
|
|
16
|
+
"ResultResourceBasicVmWithCostSerializer",
|
|
17
|
+
"ResultResourceBackupWithCostSerializer",
|
|
18
|
+
"ResultResourceContainerWithCostSerializer",
|
|
19
|
+
"ResultResourceEgressTrafficWithCostSerializer",
|
|
20
|
+
"ResultResourceExternalIPWithCostSerializer",
|
|
21
|
+
"ResultResourceFileShareWithCostSerializer",
|
|
22
|
+
"ResultResourceFloatingIPWithCostSerializer",
|
|
23
|
+
"ResultResourceFunctionsWithCostSerializer",
|
|
24
|
+
"ResultResourceFunctionCallsWithCostSerializer",
|
|
25
|
+
"ResultResourceFunctionEgressTrafficWithCostSerializer",
|
|
26
|
+
"ResultResourceImagesWithCostSerializer",
|
|
27
|
+
"ResultResourceInferenceWithCostSerializer",
|
|
28
|
+
"ResultResourceInstanceWithCostSerializer",
|
|
29
|
+
"ResultResourceLoadBalancerWithCostSerializer",
|
|
30
|
+
"ResultResourceLogIndexWithCostSerializer",
|
|
31
|
+
"ResultResourceSnapshotWithCostSerializer",
|
|
32
|
+
"ResultResourceVolumeWithCostSerializer",
|
|
33
|
+
"ResultResourceDbaasPostgreSQLPoolerWithCostSerializer",
|
|
34
|
+
"ResultResourceDbaasPostgreSQLMemoryWithCostSerializer",
|
|
35
|
+
"ResultResourceDbaasPostgreSQLPublicNetworkWithCostSerializer",
|
|
36
|
+
"ResultResourceDbaasPostgreSqlcpuWithCostSerializer",
|
|
37
|
+
"ResultResourceDbaasPostgreSQLVolumeWithCostSerializer",
|
|
38
|
+
]
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class ResultResourceAIClusterWithCostSerializer(BaseModel):
|
|
42
|
+
billing_feature_name: Optional[str] = None
|
|
43
|
+
|
|
44
|
+
billing_metric_name: str
|
|
45
|
+
"""Name of the billing metric"""
|
|
46
|
+
|
|
47
|
+
billing_value: float
|
|
48
|
+
"""Value of the billing metric"""
|
|
49
|
+
|
|
50
|
+
billing_value_unit: Literal["minutes"]
|
|
51
|
+
"""Unit of billing value"""
|
|
52
|
+
|
|
53
|
+
cost: Optional[float] = None
|
|
54
|
+
"""Cost for requested period"""
|
|
55
|
+
|
|
56
|
+
currency: Optional[str] = None
|
|
57
|
+
"""Currency of the cost"""
|
|
58
|
+
|
|
59
|
+
err: Optional[str] = None
|
|
60
|
+
"""Error message"""
|
|
61
|
+
|
|
62
|
+
first_seen: datetime
|
|
63
|
+
"""First time the resource was seen in the given period"""
|
|
64
|
+
|
|
65
|
+
flavor: str
|
|
66
|
+
"""Flavor of the Baremetal GPU cluster"""
|
|
67
|
+
|
|
68
|
+
last_name: str
|
|
69
|
+
"""Name of the AI cluster"""
|
|
70
|
+
|
|
71
|
+
last_seen: datetime
|
|
72
|
+
"""Last time the resource was seen in the given period"""
|
|
73
|
+
|
|
74
|
+
project_id: int
|
|
75
|
+
"""ID of the project the resource belongs to"""
|
|
76
|
+
|
|
77
|
+
region: int
|
|
78
|
+
"""Region ID"""
|
|
79
|
+
|
|
80
|
+
region_id: int
|
|
81
|
+
"""Region ID"""
|
|
82
|
+
|
|
83
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
84
|
+
"""List of tags"""
|
|
85
|
+
|
|
86
|
+
type: Literal["ai_cluster"]
|
|
87
|
+
|
|
88
|
+
uuid: str
|
|
89
|
+
"""UUID of the Baremetal GPU cluster"""
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
class ResultResourceAIVirtualClusterWithCostSerializer(BaseModel):
|
|
93
|
+
billing_feature_name: Optional[str] = None
|
|
94
|
+
|
|
95
|
+
billing_metric_name: str
|
|
96
|
+
"""Name of the billing metric"""
|
|
97
|
+
|
|
98
|
+
billing_value: float
|
|
99
|
+
"""Value of the billing metric"""
|
|
100
|
+
|
|
101
|
+
billing_value_unit: Literal["minutes"]
|
|
102
|
+
"""Unit of billing value"""
|
|
103
|
+
|
|
104
|
+
cost: Optional[float] = None
|
|
105
|
+
"""Cost for requested period"""
|
|
106
|
+
|
|
107
|
+
currency: Optional[str] = None
|
|
108
|
+
"""Currency of the cost"""
|
|
109
|
+
|
|
110
|
+
err: Optional[str] = None
|
|
111
|
+
"""Error message"""
|
|
112
|
+
|
|
113
|
+
first_seen: datetime
|
|
114
|
+
"""First time the resource was seen in the given period"""
|
|
115
|
+
|
|
116
|
+
flavor: str
|
|
117
|
+
"""Flavor of the Virtual GPU cluster"""
|
|
118
|
+
|
|
119
|
+
last_name: str
|
|
120
|
+
"""Name of the AI cluster"""
|
|
121
|
+
|
|
122
|
+
last_seen: datetime
|
|
123
|
+
"""Last time the resource was seen in the given period"""
|
|
124
|
+
|
|
125
|
+
project_id: int
|
|
126
|
+
"""ID of the project the resource belongs to"""
|
|
127
|
+
|
|
128
|
+
region: int
|
|
129
|
+
"""Region ID"""
|
|
130
|
+
|
|
131
|
+
region_id: int
|
|
132
|
+
"""Region ID"""
|
|
133
|
+
|
|
134
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
135
|
+
"""List of tags"""
|
|
136
|
+
|
|
137
|
+
type: Literal["ai_virtual_cluster"]
|
|
138
|
+
|
|
139
|
+
uuid: str
|
|
140
|
+
"""UUID of the Virtual GPU cluster"""
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
class ResultResourceBaremetalWithCostSerializer(BaseModel):
|
|
144
|
+
billing_feature_name: Optional[str] = None
|
|
145
|
+
|
|
146
|
+
billing_metric_name: str
|
|
147
|
+
"""Name of the billing metric"""
|
|
148
|
+
|
|
149
|
+
billing_value: float
|
|
150
|
+
"""Value of the billing metric"""
|
|
151
|
+
|
|
152
|
+
billing_value_unit: Literal["minutes"]
|
|
153
|
+
"""Unit of billing value"""
|
|
154
|
+
|
|
155
|
+
cost: Optional[float] = None
|
|
156
|
+
"""Cost for requested period"""
|
|
157
|
+
|
|
158
|
+
currency: Optional[str] = None
|
|
159
|
+
"""Currency of the cost"""
|
|
160
|
+
|
|
161
|
+
err: Optional[str] = None
|
|
162
|
+
"""Error message"""
|
|
163
|
+
|
|
164
|
+
first_seen: datetime
|
|
165
|
+
"""First time the resource was seen in the given period"""
|
|
166
|
+
|
|
167
|
+
flavor: str
|
|
168
|
+
"""Flavor of the bare metal server"""
|
|
169
|
+
|
|
170
|
+
last_name: str
|
|
171
|
+
"""Name of the bare metal server"""
|
|
172
|
+
|
|
173
|
+
last_seen: datetime
|
|
174
|
+
"""Last time the resource was seen in the given period"""
|
|
175
|
+
|
|
176
|
+
project_id: int
|
|
177
|
+
"""ID of the project the resource belongs to"""
|
|
178
|
+
|
|
179
|
+
region: int
|
|
180
|
+
"""Region ID"""
|
|
181
|
+
|
|
182
|
+
region_id: int
|
|
183
|
+
"""Region ID"""
|
|
184
|
+
|
|
185
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
186
|
+
"""List of tags"""
|
|
187
|
+
|
|
188
|
+
type: Literal["baremetal"]
|
|
189
|
+
|
|
190
|
+
uuid: str
|
|
191
|
+
"""UUID of the bare metal server"""
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
class ResultResourceBasicVmWithCostSerializer(BaseModel):
|
|
195
|
+
billing_feature_name: Optional[str] = None
|
|
196
|
+
|
|
197
|
+
billing_metric_name: str
|
|
198
|
+
"""Name of the billing metric"""
|
|
199
|
+
|
|
200
|
+
billing_value: float
|
|
201
|
+
"""Value of the billing metric"""
|
|
202
|
+
|
|
203
|
+
billing_value_unit: Literal["minutes"]
|
|
204
|
+
"""Unit of billing value"""
|
|
205
|
+
|
|
206
|
+
cost: Optional[float] = None
|
|
207
|
+
"""Cost for requested period"""
|
|
208
|
+
|
|
209
|
+
currency: Optional[str] = None
|
|
210
|
+
"""Currency of the cost"""
|
|
211
|
+
|
|
212
|
+
err: Optional[str] = None
|
|
213
|
+
"""Error message"""
|
|
214
|
+
|
|
215
|
+
first_seen: datetime
|
|
216
|
+
"""First time the resource was seen in the given period"""
|
|
217
|
+
|
|
218
|
+
flavor: str
|
|
219
|
+
"""Flavor of the basic VM"""
|
|
220
|
+
|
|
221
|
+
last_name: str
|
|
222
|
+
"""Name of the basic VM"""
|
|
223
|
+
|
|
224
|
+
last_seen: datetime
|
|
225
|
+
"""Last time the resource was seen in the given period"""
|
|
226
|
+
|
|
227
|
+
project_id: int
|
|
228
|
+
"""ID of the project the resource belongs to"""
|
|
229
|
+
|
|
230
|
+
region: int
|
|
231
|
+
"""Region ID"""
|
|
232
|
+
|
|
233
|
+
region_id: int
|
|
234
|
+
"""Region ID"""
|
|
235
|
+
|
|
236
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
237
|
+
"""List of tags"""
|
|
238
|
+
|
|
239
|
+
type: Literal["basic_vm"]
|
|
240
|
+
|
|
241
|
+
uuid: str
|
|
242
|
+
"""UUID of the basic VM"""
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
class ResultResourceBackupWithCostSerializer(BaseModel):
|
|
246
|
+
billing_feature_name: Optional[str] = None
|
|
247
|
+
|
|
248
|
+
billing_metric_name: str
|
|
249
|
+
"""Name of the billing metric"""
|
|
250
|
+
|
|
251
|
+
billing_value: float
|
|
252
|
+
"""Value of the billing metric"""
|
|
253
|
+
|
|
254
|
+
billing_value_unit: Literal["gbminutes"]
|
|
255
|
+
"""Unit of billing value"""
|
|
256
|
+
|
|
257
|
+
cost: Optional[float] = None
|
|
258
|
+
"""Cost for requested period"""
|
|
259
|
+
|
|
260
|
+
currency: Optional[str] = None
|
|
261
|
+
"""Currency of the cost"""
|
|
262
|
+
|
|
263
|
+
err: Optional[str] = None
|
|
264
|
+
"""Error message"""
|
|
265
|
+
|
|
266
|
+
first_seen: datetime
|
|
267
|
+
"""First time the resource was seen in the given period"""
|
|
268
|
+
|
|
269
|
+
last_name: str
|
|
270
|
+
"""Name of the backup"""
|
|
271
|
+
|
|
272
|
+
last_seen: datetime
|
|
273
|
+
"""Last time the resource was seen in the given period"""
|
|
274
|
+
|
|
275
|
+
last_size: int
|
|
276
|
+
"""Size of the backup in bytes"""
|
|
277
|
+
|
|
278
|
+
project_id: int
|
|
279
|
+
"""ID of the project the resource belongs to"""
|
|
280
|
+
|
|
281
|
+
region: int
|
|
282
|
+
"""Region ID"""
|
|
283
|
+
|
|
284
|
+
region_id: int
|
|
285
|
+
"""Region ID"""
|
|
286
|
+
|
|
287
|
+
schedule_id: str
|
|
288
|
+
"""ID of the backup schedule"""
|
|
289
|
+
|
|
290
|
+
source_volume_uuid: str
|
|
291
|
+
"""UUID of the source volume"""
|
|
292
|
+
|
|
293
|
+
type: Literal["backup"]
|
|
294
|
+
|
|
295
|
+
uuid: str
|
|
296
|
+
"""UUID of the backup"""
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
class ResultResourceContainerWithCostSerializer(BaseModel):
|
|
300
|
+
billing_feature_name: Optional[str] = None
|
|
301
|
+
|
|
302
|
+
billing_metric_name: str
|
|
303
|
+
"""Name of the billing metric"""
|
|
304
|
+
|
|
305
|
+
billing_value: float
|
|
306
|
+
"""Value of the billing metric"""
|
|
307
|
+
|
|
308
|
+
billing_value_unit: Literal["GBS"]
|
|
309
|
+
"""Unit of billing value"""
|
|
310
|
+
|
|
311
|
+
cost: Optional[float] = None
|
|
312
|
+
"""Cost for requested period"""
|
|
313
|
+
|
|
314
|
+
currency: Optional[str] = None
|
|
315
|
+
"""Currency of the cost"""
|
|
316
|
+
|
|
317
|
+
err: Optional[str] = None
|
|
318
|
+
"""Error message"""
|
|
319
|
+
|
|
320
|
+
first_seen: datetime
|
|
321
|
+
"""First time the resource was seen in the given period"""
|
|
322
|
+
|
|
323
|
+
last_name: str
|
|
324
|
+
"""Name of the container"""
|
|
325
|
+
|
|
326
|
+
last_seen: datetime
|
|
327
|
+
"""Last time the resource was seen in the given period"""
|
|
328
|
+
|
|
329
|
+
project_id: int
|
|
330
|
+
"""ID of the project the resource belongs to"""
|
|
331
|
+
|
|
332
|
+
region: int
|
|
333
|
+
"""Region ID"""
|
|
334
|
+
|
|
335
|
+
region_id: int
|
|
336
|
+
"""Region ID"""
|
|
337
|
+
|
|
338
|
+
type: Literal["containers"]
|
|
339
|
+
|
|
340
|
+
uuid: str
|
|
341
|
+
"""UUID of the container"""
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
class ResultResourceEgressTrafficWithCostSerializer(BaseModel):
|
|
345
|
+
billing_feature_name: Optional[str] = None
|
|
346
|
+
|
|
347
|
+
billing_metric_name: str
|
|
348
|
+
"""Name of the billing metric"""
|
|
349
|
+
|
|
350
|
+
billing_value: float
|
|
351
|
+
"""Value of the billing metric"""
|
|
352
|
+
|
|
353
|
+
billing_value_unit: Literal["bytes"]
|
|
354
|
+
"""Unit of billing value"""
|
|
355
|
+
|
|
356
|
+
cost: Optional[float] = None
|
|
357
|
+
"""Cost for requested period"""
|
|
358
|
+
|
|
359
|
+
currency: Optional[str] = None
|
|
360
|
+
"""Currency of the cost"""
|
|
361
|
+
|
|
362
|
+
err: Optional[str] = None
|
|
363
|
+
"""Error message"""
|
|
364
|
+
|
|
365
|
+
first_seen: datetime
|
|
366
|
+
"""First time the resource was seen in the given period"""
|
|
367
|
+
|
|
368
|
+
instance_type: Literal["baremetal", "vm"]
|
|
369
|
+
"""Type of the instance"""
|
|
370
|
+
|
|
371
|
+
last_seen: datetime
|
|
372
|
+
"""Last time the resource was seen in the given period"""
|
|
373
|
+
|
|
374
|
+
port_id: str
|
|
375
|
+
"""ID of the port the traffic is associated with"""
|
|
376
|
+
|
|
377
|
+
project_id: int
|
|
378
|
+
"""ID of the project the resource belongs to"""
|
|
379
|
+
|
|
380
|
+
region: int
|
|
381
|
+
"""Region ID"""
|
|
382
|
+
|
|
383
|
+
region_id: int
|
|
384
|
+
"""Region ID"""
|
|
385
|
+
|
|
386
|
+
size_unit: str
|
|
387
|
+
"""Unit of size"""
|
|
388
|
+
|
|
389
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
390
|
+
"""List of tags"""
|
|
391
|
+
|
|
392
|
+
type: Literal["egress_traffic"]
|
|
393
|
+
|
|
394
|
+
vm_id: str
|
|
395
|
+
"""ID of the bare metal server the traffic is associated with"""
|
|
396
|
+
|
|
397
|
+
instance_name: Optional[str] = None
|
|
398
|
+
"""Name of the instance"""
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
class ResultResourceExternalIPWithCostSerializer(BaseModel):
|
|
402
|
+
attached_to_vm: Optional[str] = None
|
|
403
|
+
"""ID of the VM the IP is attached to"""
|
|
404
|
+
|
|
405
|
+
billing_feature_name: Optional[str] = None
|
|
406
|
+
|
|
407
|
+
billing_metric_name: str
|
|
408
|
+
"""Name of the billing metric"""
|
|
409
|
+
|
|
410
|
+
billing_value: float
|
|
411
|
+
"""Value of the billing metric"""
|
|
412
|
+
|
|
413
|
+
billing_value_unit: Literal["minutes"]
|
|
414
|
+
"""Unit of billing value"""
|
|
415
|
+
|
|
416
|
+
cost: Optional[float] = None
|
|
417
|
+
"""Cost for requested period"""
|
|
418
|
+
|
|
419
|
+
currency: Optional[str] = None
|
|
420
|
+
"""Currency of the cost"""
|
|
421
|
+
|
|
422
|
+
err: Optional[str] = None
|
|
423
|
+
"""Error message"""
|
|
424
|
+
|
|
425
|
+
first_seen: datetime
|
|
426
|
+
"""First time the resource was seen in the given period"""
|
|
427
|
+
|
|
428
|
+
ip_address: str
|
|
429
|
+
"""IP address"""
|
|
430
|
+
|
|
431
|
+
last_seen: datetime
|
|
432
|
+
"""Last time the resource was seen in the given period"""
|
|
433
|
+
|
|
434
|
+
network_id: str
|
|
435
|
+
"""ID of the network the IP is attached to"""
|
|
436
|
+
|
|
437
|
+
port_id: str
|
|
438
|
+
"""ID of the port the IP is associated with"""
|
|
439
|
+
|
|
440
|
+
project_id: int
|
|
441
|
+
"""ID of the project the resource belongs to"""
|
|
442
|
+
|
|
443
|
+
region: int
|
|
444
|
+
"""Region ID"""
|
|
445
|
+
|
|
446
|
+
region_id: int
|
|
447
|
+
"""Region ID"""
|
|
448
|
+
|
|
449
|
+
subnet_id: str
|
|
450
|
+
"""ID of the subnet the IP is attached to"""
|
|
451
|
+
|
|
452
|
+
type: Literal["external_ip"]
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
class ResultResourceFileShareWithCostSerializer(BaseModel):
|
|
456
|
+
billing_feature_name: Optional[str] = None
|
|
457
|
+
|
|
458
|
+
billing_metric_name: str
|
|
459
|
+
"""Name of the billing metric"""
|
|
460
|
+
|
|
461
|
+
billing_value: float
|
|
462
|
+
"""Value of the billing metric"""
|
|
463
|
+
|
|
464
|
+
billing_value_unit: Literal["gbminutes"]
|
|
465
|
+
"""Unit of billing value"""
|
|
466
|
+
|
|
467
|
+
cost: Optional[float] = None
|
|
468
|
+
"""Cost for requested period"""
|
|
469
|
+
|
|
470
|
+
currency: Optional[str] = None
|
|
471
|
+
"""Currency of the cost"""
|
|
472
|
+
|
|
473
|
+
err: Optional[str] = None
|
|
474
|
+
"""Error message"""
|
|
475
|
+
|
|
476
|
+
file_share_type: str
|
|
477
|
+
"""Type of the file share"""
|
|
478
|
+
|
|
479
|
+
first_seen: datetime
|
|
480
|
+
"""First time the resource was seen in the given period"""
|
|
481
|
+
|
|
482
|
+
last_name: str
|
|
483
|
+
"""Name of the file share"""
|
|
484
|
+
|
|
485
|
+
last_seen: datetime
|
|
486
|
+
"""Last time the resource was seen in the given period"""
|
|
487
|
+
|
|
488
|
+
last_size: int
|
|
489
|
+
"""Size of the file share in bytes"""
|
|
490
|
+
|
|
491
|
+
project_id: int
|
|
492
|
+
"""ID of the project the resource belongs to"""
|
|
493
|
+
|
|
494
|
+
region: int
|
|
495
|
+
"""Region ID"""
|
|
496
|
+
|
|
497
|
+
region_id: int
|
|
498
|
+
"""Region ID"""
|
|
499
|
+
|
|
500
|
+
size_unit: Literal["GiB"]
|
|
501
|
+
"""Unit of size"""
|
|
502
|
+
|
|
503
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
504
|
+
"""List of tags"""
|
|
505
|
+
|
|
506
|
+
type: Literal["file_share"]
|
|
507
|
+
|
|
508
|
+
uuid: str
|
|
509
|
+
"""UUID of the file share"""
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
class ResultResourceFloatingIPWithCostSerializer(BaseModel):
|
|
513
|
+
billing_feature_name: Optional[str] = None
|
|
514
|
+
|
|
515
|
+
billing_metric_name: str
|
|
516
|
+
"""Name of the billing metric"""
|
|
517
|
+
|
|
518
|
+
billing_value: float
|
|
519
|
+
"""Value of the billing metric"""
|
|
520
|
+
|
|
521
|
+
billing_value_unit: Literal["minutes"]
|
|
522
|
+
"""Unit of billing value"""
|
|
523
|
+
|
|
524
|
+
cost: Optional[float] = None
|
|
525
|
+
"""Cost for requested period"""
|
|
526
|
+
|
|
527
|
+
currency: Optional[str] = None
|
|
528
|
+
"""Currency of the cost"""
|
|
529
|
+
|
|
530
|
+
err: Optional[str] = None
|
|
531
|
+
"""Error message"""
|
|
532
|
+
|
|
533
|
+
first_seen: datetime
|
|
534
|
+
"""First time the resource was seen in the given period"""
|
|
535
|
+
|
|
536
|
+
ip_address: str
|
|
537
|
+
"""IP address"""
|
|
538
|
+
|
|
539
|
+
last_name: str
|
|
540
|
+
"""Name of the floating IP"""
|
|
541
|
+
|
|
542
|
+
last_seen: datetime
|
|
543
|
+
"""Last time the resource was seen in the given period"""
|
|
544
|
+
|
|
545
|
+
project_id: int
|
|
546
|
+
"""ID of the project the resource belongs to"""
|
|
547
|
+
|
|
548
|
+
region: int
|
|
549
|
+
"""Region ID"""
|
|
550
|
+
|
|
551
|
+
region_id: int
|
|
552
|
+
"""Region ID"""
|
|
553
|
+
|
|
554
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
555
|
+
"""List of tags"""
|
|
556
|
+
|
|
557
|
+
type: Literal["floatingip"]
|
|
558
|
+
|
|
559
|
+
uuid: str
|
|
560
|
+
"""UUID of the floating IP"""
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
class ResultResourceFunctionsWithCostSerializer(BaseModel):
|
|
564
|
+
billing_feature_name: Optional[str] = None
|
|
565
|
+
|
|
566
|
+
billing_metric_name: str
|
|
567
|
+
"""Name of the billing metric"""
|
|
568
|
+
|
|
569
|
+
billing_value: float
|
|
570
|
+
"""Value of the billing metric"""
|
|
571
|
+
|
|
572
|
+
billing_value_unit: Literal["GBS"]
|
|
573
|
+
"""Unit of billing value"""
|
|
574
|
+
|
|
575
|
+
cost: Optional[float] = None
|
|
576
|
+
"""Cost for requested period"""
|
|
577
|
+
|
|
578
|
+
currency: Optional[str] = None
|
|
579
|
+
"""Currency of the cost"""
|
|
580
|
+
|
|
581
|
+
err: Optional[str] = None
|
|
582
|
+
"""Error message"""
|
|
583
|
+
|
|
584
|
+
first_seen: datetime
|
|
585
|
+
"""First time the resource was seen in the given period"""
|
|
586
|
+
|
|
587
|
+
last_name: str
|
|
588
|
+
"""Name of the function"""
|
|
589
|
+
|
|
590
|
+
last_seen: datetime
|
|
591
|
+
"""Last time the resource was seen in the given period"""
|
|
592
|
+
|
|
593
|
+
project_id: int
|
|
594
|
+
"""ID of the project the resource belongs to"""
|
|
595
|
+
|
|
596
|
+
region: int
|
|
597
|
+
"""Region ID"""
|
|
598
|
+
|
|
599
|
+
region_id: int
|
|
600
|
+
"""Region ID"""
|
|
601
|
+
|
|
602
|
+
type: Literal["functions"]
|
|
603
|
+
|
|
604
|
+
uuid: str
|
|
605
|
+
"""UUID of the function"""
|
|
606
|
+
|
|
607
|
+
|
|
608
|
+
class ResultResourceFunctionCallsWithCostSerializer(BaseModel):
|
|
609
|
+
billing_feature_name: Optional[str] = None
|
|
610
|
+
|
|
611
|
+
billing_metric_name: str
|
|
612
|
+
"""Name of the billing metric"""
|
|
613
|
+
|
|
614
|
+
billing_value: float
|
|
615
|
+
"""Value of the billing metric"""
|
|
616
|
+
|
|
617
|
+
billing_value_unit: Literal["MLS"]
|
|
618
|
+
"""Unit of billing value"""
|
|
619
|
+
|
|
620
|
+
cost: Optional[float] = None
|
|
621
|
+
"""Cost for requested period"""
|
|
622
|
+
|
|
623
|
+
currency: Optional[str] = None
|
|
624
|
+
"""Currency of the cost"""
|
|
625
|
+
|
|
626
|
+
err: Optional[str] = None
|
|
627
|
+
"""Error message"""
|
|
628
|
+
|
|
629
|
+
first_seen: datetime
|
|
630
|
+
"""First time the resource was seen in the given period"""
|
|
631
|
+
|
|
632
|
+
last_name: str
|
|
633
|
+
"""Name of the function call"""
|
|
634
|
+
|
|
635
|
+
last_seen: datetime
|
|
636
|
+
"""Last time the resource was seen in the given period"""
|
|
637
|
+
|
|
638
|
+
project_id: int
|
|
639
|
+
"""ID of the project the resource belongs to"""
|
|
640
|
+
|
|
641
|
+
region: int
|
|
642
|
+
"""Region ID"""
|
|
643
|
+
|
|
644
|
+
region_id: int
|
|
645
|
+
"""Region ID"""
|
|
646
|
+
|
|
647
|
+
type: Literal["functions_calls"]
|
|
648
|
+
|
|
649
|
+
uuid: str
|
|
650
|
+
"""UUID of the function call"""
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
class ResultResourceFunctionEgressTrafficWithCostSerializer(BaseModel):
|
|
654
|
+
billing_feature_name: Optional[str] = None
|
|
655
|
+
|
|
656
|
+
billing_metric_name: str
|
|
657
|
+
"""Name of the billing metric"""
|
|
658
|
+
|
|
659
|
+
billing_value: float
|
|
660
|
+
"""Value of the billing metric"""
|
|
661
|
+
|
|
662
|
+
billing_value_unit: Literal["GB"]
|
|
663
|
+
"""Unit of billing value"""
|
|
664
|
+
|
|
665
|
+
cost: Optional[float] = None
|
|
666
|
+
"""Cost for requested period"""
|
|
667
|
+
|
|
668
|
+
currency: Optional[str] = None
|
|
669
|
+
"""Currency of the cost"""
|
|
670
|
+
|
|
671
|
+
err: Optional[str] = None
|
|
672
|
+
"""Error message"""
|
|
673
|
+
|
|
674
|
+
first_seen: datetime
|
|
675
|
+
"""First time the resource was seen in the given period"""
|
|
676
|
+
|
|
677
|
+
last_name: str
|
|
678
|
+
"""Name of the function egress traffic"""
|
|
679
|
+
|
|
680
|
+
last_seen: datetime
|
|
681
|
+
"""Last time the resource was seen in the given period"""
|
|
682
|
+
|
|
683
|
+
project_id: int
|
|
684
|
+
"""ID of the project the resource belongs to"""
|
|
685
|
+
|
|
686
|
+
region: int
|
|
687
|
+
"""Region ID"""
|
|
688
|
+
|
|
689
|
+
region_id: int
|
|
690
|
+
"""Region ID"""
|
|
691
|
+
|
|
692
|
+
type: Literal["functions_traffic"]
|
|
693
|
+
|
|
694
|
+
uuid: str
|
|
695
|
+
"""UUID of the function egress traffic"""
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
class ResultResourceImagesWithCostSerializer(BaseModel):
|
|
699
|
+
billing_feature_name: Optional[str] = None
|
|
700
|
+
|
|
701
|
+
billing_metric_name: str
|
|
702
|
+
"""Name of the billing metric"""
|
|
703
|
+
|
|
704
|
+
billing_value: float
|
|
705
|
+
"""Value of the billing metric"""
|
|
706
|
+
|
|
707
|
+
billing_value_unit: Literal["gbminutes"]
|
|
708
|
+
"""Unit of billing value"""
|
|
709
|
+
|
|
710
|
+
cost: Optional[float] = None
|
|
711
|
+
"""Cost for requested period"""
|
|
712
|
+
|
|
713
|
+
currency: Optional[str] = None
|
|
714
|
+
"""Currency of the cost"""
|
|
715
|
+
|
|
716
|
+
err: Optional[str] = None
|
|
717
|
+
"""Error message"""
|
|
718
|
+
|
|
719
|
+
first_seen: datetime
|
|
720
|
+
"""First time the resource was seen in the given period"""
|
|
721
|
+
|
|
722
|
+
last_name: str
|
|
723
|
+
"""Name of the image"""
|
|
724
|
+
|
|
725
|
+
last_seen: datetime
|
|
726
|
+
"""Last time the resource was seen in the given period"""
|
|
727
|
+
|
|
728
|
+
last_size: int
|
|
729
|
+
"""Size of the image in bytes"""
|
|
730
|
+
|
|
731
|
+
project_id: int
|
|
732
|
+
"""ID of the project the resource belongs to"""
|
|
733
|
+
|
|
734
|
+
region: int
|
|
735
|
+
"""Region ID"""
|
|
736
|
+
|
|
737
|
+
region_id: int
|
|
738
|
+
"""Region ID"""
|
|
739
|
+
|
|
740
|
+
size_unit: Literal["bytes"]
|
|
741
|
+
"""Unit of size"""
|
|
742
|
+
|
|
743
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
744
|
+
"""List of tags"""
|
|
745
|
+
|
|
746
|
+
type: Literal["image"]
|
|
747
|
+
|
|
748
|
+
uuid: str
|
|
749
|
+
"""UUID of the image"""
|
|
750
|
+
|
|
751
|
+
|
|
752
|
+
class ResultResourceInferenceWithCostSerializer(BaseModel):
|
|
753
|
+
billing_feature_name: Optional[str] = None
|
|
754
|
+
|
|
755
|
+
billing_metric_name: str
|
|
756
|
+
"""Name of the billing metric"""
|
|
757
|
+
|
|
758
|
+
billing_value: float
|
|
759
|
+
"""Value of the billing metric"""
|
|
760
|
+
|
|
761
|
+
billing_value_unit: str
|
|
762
|
+
"""Unit of billing value"""
|
|
763
|
+
|
|
764
|
+
cost: Optional[float] = None
|
|
765
|
+
"""Cost for requested period"""
|
|
766
|
+
|
|
767
|
+
currency: Optional[str] = None
|
|
768
|
+
"""Currency of the cost"""
|
|
769
|
+
|
|
770
|
+
err: Optional[str] = None
|
|
771
|
+
"""Error message"""
|
|
772
|
+
|
|
773
|
+
first_seen: datetime
|
|
774
|
+
"""First time the resource was seen in the given period"""
|
|
775
|
+
|
|
776
|
+
flavor: str
|
|
777
|
+
"""Flavor of the inference deployment"""
|
|
778
|
+
|
|
779
|
+
last_name: str
|
|
780
|
+
"""Name of the inference deployment"""
|
|
781
|
+
|
|
782
|
+
last_seen: datetime
|
|
783
|
+
"""Last time the resource was seen in the given period"""
|
|
784
|
+
|
|
785
|
+
project_id: int
|
|
786
|
+
"""ID of the project the resource belongs to"""
|
|
787
|
+
|
|
788
|
+
region: int
|
|
789
|
+
"""Region ID"""
|
|
790
|
+
|
|
791
|
+
region_id: int
|
|
792
|
+
"""Region ID"""
|
|
793
|
+
|
|
794
|
+
type: Literal["inference"]
|
|
795
|
+
|
|
796
|
+
uuid: str
|
|
797
|
+
"""UUID of the inference deployment"""
|
|
798
|
+
|
|
799
|
+
|
|
800
|
+
class ResultResourceInstanceWithCostSerializer(BaseModel):
|
|
801
|
+
billing_feature_name: Optional[str] = None
|
|
802
|
+
|
|
803
|
+
billing_metric_name: str
|
|
804
|
+
"""Name of the billing metric"""
|
|
805
|
+
|
|
806
|
+
billing_value: float
|
|
807
|
+
"""Value of the billing metric"""
|
|
808
|
+
|
|
809
|
+
billing_value_unit: Literal["minutes"]
|
|
810
|
+
"""Unit of billing value"""
|
|
811
|
+
|
|
812
|
+
cost: Optional[float] = None
|
|
813
|
+
"""Cost for requested period"""
|
|
814
|
+
|
|
815
|
+
currency: Optional[str] = None
|
|
816
|
+
"""Currency of the cost"""
|
|
817
|
+
|
|
818
|
+
err: Optional[str] = None
|
|
819
|
+
"""Error message"""
|
|
820
|
+
|
|
821
|
+
first_seen: datetime
|
|
822
|
+
"""First time the resource was seen in the given period"""
|
|
823
|
+
|
|
824
|
+
flavor: str
|
|
825
|
+
"""Flavor of the instance"""
|
|
826
|
+
|
|
827
|
+
last_name: str
|
|
828
|
+
"""Name of the instance"""
|
|
829
|
+
|
|
830
|
+
last_seen: datetime
|
|
831
|
+
"""Last time the resource was seen in the given period"""
|
|
832
|
+
|
|
833
|
+
project_id: int
|
|
834
|
+
"""ID of the project the resource belongs to"""
|
|
835
|
+
|
|
836
|
+
region: int
|
|
837
|
+
"""Region ID"""
|
|
838
|
+
|
|
839
|
+
region_id: int
|
|
840
|
+
"""Region ID"""
|
|
841
|
+
|
|
842
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
843
|
+
"""List of tags"""
|
|
844
|
+
|
|
845
|
+
type: Literal["instance"]
|
|
846
|
+
|
|
847
|
+
uuid: str
|
|
848
|
+
"""UUID of the instance"""
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
class ResultResourceLoadBalancerWithCostSerializer(BaseModel):
|
|
852
|
+
billing_feature_name: Optional[str] = None
|
|
853
|
+
|
|
854
|
+
billing_metric_name: str
|
|
855
|
+
"""Name of the billing metric"""
|
|
856
|
+
|
|
857
|
+
billing_value: float
|
|
858
|
+
"""Value of the billing metric"""
|
|
859
|
+
|
|
860
|
+
billing_value_unit: Literal["minutes"]
|
|
861
|
+
"""Unit of billing value"""
|
|
862
|
+
|
|
863
|
+
cost: Optional[float] = None
|
|
864
|
+
"""Cost for requested period"""
|
|
865
|
+
|
|
866
|
+
currency: Optional[str] = None
|
|
867
|
+
"""Currency of the cost"""
|
|
868
|
+
|
|
869
|
+
err: Optional[str] = None
|
|
870
|
+
"""Error message"""
|
|
871
|
+
|
|
872
|
+
first_seen: datetime
|
|
873
|
+
"""First time the resource was seen in the given period"""
|
|
874
|
+
|
|
875
|
+
flavor: str
|
|
876
|
+
"""Flavor of the load balancer"""
|
|
877
|
+
|
|
878
|
+
last_name: str
|
|
879
|
+
"""Name of the load balancer"""
|
|
880
|
+
|
|
881
|
+
last_seen: datetime
|
|
882
|
+
"""Last time the resource was seen in the given period"""
|
|
883
|
+
|
|
884
|
+
project_id: int
|
|
885
|
+
"""ID of the project the resource belongs to"""
|
|
886
|
+
|
|
887
|
+
region: int
|
|
888
|
+
"""Region ID"""
|
|
889
|
+
|
|
890
|
+
region_id: int
|
|
891
|
+
"""Region ID"""
|
|
892
|
+
|
|
893
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
894
|
+
"""List of tags"""
|
|
895
|
+
|
|
896
|
+
type: Literal["load_balancer"]
|
|
897
|
+
|
|
898
|
+
uuid: str
|
|
899
|
+
"""UUID of the load balancer"""
|
|
900
|
+
|
|
901
|
+
|
|
902
|
+
class ResultResourceLogIndexWithCostSerializer(BaseModel):
|
|
903
|
+
billing_feature_name: Optional[str] = None
|
|
904
|
+
|
|
905
|
+
billing_metric_name: str
|
|
906
|
+
"""Name of the billing metric"""
|
|
907
|
+
|
|
908
|
+
billing_value: float
|
|
909
|
+
"""Value of the billing metric"""
|
|
910
|
+
|
|
911
|
+
billing_value_unit: Literal["gbminutes"]
|
|
912
|
+
"""Unit of billing value"""
|
|
913
|
+
|
|
914
|
+
cost: Optional[float] = None
|
|
915
|
+
"""Cost for requested period"""
|
|
916
|
+
|
|
917
|
+
currency: Optional[str] = None
|
|
918
|
+
"""Currency of the cost"""
|
|
919
|
+
|
|
920
|
+
err: Optional[str] = None
|
|
921
|
+
"""Error message"""
|
|
922
|
+
|
|
923
|
+
first_seen: datetime
|
|
924
|
+
"""First time the resource was seen in the given period"""
|
|
925
|
+
|
|
926
|
+
last_name: str
|
|
927
|
+
"""Name of the log index"""
|
|
928
|
+
|
|
929
|
+
last_seen: datetime
|
|
930
|
+
"""Last time the resource was seen in the given period"""
|
|
931
|
+
|
|
932
|
+
last_size: int
|
|
933
|
+
"""Size of the log index in bytes"""
|
|
934
|
+
|
|
935
|
+
project_id: int
|
|
936
|
+
"""ID of the project the resource belongs to"""
|
|
937
|
+
|
|
938
|
+
region: int
|
|
939
|
+
"""Region ID"""
|
|
940
|
+
|
|
941
|
+
region_id: int
|
|
942
|
+
"""Region ID"""
|
|
943
|
+
|
|
944
|
+
size_unit: str
|
|
945
|
+
"""Unit of size"""
|
|
946
|
+
|
|
947
|
+
type: Literal["log_index"]
|
|
948
|
+
|
|
949
|
+
uuid: Optional[str] = None
|
|
950
|
+
"""UUID of the log index"""
|
|
951
|
+
|
|
952
|
+
|
|
953
|
+
class ResultResourceSnapshotWithCostSerializer(BaseModel):
|
|
954
|
+
billing_feature_name: Optional[str] = None
|
|
955
|
+
|
|
956
|
+
billing_metric_name: str
|
|
957
|
+
"""Name of the billing metric"""
|
|
958
|
+
|
|
959
|
+
billing_value: float
|
|
960
|
+
"""Value of the billing metric"""
|
|
961
|
+
|
|
962
|
+
billing_value_unit: Literal["gbminutes"]
|
|
963
|
+
"""Unit of billing value"""
|
|
964
|
+
|
|
965
|
+
cost: Optional[float] = None
|
|
966
|
+
"""Cost for requested period"""
|
|
967
|
+
|
|
968
|
+
currency: Optional[str] = None
|
|
969
|
+
"""Currency of the cost"""
|
|
970
|
+
|
|
971
|
+
err: Optional[str] = None
|
|
972
|
+
"""Error message"""
|
|
973
|
+
|
|
974
|
+
first_seen: datetime
|
|
975
|
+
"""First time the resource was seen in the given period"""
|
|
976
|
+
|
|
977
|
+
last_name: str
|
|
978
|
+
"""Name of the snapshot"""
|
|
979
|
+
|
|
980
|
+
last_seen: datetime
|
|
981
|
+
"""Last time the resource was seen in the given period"""
|
|
982
|
+
|
|
983
|
+
last_size: int
|
|
984
|
+
"""Size of the snapshot in bytes"""
|
|
985
|
+
|
|
986
|
+
project_id: int
|
|
987
|
+
"""ID of the project the resource belongs to"""
|
|
988
|
+
|
|
989
|
+
region: int
|
|
990
|
+
"""Region ID"""
|
|
991
|
+
|
|
992
|
+
region_id: int
|
|
993
|
+
"""Region ID"""
|
|
994
|
+
|
|
995
|
+
size_unit: str
|
|
996
|
+
"""Unit of size"""
|
|
997
|
+
|
|
998
|
+
source_volume_uuid: str
|
|
999
|
+
"""UUID of the source volume"""
|
|
1000
|
+
|
|
1001
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
1002
|
+
"""List of tags"""
|
|
1003
|
+
|
|
1004
|
+
type: Literal["snapshot"]
|
|
1005
|
+
|
|
1006
|
+
uuid: str
|
|
1007
|
+
"""UUID of the snapshot"""
|
|
1008
|
+
|
|
1009
|
+
volume_type: str
|
|
1010
|
+
"""Type of the volume"""
|
|
1011
|
+
|
|
1012
|
+
|
|
1013
|
+
class ResultResourceVolumeWithCostSerializer(BaseModel):
|
|
1014
|
+
billing_feature_name: Optional[str] = None
|
|
1015
|
+
|
|
1016
|
+
billing_metric_name: str
|
|
1017
|
+
"""Name of the billing metric"""
|
|
1018
|
+
|
|
1019
|
+
billing_value: float
|
|
1020
|
+
"""Value of the billing metric"""
|
|
1021
|
+
|
|
1022
|
+
billing_value_unit: Literal["gbminutes"]
|
|
1023
|
+
"""Unit of billing value"""
|
|
1024
|
+
|
|
1025
|
+
cost: Optional[float] = None
|
|
1026
|
+
"""Cost for requested period"""
|
|
1027
|
+
|
|
1028
|
+
currency: Optional[str] = None
|
|
1029
|
+
"""Currency of the cost"""
|
|
1030
|
+
|
|
1031
|
+
err: Optional[str] = None
|
|
1032
|
+
"""Error message"""
|
|
1033
|
+
|
|
1034
|
+
first_seen: datetime
|
|
1035
|
+
"""First time the resource was seen in the given period"""
|
|
1036
|
+
|
|
1037
|
+
last_name: str
|
|
1038
|
+
"""Name of the volume"""
|
|
1039
|
+
|
|
1040
|
+
last_seen: datetime
|
|
1041
|
+
"""Last time the resource was seen in the given period"""
|
|
1042
|
+
|
|
1043
|
+
last_size: int
|
|
1044
|
+
"""Size of the volume in bytes"""
|
|
1045
|
+
|
|
1046
|
+
project_id: int
|
|
1047
|
+
"""ID of the project the resource belongs to"""
|
|
1048
|
+
|
|
1049
|
+
region: int
|
|
1050
|
+
"""Region ID"""
|
|
1051
|
+
|
|
1052
|
+
region_id: int
|
|
1053
|
+
"""Region ID"""
|
|
1054
|
+
|
|
1055
|
+
size_unit: str
|
|
1056
|
+
"""Unit of size"""
|
|
1057
|
+
|
|
1058
|
+
tags: Optional[List[Dict[str, str]]] = None
|
|
1059
|
+
"""List of tags"""
|
|
1060
|
+
|
|
1061
|
+
type: Literal["volume"]
|
|
1062
|
+
|
|
1063
|
+
uuid: str
|
|
1064
|
+
"""UUID of the volume"""
|
|
1065
|
+
|
|
1066
|
+
volume_type: str
|
|
1067
|
+
"""Type of the volume"""
|
|
1068
|
+
|
|
1069
|
+
attached_to_vm: Optional[str] = None
|
|
1070
|
+
"""ID of the VM the volume is attached to"""
|
|
1071
|
+
|
|
1072
|
+
|
|
1073
|
+
class ResultResourceDbaasPostgreSQLPoolerWithCostSerializer(BaseModel):
|
|
1074
|
+
billing_feature_name: Optional[str] = None
|
|
1075
|
+
|
|
1076
|
+
billing_metric_name: str
|
|
1077
|
+
"""Name of the billing metric"""
|
|
1078
|
+
|
|
1079
|
+
billing_value: float
|
|
1080
|
+
"""Value of the billing metric"""
|
|
1081
|
+
|
|
1082
|
+
billing_value_unit: Literal["minutes"]
|
|
1083
|
+
"""Unit of billing value"""
|
|
1084
|
+
|
|
1085
|
+
cost: Optional[float] = None
|
|
1086
|
+
"""Cost for requested period"""
|
|
1087
|
+
|
|
1088
|
+
currency: Optional[str] = None
|
|
1089
|
+
"""Currency of the cost"""
|
|
1090
|
+
|
|
1091
|
+
err: Optional[str] = None
|
|
1092
|
+
"""Error message"""
|
|
1093
|
+
|
|
1094
|
+
first_seen: datetime
|
|
1095
|
+
"""First time the resource was seen in the given period"""
|
|
1096
|
+
|
|
1097
|
+
last_name: str
|
|
1098
|
+
"""Name of the cluster"""
|
|
1099
|
+
|
|
1100
|
+
last_seen: datetime
|
|
1101
|
+
"""Last time the resource was seen in the given period"""
|
|
1102
|
+
|
|
1103
|
+
project_id: int
|
|
1104
|
+
"""ID of the project the resource belongs to"""
|
|
1105
|
+
|
|
1106
|
+
region: int
|
|
1107
|
+
"""Region ID"""
|
|
1108
|
+
|
|
1109
|
+
region_id: int
|
|
1110
|
+
"""Region ID"""
|
|
1111
|
+
|
|
1112
|
+
type: Literal["dbaas_postgresql_connection_pooler"]
|
|
1113
|
+
|
|
1114
|
+
uuid: str
|
|
1115
|
+
"""UUID of the cluster"""
|
|
1116
|
+
|
|
1117
|
+
|
|
1118
|
+
class ResultResourceDbaasPostgreSQLMemoryWithCostSerializer(BaseModel):
|
|
1119
|
+
billing_feature_name: Optional[str] = None
|
|
1120
|
+
|
|
1121
|
+
billing_metric_name: str
|
|
1122
|
+
"""Name of the billing metric"""
|
|
1123
|
+
|
|
1124
|
+
billing_value: float
|
|
1125
|
+
"""Value of the billing metric"""
|
|
1126
|
+
|
|
1127
|
+
billing_value_unit: Literal["gbminutes"]
|
|
1128
|
+
"""Unit of billing value"""
|
|
1129
|
+
|
|
1130
|
+
cost: Optional[float] = None
|
|
1131
|
+
"""Cost for requested period"""
|
|
1132
|
+
|
|
1133
|
+
currency: Optional[str] = None
|
|
1134
|
+
"""Currency of the cost"""
|
|
1135
|
+
|
|
1136
|
+
err: Optional[str] = None
|
|
1137
|
+
"""Error message"""
|
|
1138
|
+
|
|
1139
|
+
first_seen: datetime
|
|
1140
|
+
"""First time the resource was seen in the given period"""
|
|
1141
|
+
|
|
1142
|
+
last_name: str
|
|
1143
|
+
"""Name of the cluster"""
|
|
1144
|
+
|
|
1145
|
+
last_seen: datetime
|
|
1146
|
+
"""Last time the resource was seen in the given period"""
|
|
1147
|
+
|
|
1148
|
+
project_id: int
|
|
1149
|
+
"""ID of the project the resource belongs to"""
|
|
1150
|
+
|
|
1151
|
+
region: int
|
|
1152
|
+
"""Region ID"""
|
|
1153
|
+
|
|
1154
|
+
region_id: int
|
|
1155
|
+
"""Region ID"""
|
|
1156
|
+
|
|
1157
|
+
type: Literal["dbaas_postgresql_memory"]
|
|
1158
|
+
|
|
1159
|
+
uuid: str
|
|
1160
|
+
"""UUID of the cluster"""
|
|
1161
|
+
|
|
1162
|
+
|
|
1163
|
+
class ResultResourceDbaasPostgreSQLPublicNetworkWithCostSerializer(BaseModel):
|
|
1164
|
+
billing_feature_name: Optional[str] = None
|
|
1165
|
+
|
|
1166
|
+
billing_metric_name: str
|
|
1167
|
+
"""Name of the billing metric"""
|
|
1168
|
+
|
|
1169
|
+
billing_value: float
|
|
1170
|
+
"""Value of the billing metric"""
|
|
1171
|
+
|
|
1172
|
+
billing_value_unit: Literal["minutes"]
|
|
1173
|
+
"""Unit of billing value"""
|
|
1174
|
+
|
|
1175
|
+
cost: Optional[float] = None
|
|
1176
|
+
"""Cost for requested period"""
|
|
1177
|
+
|
|
1178
|
+
currency: Optional[str] = None
|
|
1179
|
+
"""Currency of the cost"""
|
|
1180
|
+
|
|
1181
|
+
err: Optional[str] = None
|
|
1182
|
+
"""Error message"""
|
|
1183
|
+
|
|
1184
|
+
first_seen: datetime
|
|
1185
|
+
"""First time the resource was seen in the given period"""
|
|
1186
|
+
|
|
1187
|
+
last_name: str
|
|
1188
|
+
"""Name of the cluster"""
|
|
1189
|
+
|
|
1190
|
+
last_seen: datetime
|
|
1191
|
+
"""Last time the resource was seen in the given period"""
|
|
1192
|
+
|
|
1193
|
+
project_id: int
|
|
1194
|
+
"""ID of the project the resource belongs to"""
|
|
1195
|
+
|
|
1196
|
+
region: int
|
|
1197
|
+
"""Region ID"""
|
|
1198
|
+
|
|
1199
|
+
region_id: int
|
|
1200
|
+
"""Region ID"""
|
|
1201
|
+
|
|
1202
|
+
type: Literal["dbaas_postgresql_public_network"]
|
|
1203
|
+
|
|
1204
|
+
uuid: str
|
|
1205
|
+
"""UUID of the cluster"""
|
|
1206
|
+
|
|
1207
|
+
|
|
1208
|
+
class ResultResourceDbaasPostgreSqlcpuWithCostSerializer(BaseModel):
|
|
1209
|
+
billing_feature_name: Optional[str] = None
|
|
1210
|
+
|
|
1211
|
+
billing_metric_name: str
|
|
1212
|
+
"""Name of the billing metric"""
|
|
1213
|
+
|
|
1214
|
+
billing_value: float
|
|
1215
|
+
"""Value of the billing metric"""
|
|
1216
|
+
|
|
1217
|
+
billing_value_unit: Literal["minutes"]
|
|
1218
|
+
"""Unit of billing value"""
|
|
1219
|
+
|
|
1220
|
+
cost: Optional[float] = None
|
|
1221
|
+
"""Cost for requested period"""
|
|
1222
|
+
|
|
1223
|
+
currency: Optional[str] = None
|
|
1224
|
+
"""Currency of the cost"""
|
|
1225
|
+
|
|
1226
|
+
err: Optional[str] = None
|
|
1227
|
+
"""Error message"""
|
|
1228
|
+
|
|
1229
|
+
first_seen: datetime
|
|
1230
|
+
"""First time the resource was seen in the given period"""
|
|
1231
|
+
|
|
1232
|
+
last_name: str
|
|
1233
|
+
"""Name of the cluster"""
|
|
1234
|
+
|
|
1235
|
+
last_seen: datetime
|
|
1236
|
+
"""Last time the resource was seen in the given period"""
|
|
1237
|
+
|
|
1238
|
+
project_id: int
|
|
1239
|
+
"""ID of the project the resource belongs to"""
|
|
1240
|
+
|
|
1241
|
+
region: int
|
|
1242
|
+
"""Region ID"""
|
|
1243
|
+
|
|
1244
|
+
region_id: int
|
|
1245
|
+
"""Region ID"""
|
|
1246
|
+
|
|
1247
|
+
type: Literal["dbaas_postgresql_cpu"]
|
|
1248
|
+
|
|
1249
|
+
uuid: str
|
|
1250
|
+
"""UUID of the cluster"""
|
|
1251
|
+
|
|
1252
|
+
|
|
1253
|
+
class ResultResourceDbaasPostgreSQLVolumeWithCostSerializer(BaseModel):
|
|
1254
|
+
billing_feature_name: Optional[str] = None
|
|
1255
|
+
|
|
1256
|
+
billing_metric_name: str
|
|
1257
|
+
"""Name of the billing metric"""
|
|
1258
|
+
|
|
1259
|
+
billing_value: float
|
|
1260
|
+
"""Value of the billing metric"""
|
|
1261
|
+
|
|
1262
|
+
billing_value_unit: Literal["gbminutes"]
|
|
1263
|
+
"""Unit of billing value"""
|
|
1264
|
+
|
|
1265
|
+
cost: Optional[float] = None
|
|
1266
|
+
"""Cost for requested period"""
|
|
1267
|
+
|
|
1268
|
+
currency: Optional[str] = None
|
|
1269
|
+
"""Currency of the cost"""
|
|
1270
|
+
|
|
1271
|
+
err: Optional[str] = None
|
|
1272
|
+
"""Error message"""
|
|
1273
|
+
|
|
1274
|
+
first_seen: datetime
|
|
1275
|
+
"""First time the resource was seen in the given period"""
|
|
1276
|
+
|
|
1277
|
+
last_name: str
|
|
1278
|
+
"""Name of the cluster"""
|
|
1279
|
+
|
|
1280
|
+
last_seen: datetime
|
|
1281
|
+
"""Last time the resource was seen in the given period"""
|
|
1282
|
+
|
|
1283
|
+
project_id: int
|
|
1284
|
+
"""ID of the project the resource belongs to"""
|
|
1285
|
+
|
|
1286
|
+
region: int
|
|
1287
|
+
"""Region ID"""
|
|
1288
|
+
|
|
1289
|
+
region_id: int
|
|
1290
|
+
"""Region ID"""
|
|
1291
|
+
|
|
1292
|
+
size_unit: str
|
|
1293
|
+
"""Unit of size"""
|
|
1294
|
+
|
|
1295
|
+
type: Literal["dbaas_postgresql_volume"]
|
|
1296
|
+
|
|
1297
|
+
uuid: str
|
|
1298
|
+
"""UUID of the cluster"""
|
|
1299
|
+
|
|
1300
|
+
volume_type: str
|
|
1301
|
+
"""Type of the volume"""
|
|
1302
|
+
|
|
1303
|
+
|
|
1304
|
+
Result: TypeAlias = Annotated[
|
|
1305
|
+
Union[
|
|
1306
|
+
ResultResourceAIClusterWithCostSerializer,
|
|
1307
|
+
ResultResourceAIVirtualClusterWithCostSerializer,
|
|
1308
|
+
ResultResourceBaremetalWithCostSerializer,
|
|
1309
|
+
ResultResourceBasicVmWithCostSerializer,
|
|
1310
|
+
ResultResourceBackupWithCostSerializer,
|
|
1311
|
+
ResultResourceContainerWithCostSerializer,
|
|
1312
|
+
ResultResourceEgressTrafficWithCostSerializer,
|
|
1313
|
+
ResultResourceExternalIPWithCostSerializer,
|
|
1314
|
+
ResultResourceFileShareWithCostSerializer,
|
|
1315
|
+
ResultResourceFloatingIPWithCostSerializer,
|
|
1316
|
+
ResultResourceFunctionsWithCostSerializer,
|
|
1317
|
+
ResultResourceFunctionCallsWithCostSerializer,
|
|
1318
|
+
ResultResourceFunctionEgressTrafficWithCostSerializer,
|
|
1319
|
+
ResultResourceImagesWithCostSerializer,
|
|
1320
|
+
ResultResourceInferenceWithCostSerializer,
|
|
1321
|
+
ResultResourceInstanceWithCostSerializer,
|
|
1322
|
+
ResultResourceLoadBalancerWithCostSerializer,
|
|
1323
|
+
ResultResourceLogIndexWithCostSerializer,
|
|
1324
|
+
ResultResourceSnapshotWithCostSerializer,
|
|
1325
|
+
ResultResourceVolumeWithCostSerializer,
|
|
1326
|
+
ResultResourceDbaasPostgreSQLPoolerWithCostSerializer,
|
|
1327
|
+
ResultResourceDbaasPostgreSQLMemoryWithCostSerializer,
|
|
1328
|
+
ResultResourceDbaasPostgreSQLPublicNetworkWithCostSerializer,
|
|
1329
|
+
ResultResourceDbaasPostgreSqlcpuWithCostSerializer,
|
|
1330
|
+
ResultResourceDbaasPostgreSQLVolumeWithCostSerializer,
|
|
1331
|
+
],
|
|
1332
|
+
PropertyInfo(discriminator="type"),
|
|
1333
|
+
]
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
class CostReportDetailed(BaseModel):
|
|
1337
|
+
count: int
|
|
1338
|
+
"""Count of all the resources"""
|
|
1339
|
+
|
|
1340
|
+
price_status: Literal["error", "hide", "show"]
|
|
1341
|
+
"""Price status for the UI, type: string"""
|
|
1342
|
+
|
|
1343
|
+
results: List[Result]
|