lightning-sdk 2025.8.8.post1__py3-none-any.whl → 2025.8.14__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.
Files changed (37) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/studio_api.py +26 -4
  3. lightning_sdk/lightning_cloud/openapi/__init__.py +7 -0
  4. lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +5 -1
  5. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +113 -0
  6. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +0 -97
  7. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +339 -0
  8. lightning_sdk/lightning_cloud/openapi/models/__init__.py +7 -0
  9. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +27 -1
  10. lightning_sdk/lightning_cloud/openapi/models/create.py +27 -1
  11. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  12. lightning_sdk/lightning_cloud/openapi/models/id_sleepconfig_body.py +175 -0
  13. lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +0 -1
  14. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_transfer_metadata.py +69 -17
  15. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_metrics.py +53 -1
  16. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
  17. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +1 -27
  18. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +27 -1
  19. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +29 -3
  20. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metrics_response.py +123 -0
  21. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_metrics_response.py +123 -0
  22. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_user_metrics_response.py +123 -0
  23. lightning_sdk/lightning_cloud/openapi/models/v1_lustre_data_connection.py +149 -0
  24. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +1 -27
  25. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_metrics.py +591 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_user_metrics.py +435 -0
  27. lightning_sdk/lightning_cloud/openapi/models/v1_pod_metrics.py +55 -3
  28. lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset.py +27 -1
  29. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +1 -27
  30. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +27 -53
  31. lightning_sdk/studio.py +9 -2
  32. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/METADATA +1 -1
  33. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/RECORD +37 -30
  34. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/LICENSE +0 -0
  35. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/WHEEL +0 -0
  36. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/entry_points.txt +0 -0
  37. {lightning_sdk-2025.8.8.post1.dist-info → lightning_sdk-2025.8.14.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,435 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1NamespaceUserMetrics(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'cpu_utilisation': 'float',
45
+ 'failed_pods': 'int',
46
+ 'gpu_utilisation': 'float',
47
+ 'num_cpus': 'float',
48
+ 'num_gpus': 'int',
49
+ 'pending_pods': 'int',
50
+ 'ram_used': 'float',
51
+ 'running_pods': 'int',
52
+ 'succeeded_pods': 'int',
53
+ 'timestamp': 'datetime',
54
+ 'total_pods': 'int',
55
+ 'unknown_pods': 'int',
56
+ 'vram_used': 'float'
57
+ }
58
+
59
+ attribute_map = {
60
+ 'cpu_utilisation': 'cpuUtilisation',
61
+ 'failed_pods': 'failedPods',
62
+ 'gpu_utilisation': 'gpuUtilisation',
63
+ 'num_cpus': 'numCpus',
64
+ 'num_gpus': 'numGpus',
65
+ 'pending_pods': 'pendingPods',
66
+ 'ram_used': 'ramUsed',
67
+ 'running_pods': 'runningPods',
68
+ 'succeeded_pods': 'succeededPods',
69
+ 'timestamp': 'timestamp',
70
+ 'total_pods': 'totalPods',
71
+ 'unknown_pods': 'unknownPods',
72
+ 'vram_used': 'vramUsed'
73
+ }
74
+
75
+ def __init__(self, cpu_utilisation: 'float' =None, failed_pods: 'int' =None, gpu_utilisation: 'float' =None, num_cpus: 'float' =None, num_gpus: 'int' =None, pending_pods: 'int' =None, ram_used: 'float' =None, running_pods: 'int' =None, succeeded_pods: 'int' =None, timestamp: 'datetime' =None, total_pods: 'int' =None, unknown_pods: 'int' =None, vram_used: 'float' =None): # noqa: E501
76
+ """V1NamespaceUserMetrics - a model defined in Swagger""" # noqa: E501
77
+ self._cpu_utilisation = None
78
+ self._failed_pods = None
79
+ self._gpu_utilisation = None
80
+ self._num_cpus = None
81
+ self._num_gpus = None
82
+ self._pending_pods = None
83
+ self._ram_used = None
84
+ self._running_pods = None
85
+ self._succeeded_pods = None
86
+ self._timestamp = None
87
+ self._total_pods = None
88
+ self._unknown_pods = None
89
+ self._vram_used = None
90
+ self.discriminator = None
91
+ if cpu_utilisation is not None:
92
+ self.cpu_utilisation = cpu_utilisation
93
+ if failed_pods is not None:
94
+ self.failed_pods = failed_pods
95
+ if gpu_utilisation is not None:
96
+ self.gpu_utilisation = gpu_utilisation
97
+ if num_cpus is not None:
98
+ self.num_cpus = num_cpus
99
+ if num_gpus is not None:
100
+ self.num_gpus = num_gpus
101
+ if pending_pods is not None:
102
+ self.pending_pods = pending_pods
103
+ if ram_used is not None:
104
+ self.ram_used = ram_used
105
+ if running_pods is not None:
106
+ self.running_pods = running_pods
107
+ if succeeded_pods is not None:
108
+ self.succeeded_pods = succeeded_pods
109
+ if timestamp is not None:
110
+ self.timestamp = timestamp
111
+ if total_pods is not None:
112
+ self.total_pods = total_pods
113
+ if unknown_pods is not None:
114
+ self.unknown_pods = unknown_pods
115
+ if vram_used is not None:
116
+ self.vram_used = vram_used
117
+
118
+ @property
119
+ def cpu_utilisation(self) -> 'float':
120
+ """Gets the cpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
121
+
122
+
123
+ :return: The cpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
124
+ :rtype: float
125
+ """
126
+ return self._cpu_utilisation
127
+
128
+ @cpu_utilisation.setter
129
+ def cpu_utilisation(self, cpu_utilisation: 'float'):
130
+ """Sets the cpu_utilisation of this V1NamespaceUserMetrics.
131
+
132
+
133
+ :param cpu_utilisation: The cpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
134
+ :type: float
135
+ """
136
+
137
+ self._cpu_utilisation = cpu_utilisation
138
+
139
+ @property
140
+ def failed_pods(self) -> 'int':
141
+ """Gets the failed_pods of this V1NamespaceUserMetrics. # noqa: E501
142
+
143
+
144
+ :return: The failed_pods of this V1NamespaceUserMetrics. # noqa: E501
145
+ :rtype: int
146
+ """
147
+ return self._failed_pods
148
+
149
+ @failed_pods.setter
150
+ def failed_pods(self, failed_pods: 'int'):
151
+ """Sets the failed_pods of this V1NamespaceUserMetrics.
152
+
153
+
154
+ :param failed_pods: The failed_pods of this V1NamespaceUserMetrics. # noqa: E501
155
+ :type: int
156
+ """
157
+
158
+ self._failed_pods = failed_pods
159
+
160
+ @property
161
+ def gpu_utilisation(self) -> 'float':
162
+ """Gets the gpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
163
+
164
+
165
+ :return: The gpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
166
+ :rtype: float
167
+ """
168
+ return self._gpu_utilisation
169
+
170
+ @gpu_utilisation.setter
171
+ def gpu_utilisation(self, gpu_utilisation: 'float'):
172
+ """Sets the gpu_utilisation of this V1NamespaceUserMetrics.
173
+
174
+
175
+ :param gpu_utilisation: The gpu_utilisation of this V1NamespaceUserMetrics. # noqa: E501
176
+ :type: float
177
+ """
178
+
179
+ self._gpu_utilisation = gpu_utilisation
180
+
181
+ @property
182
+ def num_cpus(self) -> 'float':
183
+ """Gets the num_cpus of this V1NamespaceUserMetrics. # noqa: E501
184
+
185
+
186
+ :return: The num_cpus of this V1NamespaceUserMetrics. # noqa: E501
187
+ :rtype: float
188
+ """
189
+ return self._num_cpus
190
+
191
+ @num_cpus.setter
192
+ def num_cpus(self, num_cpus: 'float'):
193
+ """Sets the num_cpus of this V1NamespaceUserMetrics.
194
+
195
+
196
+ :param num_cpus: The num_cpus of this V1NamespaceUserMetrics. # noqa: E501
197
+ :type: float
198
+ """
199
+
200
+ self._num_cpus = num_cpus
201
+
202
+ @property
203
+ def num_gpus(self) -> 'int':
204
+ """Gets the num_gpus of this V1NamespaceUserMetrics. # noqa: E501
205
+
206
+
207
+ :return: The num_gpus of this V1NamespaceUserMetrics. # noqa: E501
208
+ :rtype: int
209
+ """
210
+ return self._num_gpus
211
+
212
+ @num_gpus.setter
213
+ def num_gpus(self, num_gpus: 'int'):
214
+ """Sets the num_gpus of this V1NamespaceUserMetrics.
215
+
216
+
217
+ :param num_gpus: The num_gpus of this V1NamespaceUserMetrics. # noqa: E501
218
+ :type: int
219
+ """
220
+
221
+ self._num_gpus = num_gpus
222
+
223
+ @property
224
+ def pending_pods(self) -> 'int':
225
+ """Gets the pending_pods of this V1NamespaceUserMetrics. # noqa: E501
226
+
227
+
228
+ :return: The pending_pods of this V1NamespaceUserMetrics. # noqa: E501
229
+ :rtype: int
230
+ """
231
+ return self._pending_pods
232
+
233
+ @pending_pods.setter
234
+ def pending_pods(self, pending_pods: 'int'):
235
+ """Sets the pending_pods of this V1NamespaceUserMetrics.
236
+
237
+
238
+ :param pending_pods: The pending_pods of this V1NamespaceUserMetrics. # noqa: E501
239
+ :type: int
240
+ """
241
+
242
+ self._pending_pods = pending_pods
243
+
244
+ @property
245
+ def ram_used(self) -> 'float':
246
+ """Gets the ram_used of this V1NamespaceUserMetrics. # noqa: E501
247
+
248
+
249
+ :return: The ram_used of this V1NamespaceUserMetrics. # noqa: E501
250
+ :rtype: float
251
+ """
252
+ return self._ram_used
253
+
254
+ @ram_used.setter
255
+ def ram_used(self, ram_used: 'float'):
256
+ """Sets the ram_used of this V1NamespaceUserMetrics.
257
+
258
+
259
+ :param ram_used: The ram_used of this V1NamespaceUserMetrics. # noqa: E501
260
+ :type: float
261
+ """
262
+
263
+ self._ram_used = ram_used
264
+
265
+ @property
266
+ def running_pods(self) -> 'int':
267
+ """Gets the running_pods of this V1NamespaceUserMetrics. # noqa: E501
268
+
269
+
270
+ :return: The running_pods of this V1NamespaceUserMetrics. # noqa: E501
271
+ :rtype: int
272
+ """
273
+ return self._running_pods
274
+
275
+ @running_pods.setter
276
+ def running_pods(self, running_pods: 'int'):
277
+ """Sets the running_pods of this V1NamespaceUserMetrics.
278
+
279
+
280
+ :param running_pods: The running_pods of this V1NamespaceUserMetrics. # noqa: E501
281
+ :type: int
282
+ """
283
+
284
+ self._running_pods = running_pods
285
+
286
+ @property
287
+ def succeeded_pods(self) -> 'int':
288
+ """Gets the succeeded_pods of this V1NamespaceUserMetrics. # noqa: E501
289
+
290
+
291
+ :return: The succeeded_pods of this V1NamespaceUserMetrics. # noqa: E501
292
+ :rtype: int
293
+ """
294
+ return self._succeeded_pods
295
+
296
+ @succeeded_pods.setter
297
+ def succeeded_pods(self, succeeded_pods: 'int'):
298
+ """Sets the succeeded_pods of this V1NamespaceUserMetrics.
299
+
300
+
301
+ :param succeeded_pods: The succeeded_pods of this V1NamespaceUserMetrics. # noqa: E501
302
+ :type: int
303
+ """
304
+
305
+ self._succeeded_pods = succeeded_pods
306
+
307
+ @property
308
+ def timestamp(self) -> 'datetime':
309
+ """Gets the timestamp of this V1NamespaceUserMetrics. # noqa: E501
310
+
311
+
312
+ :return: The timestamp of this V1NamespaceUserMetrics. # noqa: E501
313
+ :rtype: datetime
314
+ """
315
+ return self._timestamp
316
+
317
+ @timestamp.setter
318
+ def timestamp(self, timestamp: 'datetime'):
319
+ """Sets the timestamp of this V1NamespaceUserMetrics.
320
+
321
+
322
+ :param timestamp: The timestamp of this V1NamespaceUserMetrics. # noqa: E501
323
+ :type: datetime
324
+ """
325
+
326
+ self._timestamp = timestamp
327
+
328
+ @property
329
+ def total_pods(self) -> 'int':
330
+ """Gets the total_pods of this V1NamespaceUserMetrics. # noqa: E501
331
+
332
+
333
+ :return: The total_pods of this V1NamespaceUserMetrics. # noqa: E501
334
+ :rtype: int
335
+ """
336
+ return self._total_pods
337
+
338
+ @total_pods.setter
339
+ def total_pods(self, total_pods: 'int'):
340
+ """Sets the total_pods of this V1NamespaceUserMetrics.
341
+
342
+
343
+ :param total_pods: The total_pods of this V1NamespaceUserMetrics. # noqa: E501
344
+ :type: int
345
+ """
346
+
347
+ self._total_pods = total_pods
348
+
349
+ @property
350
+ def unknown_pods(self) -> 'int':
351
+ """Gets the unknown_pods of this V1NamespaceUserMetrics. # noqa: E501
352
+
353
+
354
+ :return: The unknown_pods of this V1NamespaceUserMetrics. # noqa: E501
355
+ :rtype: int
356
+ """
357
+ return self._unknown_pods
358
+
359
+ @unknown_pods.setter
360
+ def unknown_pods(self, unknown_pods: 'int'):
361
+ """Sets the unknown_pods of this V1NamespaceUserMetrics.
362
+
363
+
364
+ :param unknown_pods: The unknown_pods of this V1NamespaceUserMetrics. # noqa: E501
365
+ :type: int
366
+ """
367
+
368
+ self._unknown_pods = unknown_pods
369
+
370
+ @property
371
+ def vram_used(self) -> 'float':
372
+ """Gets the vram_used of this V1NamespaceUserMetrics. # noqa: E501
373
+
374
+
375
+ :return: The vram_used of this V1NamespaceUserMetrics. # noqa: E501
376
+ :rtype: float
377
+ """
378
+ return self._vram_used
379
+
380
+ @vram_used.setter
381
+ def vram_used(self, vram_used: 'float'):
382
+ """Sets the vram_used of this V1NamespaceUserMetrics.
383
+
384
+
385
+ :param vram_used: The vram_used of this V1NamespaceUserMetrics. # noqa: E501
386
+ :type: float
387
+ """
388
+
389
+ self._vram_used = vram_used
390
+
391
+ def to_dict(self) -> dict:
392
+ """Returns the model properties as a dict"""
393
+ result = {}
394
+
395
+ for attr, _ in six.iteritems(self.swagger_types):
396
+ value = getattr(self, attr)
397
+ if isinstance(value, list):
398
+ result[attr] = list(map(
399
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
400
+ value
401
+ ))
402
+ elif hasattr(value, "to_dict"):
403
+ result[attr] = value.to_dict()
404
+ elif isinstance(value, dict):
405
+ result[attr] = dict(map(
406
+ lambda item: (item[0], item[1].to_dict())
407
+ if hasattr(item[1], "to_dict") else item,
408
+ value.items()
409
+ ))
410
+ else:
411
+ result[attr] = value
412
+ if issubclass(V1NamespaceUserMetrics, dict):
413
+ for key, value in self.items():
414
+ result[key] = value
415
+
416
+ return result
417
+
418
+ def to_str(self) -> str:
419
+ """Returns the string representation of the model"""
420
+ return pprint.pformat(self.to_dict())
421
+
422
+ def __repr__(self) -> str:
423
+ """For `print` and `pprint`"""
424
+ return self.to_str()
425
+
426
+ def __eq__(self, other: 'V1NamespaceUserMetrics') -> bool:
427
+ """Returns true if both objects are equal"""
428
+ if not isinstance(other, V1NamespaceUserMetrics):
429
+ return False
430
+
431
+ return self.__dict__ == other.__dict__
432
+
433
+ def __ne__(self, other: 'V1NamespaceUserMetrics') -> bool:
434
+ """Returns true if both objects are not equal"""
435
+ return not self == other
@@ -51,9 +51,11 @@ class V1PodMetrics(object):
51
51
  'num_gpus': 'float',
52
52
  'per_gpu_mem_used': 'dict(str, float)',
53
53
  'per_gpu_util': 'dict(str, float)',
54
+ 'phase': 'str',
54
55
  'pod_id': 'str',
55
56
  'pod_name': 'str',
56
- 'timestamp': 'datetime'
57
+ 'timestamp': 'datetime',
58
+ 'user_id': 'str'
57
59
  }
58
60
 
59
61
  attribute_map = {
@@ -67,12 +69,14 @@ class V1PodMetrics(object):
67
69
  'num_gpus': 'numGpus',
68
70
  'per_gpu_mem_used': 'perGpuMemUsed',
69
71
  'per_gpu_util': 'perGpuUtil',
72
+ 'phase': 'phase',
70
73
  'pod_id': 'podId',
71
74
  'pod_name': 'podName',
72
- 'timestamp': 'timestamp'
75
+ 'timestamp': 'timestamp',
76
+ 'user_id': 'userId'
73
77
  }
74
78
 
75
- def __init__(self, cpu_usage: 'float' =None, labels: 'dict(str, str)' =None, mem_usage: 'float' =None, namespace: 'str' =None, node_name: 'str' =None, num_cpus_limit: 'float' =None, num_cpus_request: 'float' =None, num_gpus: 'float' =None, per_gpu_mem_used: 'dict(str, float)' =None, per_gpu_util: 'dict(str, float)' =None, pod_id: 'str' =None, pod_name: 'str' =None, timestamp: 'datetime' =None): # noqa: E501
79
+ def __init__(self, cpu_usage: 'float' =None, labels: 'dict(str, str)' =None, mem_usage: 'float' =None, namespace: 'str' =None, node_name: 'str' =None, num_cpus_limit: 'float' =None, num_cpus_request: 'float' =None, num_gpus: 'float' =None, per_gpu_mem_used: 'dict(str, float)' =None, per_gpu_util: 'dict(str, float)' =None, phase: 'str' =None, pod_id: 'str' =None, pod_name: 'str' =None, timestamp: 'datetime' =None, user_id: 'str' =None): # noqa: E501
76
80
  """V1PodMetrics - a model defined in Swagger""" # noqa: E501
77
81
  self._cpu_usage = None
78
82
  self._labels = None
@@ -84,9 +88,11 @@ class V1PodMetrics(object):
84
88
  self._num_gpus = None
85
89
  self._per_gpu_mem_used = None
86
90
  self._per_gpu_util = None
91
+ self._phase = None
87
92
  self._pod_id = None
88
93
  self._pod_name = None
89
94
  self._timestamp = None
95
+ self._user_id = None
90
96
  self.discriminator = None
91
97
  if cpu_usage is not None:
92
98
  self.cpu_usage = cpu_usage
@@ -108,12 +114,16 @@ class V1PodMetrics(object):
108
114
  self.per_gpu_mem_used = per_gpu_mem_used
109
115
  if per_gpu_util is not None:
110
116
  self.per_gpu_util = per_gpu_util
117
+ if phase is not None:
118
+ self.phase = phase
111
119
  if pod_id is not None:
112
120
  self.pod_id = pod_id
113
121
  if pod_name is not None:
114
122
  self.pod_name = pod_name
115
123
  if timestamp is not None:
116
124
  self.timestamp = timestamp
125
+ if user_id is not None:
126
+ self.user_id = user_id
117
127
 
118
128
  @property
119
129
  def cpu_usage(self) -> 'float':
@@ -325,6 +335,27 @@ class V1PodMetrics(object):
325
335
 
326
336
  self._per_gpu_util = per_gpu_util
327
337
 
338
+ @property
339
+ def phase(self) -> 'str':
340
+ """Gets the phase of this V1PodMetrics. # noqa: E501
341
+
342
+
343
+ :return: The phase of this V1PodMetrics. # noqa: E501
344
+ :rtype: str
345
+ """
346
+ return self._phase
347
+
348
+ @phase.setter
349
+ def phase(self, phase: 'str'):
350
+ """Sets the phase of this V1PodMetrics.
351
+
352
+
353
+ :param phase: The phase of this V1PodMetrics. # noqa: E501
354
+ :type: str
355
+ """
356
+
357
+ self._phase = phase
358
+
328
359
  @property
329
360
  def pod_id(self) -> 'str':
330
361
  """Gets the pod_id of this V1PodMetrics. # noqa: E501
@@ -388,6 +419,27 @@ class V1PodMetrics(object):
388
419
 
389
420
  self._timestamp = timestamp
390
421
 
422
+ @property
423
+ def user_id(self) -> 'str':
424
+ """Gets the user_id of this V1PodMetrics. # noqa: E501
425
+
426
+
427
+ :return: The user_id of this V1PodMetrics. # noqa: E501
428
+ :rtype: str
429
+ """
430
+ return self._user_id
431
+
432
+ @user_id.setter
433
+ def user_id(self, user_id: 'str'):
434
+ """Sets the user_id of this V1PodMetrics.
435
+
436
+
437
+ :param user_id: The user_id of this V1PodMetrics. # noqa: E501
438
+ :type: str
439
+ """
440
+
441
+ self._user_id = user_id
442
+
391
443
  def to_dict(self) -> dict:
392
444
  """Returns the model properties as a dict"""
393
445
  result = {}
@@ -46,6 +46,7 @@ class V1StorageAsset(object):
46
46
  'id': 'str',
47
47
  'name': 'str',
48
48
  'storage_bytes': 'str',
49
+ 'storage_cost_daily': 'float',
49
50
  'sub_type': 'str',
50
51
  'type': 'V1StorageAssetType'
51
52
  }
@@ -56,17 +57,19 @@ class V1StorageAsset(object):
56
57
  'id': 'id',
57
58
  'name': 'name',
58
59
  'storage_bytes': 'storageBytes',
60
+ 'storage_cost_daily': 'storageCostDaily',
59
61
  'sub_type': 'subType',
60
62
  'type': 'type'
61
63
  }
62
64
 
63
- def __init__(self, created_at: 'datetime' =None, created_by: 'str' =None, id: 'str' =None, name: 'str' =None, storage_bytes: 'str' =None, sub_type: 'str' =None, type: 'V1StorageAssetType' =None): # noqa: E501
65
+ def __init__(self, created_at: 'datetime' =None, created_by: 'str' =None, id: 'str' =None, name: 'str' =None, storage_bytes: 'str' =None, storage_cost_daily: 'float' =None, sub_type: 'str' =None, type: 'V1StorageAssetType' =None): # noqa: E501
64
66
  """V1StorageAsset - a model defined in Swagger""" # noqa: E501
65
67
  self._created_at = None
66
68
  self._created_by = None
67
69
  self._id = None
68
70
  self._name = None
69
71
  self._storage_bytes = None
72
+ self._storage_cost_daily = None
70
73
  self._sub_type = None
71
74
  self._type = None
72
75
  self.discriminator = None
@@ -80,6 +83,8 @@ class V1StorageAsset(object):
80
83
  self.name = name
81
84
  if storage_bytes is not None:
82
85
  self.storage_bytes = storage_bytes
86
+ if storage_cost_daily is not None:
87
+ self.storage_cost_daily = storage_cost_daily
83
88
  if sub_type is not None:
84
89
  self.sub_type = sub_type
85
90
  if type is not None:
@@ -190,6 +195,27 @@ class V1StorageAsset(object):
190
195
 
191
196
  self._storage_bytes = storage_bytes
192
197
 
198
+ @property
199
+ def storage_cost_daily(self) -> 'float':
200
+ """Gets the storage_cost_daily of this V1StorageAsset. # noqa: E501
201
+
202
+
203
+ :return: The storage_cost_daily of this V1StorageAsset. # noqa: E501
204
+ :rtype: float
205
+ """
206
+ return self._storage_cost_daily
207
+
208
+ @storage_cost_daily.setter
209
+ def storage_cost_daily(self, storage_cost_daily: 'float'):
210
+ """Sets the storage_cost_daily of this V1StorageAsset.
211
+
212
+
213
+ :param storage_cost_daily: The storage_cost_daily of this V1StorageAsset. # noqa: E501
214
+ :type: float
215
+ """
216
+
217
+ self._storage_cost_daily = storage_cost_daily
218
+
193
219
  @property
194
220
  def sub_type(self) -> 'str':
195
221
  """Gets the sub_type of this V1StorageAsset. # noqa: E501
@@ -48,7 +48,6 @@ class V1UpdateUserRequest(object):
48
48
  'complete_sign_up': 'bool',
49
49
  'completed_project_onboarding': 'bool',
50
50
  'country': 'str',
51
- 'discounted_pro_plan': 'bool',
52
51
  'email': 'str',
53
52
  'experimentation_id': 'str',
54
53
  'first_name': 'str',
@@ -78,7 +77,6 @@ class V1UpdateUserRequest(object):
78
77
  'complete_sign_up': 'completeSignUp',
79
78
  'completed_project_onboarding': 'completedProjectOnboarding',
80
79
  'country': 'country',
81
- 'discounted_pro_plan': 'discountedProPlan',
82
80
  'email': 'email',
83
81
  'experimentation_id': 'experimentationId',
84
82
  'first_name': 'firstName',
@@ -100,7 +98,7 @@ class V1UpdateUserRequest(object):
100
98
  'website': 'website'
101
99
  }
102
100
 
103
- def __init__(self, agree_to_terms_and_conditions: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, complete_sign_up: 'bool' =None, completed_project_onboarding: 'bool' =None, country: 'str' =None, discounted_pro_plan: 'bool' =None, email: 'str' =None, experimentation_id: 'str' =None, first_name: 'str' =None, general_audience_mode: 'bool' =None, last_name: 'str' =None, non_developer_mode: 'bool' =None, opted_in_marketing_emails: 'bool' =None, organization: 'str' =None, preferred_color_scheme: 'str' =None, preferred_ide: 'str' =None, preferred_shell: 'str' =None, preferred_vscode_marketplace: 'str' =None, role: 'str' =None, saw_create_first_project_dialog: 'bool' =None, saw_forums_login_merge_dialog: 'bool' =None, saw_free_credits_notification: 'bool' =None, user_metadata: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
101
+ def __init__(self, agree_to_terms_and_conditions: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, complete_sign_up: 'bool' =None, completed_project_onboarding: 'bool' =None, country: 'str' =None, email: 'str' =None, experimentation_id: 'str' =None, first_name: 'str' =None, general_audience_mode: 'bool' =None, last_name: 'str' =None, non_developer_mode: 'bool' =None, opted_in_marketing_emails: 'bool' =None, organization: 'str' =None, preferred_color_scheme: 'str' =None, preferred_ide: 'str' =None, preferred_shell: 'str' =None, preferred_vscode_marketplace: 'str' =None, role: 'str' =None, saw_create_first_project_dialog: 'bool' =None, saw_forums_login_merge_dialog: 'bool' =None, saw_free_credits_notification: 'bool' =None, user_metadata: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
104
102
  """V1UpdateUserRequest - a model defined in Swagger""" # noqa: E501
105
103
  self._agree_to_terms_and_conditions = None
106
104
  self._allow_credits_auto_replenish = None
@@ -109,7 +107,6 @@ class V1UpdateUserRequest(object):
109
107
  self._complete_sign_up = None
110
108
  self._completed_project_onboarding = None
111
109
  self._country = None
112
- self._discounted_pro_plan = None
113
110
  self._email = None
114
111
  self._experimentation_id = None
115
112
  self._first_name = None
@@ -144,8 +141,6 @@ class V1UpdateUserRequest(object):
144
141
  self.completed_project_onboarding = completed_project_onboarding
145
142
  if country is not None:
146
143
  self.country = country
147
- if discounted_pro_plan is not None:
148
- self.discounted_pro_plan = discounted_pro_plan
149
144
  if email is not None:
150
145
  self.email = email
151
146
  if experimentation_id is not None:
@@ -332,27 +327,6 @@ class V1UpdateUserRequest(object):
332
327
 
333
328
  self._country = country
334
329
 
335
- @property
336
- def discounted_pro_plan(self) -> 'bool':
337
- """Gets the discounted_pro_plan of this V1UpdateUserRequest. # noqa: E501
338
-
339
-
340
- :return: The discounted_pro_plan of this V1UpdateUserRequest. # noqa: E501
341
- :rtype: bool
342
- """
343
- return self._discounted_pro_plan
344
-
345
- @discounted_pro_plan.setter
346
- def discounted_pro_plan(self, discounted_pro_plan: 'bool'):
347
- """Sets the discounted_pro_plan of this V1UpdateUserRequest.
348
-
349
-
350
- :param discounted_pro_plan: The discounted_pro_plan of this V1UpdateUserRequest. # noqa: E501
351
- :type: bool
352
- """
353
-
354
- self._discounted_pro_plan = discounted_pro_plan
355
-
356
330
  @property
357
331
  def email(self) -> 'str':
358
332
  """Gets the email of this V1UpdateUserRequest. # noqa: E501