lightning-sdk 2025.7.17__py3-none-any.whl → 2025.7.30rc0__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 (99) hide show
  1. lightning_sdk/__init__.py +3 -2
  2. lightning_sdk/api/cloud_account_api.py +204 -0
  3. lightning_sdk/api/deployment_api.py +11 -0
  4. lightning_sdk/api/job_api.py +82 -10
  5. lightning_sdk/api/llm_api.py +1 -1
  6. lightning_sdk/api/mmt_api.py +44 -5
  7. lightning_sdk/api/pipeline_api.py +4 -3
  8. lightning_sdk/api/studio_api.py +51 -8
  9. lightning_sdk/api/utils.py +6 -2
  10. lightning_sdk/cli/clusters_menu.py +3 -3
  11. lightning_sdk/cli/create.py +25 -11
  12. lightning_sdk/cli/deploy/_auth.py +19 -3
  13. lightning_sdk/cli/deploy/serve.py +21 -5
  14. lightning_sdk/cli/download.py +25 -1
  15. lightning_sdk/cli/entrypoint.py +4 -2
  16. lightning_sdk/cli/list.py +5 -1
  17. lightning_sdk/cli/run.py +3 -1
  18. lightning_sdk/cli/start.py +40 -8
  19. lightning_sdk/cli/switch.py +3 -1
  20. lightning_sdk/deployment/deployment.py +8 -0
  21. lightning_sdk/job/base.py +27 -3
  22. lightning_sdk/job/job.py +28 -4
  23. lightning_sdk/job/v1.py +10 -1
  24. lightning_sdk/job/v2.py +22 -2
  25. lightning_sdk/job/work.py +5 -1
  26. lightning_sdk/lightning_cloud/openapi/__init__.py +14 -1
  27. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +428 -0
  28. lightning_sdk/lightning_cloud/openapi/api/billing_service_api.py +153 -48
  29. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +295 -0
  30. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +93 -0
  31. lightning_sdk/lightning_cloud/openapi/models/__init__.py +14 -1
  32. lightning_sdk/lightning_cloud/openapi/models/agentmanagedendpoints_id_body.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/blogposts_id_body.py +53 -1
  34. lightning_sdk/lightning_cloud/openapi/models/conversations_id_body1.py +123 -0
  35. lightning_sdk/lightning_cloud/openapi/models/messages_id_body.py +123 -0
  36. lightning_sdk/lightning_cloud/openapi/models/metricsstream_id_body.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/project_id_schedules_body.py +81 -3
  38. lightning_sdk/lightning_cloud/openapi/models/schedules_id_body.py +79 -1
  39. lightning_sdk/lightning_cloud/openapi/models/user_id_upgradetrigger_body.py +201 -0
  40. lightning_sdk/lightning_cloud/openapi/models/user_user_id_body.py +201 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_billing_subscription.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_blog_post.py +53 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_cloudy_settings.py +227 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_conversation.py +27 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_create_billing_upgrade_trigger_record_response.py +97 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_create_blog_post_request.py +53 -1
  49. lightning_sdk/lightning_cloud/openapi/models/v1_create_checkout_session_request.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_create_subscription_checkout_session_request.py +55 -3
  51. lightning_sdk/lightning_cloud/openapi/models/v1_function_call.py +149 -0
  52. lightning_sdk/lightning_cloud/openapi/models/{v1_get_clickhouse_assistant_session_daily_aggregated_response.py → v1_get_assistant_session_daily_aggregated_response.py} +22 -22
  53. lightning_sdk/lightning_cloud/openapi/models/v1_get_cluster_health_response.py +149 -0
  54. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +105 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_like_status.py +104 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_list_published_managed_endpoints_response.py +123 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_managed_endpoint.py +27 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +95 -17
  61. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_quote_subscription_response.py +27 -1
  63. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +27 -1
  64. lightning_sdk/lightning_cloud/openapi/models/v1_response_choice.py +29 -3
  65. lightning_sdk/lightning_cloud/openapi/models/v1_schedule.py +79 -1
  66. lightning_sdk/lightning_cloud/openapi/models/v1_service_health.py +27 -1
  67. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1.py +79 -1
  68. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1_status.py +79 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_tool_call.py +175 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_like_response.py +149 -0
  71. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_message_like_response.py +149 -0
  72. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -313
  73. lightning_sdk/lightning_cloud/openapi/models/v1_volume_state.py +1 -0
  74. lightning_sdk/llm/llm.py +69 -11
  75. lightning_sdk/llm/public_assistants.json +32 -8
  76. lightning_sdk/machine.py +151 -43
  77. lightning_sdk/mmt/base.py +20 -2
  78. lightning_sdk/mmt/mmt.py +25 -3
  79. lightning_sdk/mmt/v1.py +7 -1
  80. lightning_sdk/mmt/v2.py +27 -3
  81. lightning_sdk/models.py +1 -1
  82. lightning_sdk/organization.py +4 -0
  83. lightning_sdk/pipeline/pipeline.py +16 -5
  84. lightning_sdk/pipeline/printer.py +5 -3
  85. lightning_sdk/pipeline/schedule.py +844 -1
  86. lightning_sdk/pipeline/steps.py +19 -4
  87. lightning_sdk/sandbox.py +4 -1
  88. lightning_sdk/serve.py +2 -0
  89. lightning_sdk/studio.py +91 -44
  90. lightning_sdk/teamspace.py +19 -10
  91. lightning_sdk/utils/resolve.py +37 -2
  92. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/METADATA +7 -5
  93. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/RECORD +98 -85
  94. lightning_sdk/api/cluster_api.py +0 -119
  95. /lightning_sdk/cli/{inspect.py → inspection.py} +0 -0
  96. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/LICENSE +0 -0
  97. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/WHEEL +0 -0
  98. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/entry_points.txt +0 -0
  99. {lightning_sdk-2025.7.17.dist-info → lightning_sdk-2025.7.30rc0.dist-info}/top_level.txt +0 -0
@@ -140,6 +140,111 @@ class BillingServiceApi(object):
140
140
  _request_timeout=params.get('_request_timeout'),
141
141
  collection_formats=collection_formats)
142
142
 
143
+ def billing_service_create_billing_upgrade_trigger_record(self, body: 'UserIdUpgradetriggerBody', user_id: 'str', **kwargs) -> 'V1CreateBillingUpgradeTriggerRecordResponse': # noqa: E501
144
+ """billing_service_create_billing_upgrade_trigger_record # noqa: E501
145
+
146
+ This method makes a synchronous HTTP request by default. To make an
147
+ asynchronous HTTP request, please pass async_req=True
148
+ >>> thread = api.billing_service_create_billing_upgrade_trigger_record(body, user_id, async_req=True)
149
+ >>> result = thread.get()
150
+
151
+ :param async_req bool
152
+ :param UserIdUpgradetriggerBody body: (required)
153
+ :param str user_id: (required)
154
+ :return: V1CreateBillingUpgradeTriggerRecordResponse
155
+ If the method is called asynchronously,
156
+ returns the request thread.
157
+ """
158
+ kwargs['_return_http_data_only'] = True
159
+ if kwargs.get('async_req'):
160
+ return self.billing_service_create_billing_upgrade_trigger_record_with_http_info(body, user_id, **kwargs) # noqa: E501
161
+ else:
162
+ (data) = self.billing_service_create_billing_upgrade_trigger_record_with_http_info(body, user_id, **kwargs) # noqa: E501
163
+ return data
164
+
165
+ def billing_service_create_billing_upgrade_trigger_record_with_http_info(self, body: 'UserIdUpgradetriggerBody', user_id: 'str', **kwargs) -> 'V1CreateBillingUpgradeTriggerRecordResponse': # noqa: E501
166
+ """billing_service_create_billing_upgrade_trigger_record # noqa: E501
167
+
168
+ This method makes a synchronous HTTP request by default. To make an
169
+ asynchronous HTTP request, please pass async_req=True
170
+ >>> thread = api.billing_service_create_billing_upgrade_trigger_record_with_http_info(body, user_id, async_req=True)
171
+ >>> result = thread.get()
172
+
173
+ :param async_req bool
174
+ :param UserIdUpgradetriggerBody body: (required)
175
+ :param str user_id: (required)
176
+ :return: V1CreateBillingUpgradeTriggerRecordResponse
177
+ If the method is called asynchronously,
178
+ returns the request thread.
179
+ """
180
+
181
+ all_params = ['body', 'user_id'] # noqa: E501
182
+ all_params.append('async_req')
183
+ all_params.append('_return_http_data_only')
184
+ all_params.append('_preload_content')
185
+ all_params.append('_request_timeout')
186
+
187
+ params = locals()
188
+ for key, val in six.iteritems(params['kwargs']):
189
+ if key not in all_params:
190
+ raise TypeError(
191
+ "Got an unexpected keyword argument '%s'"
192
+ " to method billing_service_create_billing_upgrade_trigger_record" % key
193
+ )
194
+ params[key] = val
195
+ del params['kwargs']
196
+ # verify the required parameter 'body' is set
197
+ if ('body' not in params or
198
+ params['body'] is None):
199
+ raise ValueError("Missing the required parameter `body` when calling `billing_service_create_billing_upgrade_trigger_record`") # noqa: E501
200
+ # verify the required parameter 'user_id' is set
201
+ if ('user_id' not in params or
202
+ params['user_id'] is None):
203
+ raise ValueError("Missing the required parameter `user_id` when calling `billing_service_create_billing_upgrade_trigger_record`") # noqa: E501
204
+
205
+ collection_formats = {}
206
+
207
+ path_params = {}
208
+ if 'user_id' in params:
209
+ path_params['userId'] = params['user_id'] # noqa: E501
210
+
211
+ query_params = []
212
+
213
+ header_params = {}
214
+
215
+ form_params = []
216
+ local_var_files = {}
217
+
218
+ body_params = None
219
+ if 'body' in params:
220
+ body_params = params['body']
221
+ # HTTP header `Accept`
222
+ header_params['Accept'] = self.api_client.select_header_accept(
223
+ ['application/json']) # noqa: E501
224
+
225
+ # HTTP header `Content-Type`
226
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
227
+ ['application/json']) # noqa: E501
228
+
229
+ # Authentication setting
230
+ auth_settings = [] # noqa: E501
231
+
232
+ return self.api_client.call_api(
233
+ '/v1/billing/{userId}/upgrade-trigger', 'POST',
234
+ path_params,
235
+ query_params,
236
+ header_params,
237
+ body=body_params,
238
+ post_params=form_params,
239
+ files=local_var_files,
240
+ response_type='V1CreateBillingUpgradeTriggerRecordResponse', # noqa: E501
241
+ auth_settings=auth_settings,
242
+ async_req=params.get('async_req'),
243
+ _return_http_data_only=params.get('_return_http_data_only'),
244
+ _preload_content=params.get('_preload_content', True),
245
+ _request_timeout=params.get('_request_timeout'),
246
+ collection_formats=collection_formats)
247
+
143
248
  def billing_service_create_checkout_session(self, body: 'V1CreateCheckoutSessionRequest', **kwargs) -> 'V1CreateCheckoutSessionResponse': # noqa: E501
144
249
  """billing_service_create_checkout_session # noqa: E501
145
250
 
@@ -439,43 +544,53 @@ class BillingServiceApi(object):
439
544
  _request_timeout=params.get('_request_timeout'),
440
545
  collection_formats=collection_formats)
441
546
 
442
- def billing_service_get_billing_subscription(self, **kwargs) -> 'V1BillingSubscription': # noqa: E501
443
- """Billing subscription endpoint that returns the organization's current subscription and its features # noqa: E501
547
+ def billing_service_get_assistant_session_daily_aggregated(self, **kwargs) -> 'V1GetAssistantSessionDailyAggregatedResponse': # noqa: E501
548
+ """Aggregated assistant session endpoint to get credits spending information. Provides credits consumption data by particular project according to filters given. # noqa: E501
444
549
 
445
550
  This method makes a synchronous HTTP request by default. To make an
446
551
  asynchronous HTTP request, please pass async_req=True
447
- >>> thread = api.billing_service_get_billing_subscription(async_req=True)
552
+ >>> thread = api.billing_service_get_assistant_session_daily_aggregated(async_req=True)
448
553
  >>> result = thread.get()
449
554
 
450
555
  :param async_req bool
556
+ :param str project_id:
557
+ :param datetime _from:
558
+ :param datetime to:
559
+ :param str user_id:
451
560
  :param str org_id:
452
- :return: V1BillingSubscription
561
+ :param bool details:
562
+ :return: V1GetAssistantSessionDailyAggregatedResponse
453
563
  If the method is called asynchronously,
454
564
  returns the request thread.
455
565
  """
456
566
  kwargs['_return_http_data_only'] = True
457
567
  if kwargs.get('async_req'):
458
- return self.billing_service_get_billing_subscription_with_http_info(**kwargs) # noqa: E501
568
+ return self.billing_service_get_assistant_session_daily_aggregated_with_http_info(**kwargs) # noqa: E501
459
569
  else:
460
- (data) = self.billing_service_get_billing_subscription_with_http_info(**kwargs) # noqa: E501
570
+ (data) = self.billing_service_get_assistant_session_daily_aggregated_with_http_info(**kwargs) # noqa: E501
461
571
  return data
462
572
 
463
- def billing_service_get_billing_subscription_with_http_info(self, **kwargs) -> 'V1BillingSubscription': # noqa: E501
464
- """Billing subscription endpoint that returns the organization's current subscription and its features # noqa: E501
573
+ def billing_service_get_assistant_session_daily_aggregated_with_http_info(self, **kwargs) -> 'V1GetAssistantSessionDailyAggregatedResponse': # noqa: E501
574
+ """Aggregated assistant session endpoint to get credits spending information. Provides credits consumption data by particular project according to filters given. # noqa: E501
465
575
 
466
576
  This method makes a synchronous HTTP request by default. To make an
467
577
  asynchronous HTTP request, please pass async_req=True
468
- >>> thread = api.billing_service_get_billing_subscription_with_http_info(async_req=True)
578
+ >>> thread = api.billing_service_get_assistant_session_daily_aggregated_with_http_info(async_req=True)
469
579
  >>> result = thread.get()
470
580
 
471
581
  :param async_req bool
582
+ :param str project_id:
583
+ :param datetime _from:
584
+ :param datetime to:
585
+ :param str user_id:
472
586
  :param str org_id:
473
- :return: V1BillingSubscription
587
+ :param bool details:
588
+ :return: V1GetAssistantSessionDailyAggregatedResponse
474
589
  If the method is called asynchronously,
475
590
  returns the request thread.
476
591
  """
477
592
 
478
- all_params = ['org_id'] # noqa: E501
593
+ all_params = ['project_id', '_from', 'to', 'user_id', 'org_id', 'details'] # noqa: E501
479
594
  all_params.append('async_req')
480
595
  all_params.append('_return_http_data_only')
481
596
  all_params.append('_preload_content')
@@ -486,7 +601,7 @@ class BillingServiceApi(object):
486
601
  if key not in all_params:
487
602
  raise TypeError(
488
603
  "Got an unexpected keyword argument '%s'"
489
- " to method billing_service_get_billing_subscription" % key
604
+ " to method billing_service_get_assistant_session_daily_aggregated" % key
490
605
  )
491
606
  params[key] = val
492
607
  del params['kwargs']
@@ -496,8 +611,18 @@ class BillingServiceApi(object):
496
611
  path_params = {}
497
612
 
498
613
  query_params = []
614
+ if 'project_id' in params:
615
+ query_params.append(('projectId', params['project_id'])) # noqa: E501
616
+ if '_from' in params:
617
+ query_params.append(('from', params['_from'])) # noqa: E501
618
+ if 'to' in params:
619
+ query_params.append(('to', params['to'])) # noqa: E501
620
+ if 'user_id' in params:
621
+ query_params.append(('userId', params['user_id'])) # noqa: E501
499
622
  if 'org_id' in params:
500
623
  query_params.append(('orgId', params['org_id'])) # noqa: E501
624
+ if 'details' in params:
625
+ query_params.append(('details', params['details'])) # noqa: E501
501
626
 
502
627
  header_params = {}
503
628
 
@@ -513,14 +638,14 @@ class BillingServiceApi(object):
513
638
  auth_settings = [] # noqa: E501
514
639
 
515
640
  return self.api_client.call_api(
516
- '/v1/billing/subscription', 'GET',
641
+ '/v1/billing/assistant-session', 'GET',
517
642
  path_params,
518
643
  query_params,
519
644
  header_params,
520
645
  body=body_params,
521
646
  post_params=form_params,
522
647
  files=local_var_files,
523
- response_type='V1BillingSubscription', # noqa: E501
648
+ response_type='V1GetAssistantSessionDailyAggregatedResponse', # noqa: E501
524
649
  auth_settings=auth_settings,
525
650
  async_req=params.get('async_req'),
526
651
  _return_http_data_only=params.get('_return_http_data_only'),
@@ -528,53 +653,43 @@ class BillingServiceApi(object):
528
653
  _request_timeout=params.get('_request_timeout'),
529
654
  collection_formats=collection_formats)
530
655
 
531
- def billing_service_get_clickhouse_assistant_session_daily_aggregated(self, **kwargs) -> 'V1GetClickhouseAssistantSessionDailyAggregatedResponse': # noqa: E501
532
- """Aggregated assistant session endpoint to get credits spending information. Provides credits consumption data by particular project according to filters given. # noqa: E501
656
+ def billing_service_get_billing_subscription(self, **kwargs) -> 'V1BillingSubscription': # noqa: E501
657
+ """Billing subscription endpoint that returns the organization's current subscription and its features # noqa: E501
533
658
 
534
659
  This method makes a synchronous HTTP request by default. To make an
535
660
  asynchronous HTTP request, please pass async_req=True
536
- >>> thread = api.billing_service_get_clickhouse_assistant_session_daily_aggregated(async_req=True)
661
+ >>> thread = api.billing_service_get_billing_subscription(async_req=True)
537
662
  >>> result = thread.get()
538
663
 
539
664
  :param async_req bool
540
- :param str project_id:
541
- :param datetime _from:
542
- :param datetime to:
543
- :param str user_id:
544
665
  :param str org_id:
545
- :param bool details:
546
- :return: V1GetClickhouseAssistantSessionDailyAggregatedResponse
666
+ :return: V1BillingSubscription
547
667
  If the method is called asynchronously,
548
668
  returns the request thread.
549
669
  """
550
670
  kwargs['_return_http_data_only'] = True
551
671
  if kwargs.get('async_req'):
552
- return self.billing_service_get_clickhouse_assistant_session_daily_aggregated_with_http_info(**kwargs) # noqa: E501
672
+ return self.billing_service_get_billing_subscription_with_http_info(**kwargs) # noqa: E501
553
673
  else:
554
- (data) = self.billing_service_get_clickhouse_assistant_session_daily_aggregated_with_http_info(**kwargs) # noqa: E501
674
+ (data) = self.billing_service_get_billing_subscription_with_http_info(**kwargs) # noqa: E501
555
675
  return data
556
676
 
557
- def billing_service_get_clickhouse_assistant_session_daily_aggregated_with_http_info(self, **kwargs) -> 'V1GetClickhouseAssistantSessionDailyAggregatedResponse': # noqa: E501
558
- """Aggregated assistant session endpoint to get credits spending information. Provides credits consumption data by particular project according to filters given. # noqa: E501
677
+ def billing_service_get_billing_subscription_with_http_info(self, **kwargs) -> 'V1BillingSubscription': # noqa: E501
678
+ """Billing subscription endpoint that returns the organization's current subscription and its features # noqa: E501
559
679
 
560
680
  This method makes a synchronous HTTP request by default. To make an
561
681
  asynchronous HTTP request, please pass async_req=True
562
- >>> thread = api.billing_service_get_clickhouse_assistant_session_daily_aggregated_with_http_info(async_req=True)
682
+ >>> thread = api.billing_service_get_billing_subscription_with_http_info(async_req=True)
563
683
  >>> result = thread.get()
564
684
 
565
685
  :param async_req bool
566
- :param str project_id:
567
- :param datetime _from:
568
- :param datetime to:
569
- :param str user_id:
570
686
  :param str org_id:
571
- :param bool details:
572
- :return: V1GetClickhouseAssistantSessionDailyAggregatedResponse
687
+ :return: V1BillingSubscription
573
688
  If the method is called asynchronously,
574
689
  returns the request thread.
575
690
  """
576
691
 
577
- all_params = ['project_id', '_from', 'to', 'user_id', 'org_id', 'details'] # noqa: E501
692
+ all_params = ['org_id'] # noqa: E501
578
693
  all_params.append('async_req')
579
694
  all_params.append('_return_http_data_only')
580
695
  all_params.append('_preload_content')
@@ -585,7 +700,7 @@ class BillingServiceApi(object):
585
700
  if key not in all_params:
586
701
  raise TypeError(
587
702
  "Got an unexpected keyword argument '%s'"
588
- " to method billing_service_get_clickhouse_assistant_session_daily_aggregated" % key
703
+ " to method billing_service_get_billing_subscription" % key
589
704
  )
590
705
  params[key] = val
591
706
  del params['kwargs']
@@ -595,18 +710,8 @@ class BillingServiceApi(object):
595
710
  path_params = {}
596
711
 
597
712
  query_params = []
598
- if 'project_id' in params:
599
- query_params.append(('projectId', params['project_id'])) # noqa: E501
600
- if '_from' in params:
601
- query_params.append(('from', params['_from'])) # noqa: E501
602
- if 'to' in params:
603
- query_params.append(('to', params['to'])) # noqa: E501
604
- if 'user_id' in params:
605
- query_params.append(('userId', params['user_id'])) # noqa: E501
606
713
  if 'org_id' in params:
607
714
  query_params.append(('orgId', params['org_id'])) # noqa: E501
608
- if 'details' in params:
609
- query_params.append(('details', params['details'])) # noqa: E501
610
715
 
611
716
  header_params = {}
612
717
 
@@ -622,14 +727,14 @@ class BillingServiceApi(object):
622
727
  auth_settings = [] # noqa: E501
623
728
 
624
729
  return self.api_client.call_api(
625
- '/v1/billing/clickhouse-assistant-session', 'GET',
730
+ '/v1/billing/subscription', 'GET',
626
731
  path_params,
627
732
  query_params,
628
733
  header_params,
629
734
  body=body_params,
630
735
  post_params=form_params,
631
736
  files=local_var_files,
632
- response_type='V1GetClickhouseAssistantSessionDailyAggregatedResponse', # noqa: E501
737
+ response_type='V1BillingSubscription', # noqa: E501
633
738
  auth_settings=auth_settings,
634
739
  async_req=params.get('async_req'),
635
740
  _return_http_data_only=params.get('_return_http_data_only'),
@@ -43,6 +43,196 @@ class CloudyServiceApi(object):
43
43
  api_client = ApiClient()
44
44
  self.api_client = api_client
45
45
 
46
+ def cloudy_service_create_user_cloudy_settings(self, body: 'V1CloudySettings', **kwargs) -> 'V1CloudySettings': # noqa: E501
47
+ """cloudy_service_create_user_cloudy_settings # noqa: E501
48
+
49
+ This method makes a synchronous HTTP request by default. To make an
50
+ asynchronous HTTP request, please pass async_req=True
51
+ >>> thread = api.cloudy_service_create_user_cloudy_settings(body, async_req=True)
52
+ >>> result = thread.get()
53
+
54
+ :param async_req bool
55
+ :param V1CloudySettings body: (required)
56
+ :return: V1CloudySettings
57
+ If the method is called asynchronously,
58
+ returns the request thread.
59
+ """
60
+ kwargs['_return_http_data_only'] = True
61
+ if kwargs.get('async_req'):
62
+ return self.cloudy_service_create_user_cloudy_settings_with_http_info(body, **kwargs) # noqa: E501
63
+ else:
64
+ (data) = self.cloudy_service_create_user_cloudy_settings_with_http_info(body, **kwargs) # noqa: E501
65
+ return data
66
+
67
+ def cloudy_service_create_user_cloudy_settings_with_http_info(self, body: 'V1CloudySettings', **kwargs) -> 'V1CloudySettings': # noqa: E501
68
+ """cloudy_service_create_user_cloudy_settings # noqa: E501
69
+
70
+ This method makes a synchronous HTTP request by default. To make an
71
+ asynchronous HTTP request, please pass async_req=True
72
+ >>> thread = api.cloudy_service_create_user_cloudy_settings_with_http_info(body, async_req=True)
73
+ >>> result = thread.get()
74
+
75
+ :param async_req bool
76
+ :param V1CloudySettings body: (required)
77
+ :return: V1CloudySettings
78
+ If the method is called asynchronously,
79
+ returns the request thread.
80
+ """
81
+
82
+ all_params = ['body'] # noqa: E501
83
+ all_params.append('async_req')
84
+ all_params.append('_return_http_data_only')
85
+ all_params.append('_preload_content')
86
+ all_params.append('_request_timeout')
87
+
88
+ params = locals()
89
+ for key, val in six.iteritems(params['kwargs']):
90
+ if key not in all_params:
91
+ raise TypeError(
92
+ "Got an unexpected keyword argument '%s'"
93
+ " to method cloudy_service_create_user_cloudy_settings" % key
94
+ )
95
+ params[key] = val
96
+ del params['kwargs']
97
+ # verify the required parameter 'body' is set
98
+ if ('body' not in params or
99
+ params['body'] is None):
100
+ raise ValueError("Missing the required parameter `body` when calling `cloudy_service_create_user_cloudy_settings`") # noqa: E501
101
+
102
+ collection_formats = {}
103
+
104
+ path_params = {}
105
+
106
+ query_params = []
107
+
108
+ header_params = {}
109
+
110
+ form_params = []
111
+ local_var_files = {}
112
+
113
+ body_params = None
114
+ if 'body' in params:
115
+ body_params = params['body']
116
+ # HTTP header `Accept`
117
+ header_params['Accept'] = self.api_client.select_header_accept(
118
+ ['application/json']) # noqa: E501
119
+
120
+ # HTTP header `Content-Type`
121
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
122
+ ['application/json']) # noqa: E501
123
+
124
+ # Authentication setting
125
+ auth_settings = [] # noqa: E501
126
+
127
+ return self.api_client.call_api(
128
+ '/v1/cloudy/settings/user', 'POST',
129
+ path_params,
130
+ query_params,
131
+ header_params,
132
+ body=body_params,
133
+ post_params=form_params,
134
+ files=local_var_files,
135
+ response_type='V1CloudySettings', # noqa: E501
136
+ auth_settings=auth_settings,
137
+ async_req=params.get('async_req'),
138
+ _return_http_data_only=params.get('_return_http_data_only'),
139
+ _preload_content=params.get('_preload_content', True),
140
+ _request_timeout=params.get('_request_timeout'),
141
+ collection_formats=collection_formats)
142
+
143
+ def cloudy_service_get_user_cloudy_settings(self, user_id: 'str', **kwargs) -> 'V1CloudySettings': # noqa: E501
144
+ """cloudy_service_get_user_cloudy_settings # noqa: E501
145
+
146
+ This method makes a synchronous HTTP request by default. To make an
147
+ asynchronous HTTP request, please pass async_req=True
148
+ >>> thread = api.cloudy_service_get_user_cloudy_settings(user_id, async_req=True)
149
+ >>> result = thread.get()
150
+
151
+ :param async_req bool
152
+ :param str user_id: (required)
153
+ :return: V1CloudySettings
154
+ If the method is called asynchronously,
155
+ returns the request thread.
156
+ """
157
+ kwargs['_return_http_data_only'] = True
158
+ if kwargs.get('async_req'):
159
+ return self.cloudy_service_get_user_cloudy_settings_with_http_info(user_id, **kwargs) # noqa: E501
160
+ else:
161
+ (data) = self.cloudy_service_get_user_cloudy_settings_with_http_info(user_id, **kwargs) # noqa: E501
162
+ return data
163
+
164
+ def cloudy_service_get_user_cloudy_settings_with_http_info(self, user_id: 'str', **kwargs) -> 'V1CloudySettings': # noqa: E501
165
+ """cloudy_service_get_user_cloudy_settings # noqa: E501
166
+
167
+ This method makes a synchronous HTTP request by default. To make an
168
+ asynchronous HTTP request, please pass async_req=True
169
+ >>> thread = api.cloudy_service_get_user_cloudy_settings_with_http_info(user_id, async_req=True)
170
+ >>> result = thread.get()
171
+
172
+ :param async_req bool
173
+ :param str user_id: (required)
174
+ :return: V1CloudySettings
175
+ If the method is called asynchronously,
176
+ returns the request thread.
177
+ """
178
+
179
+ all_params = ['user_id'] # noqa: E501
180
+ all_params.append('async_req')
181
+ all_params.append('_return_http_data_only')
182
+ all_params.append('_preload_content')
183
+ all_params.append('_request_timeout')
184
+
185
+ params = locals()
186
+ for key, val in six.iteritems(params['kwargs']):
187
+ if key not in all_params:
188
+ raise TypeError(
189
+ "Got an unexpected keyword argument '%s'"
190
+ " to method cloudy_service_get_user_cloudy_settings" % key
191
+ )
192
+ params[key] = val
193
+ del params['kwargs']
194
+ # verify the required parameter 'user_id' is set
195
+ if ('user_id' not in params or
196
+ params['user_id'] is None):
197
+ raise ValueError("Missing the required parameter `user_id` when calling `cloudy_service_get_user_cloudy_settings`") # noqa: E501
198
+
199
+ collection_formats = {}
200
+
201
+ path_params = {}
202
+ if 'user_id' in params:
203
+ path_params['userId'] = params['user_id'] # noqa: E501
204
+
205
+ query_params = []
206
+
207
+ header_params = {}
208
+
209
+ form_params = []
210
+ local_var_files = {}
211
+
212
+ body_params = None
213
+ # HTTP header `Accept`
214
+ header_params['Accept'] = self.api_client.select_header_accept(
215
+ ['application/json']) # noqa: E501
216
+
217
+ # Authentication setting
218
+ auth_settings = [] # noqa: E501
219
+
220
+ return self.api_client.call_api(
221
+ '/v1/cloudy/settings/user/{userId}', 'GET',
222
+ path_params,
223
+ query_params,
224
+ header_params,
225
+ body=body_params,
226
+ post_params=form_params,
227
+ files=local_var_files,
228
+ response_type='V1CloudySettings', # noqa: E501
229
+ auth_settings=auth_settings,
230
+ async_req=params.get('async_req'),
231
+ _return_http_data_only=params.get('_return_http_data_only'),
232
+ _preload_content=params.get('_preload_content', True),
233
+ _request_timeout=params.get('_request_timeout'),
234
+ collection_formats=collection_formats)
235
+
46
236
  def cloudy_service_list_cloudy_experts(self, **kwargs) -> 'V1ListCloudyExpertsResponse': # noqa: E501
47
237
  """Lists all available Cloudy Experts This endpoint returns a list of all Cloudy Experts that can be used to generate cloudy responses # noqa: E501
48
238
 
@@ -127,3 +317,108 @@ class CloudyServiceApi(object):
127
317
  _preload_content=params.get('_preload_content', True),
128
318
  _request_timeout=params.get('_request_timeout'),
129
319
  collection_formats=collection_formats)
320
+
321
+ def cloudy_service_update_user_cloudy_settings(self, body: 'UserUserIdBody', user_id: 'str', **kwargs) -> 'V1CloudySettings': # noqa: E501
322
+ """cloudy_service_update_user_cloudy_settings # noqa: E501
323
+
324
+ This method makes a synchronous HTTP request by default. To make an
325
+ asynchronous HTTP request, please pass async_req=True
326
+ >>> thread = api.cloudy_service_update_user_cloudy_settings(body, user_id, async_req=True)
327
+ >>> result = thread.get()
328
+
329
+ :param async_req bool
330
+ :param UserUserIdBody body: (required)
331
+ :param str user_id: (required)
332
+ :return: V1CloudySettings
333
+ If the method is called asynchronously,
334
+ returns the request thread.
335
+ """
336
+ kwargs['_return_http_data_only'] = True
337
+ if kwargs.get('async_req'):
338
+ return self.cloudy_service_update_user_cloudy_settings_with_http_info(body, user_id, **kwargs) # noqa: E501
339
+ else:
340
+ (data) = self.cloudy_service_update_user_cloudy_settings_with_http_info(body, user_id, **kwargs) # noqa: E501
341
+ return data
342
+
343
+ def cloudy_service_update_user_cloudy_settings_with_http_info(self, body: 'UserUserIdBody', user_id: 'str', **kwargs) -> 'V1CloudySettings': # noqa: E501
344
+ """cloudy_service_update_user_cloudy_settings # noqa: E501
345
+
346
+ This method makes a synchronous HTTP request by default. To make an
347
+ asynchronous HTTP request, please pass async_req=True
348
+ >>> thread = api.cloudy_service_update_user_cloudy_settings_with_http_info(body, user_id, async_req=True)
349
+ >>> result = thread.get()
350
+
351
+ :param async_req bool
352
+ :param UserUserIdBody body: (required)
353
+ :param str user_id: (required)
354
+ :return: V1CloudySettings
355
+ If the method is called asynchronously,
356
+ returns the request thread.
357
+ """
358
+
359
+ all_params = ['body', 'user_id'] # noqa: E501
360
+ all_params.append('async_req')
361
+ all_params.append('_return_http_data_only')
362
+ all_params.append('_preload_content')
363
+ all_params.append('_request_timeout')
364
+
365
+ params = locals()
366
+ for key, val in six.iteritems(params['kwargs']):
367
+ if key not in all_params:
368
+ raise TypeError(
369
+ "Got an unexpected keyword argument '%s'"
370
+ " to method cloudy_service_update_user_cloudy_settings" % key
371
+ )
372
+ params[key] = val
373
+ del params['kwargs']
374
+ # verify the required parameter 'body' is set
375
+ if ('body' not in params or
376
+ params['body'] is None):
377
+ raise ValueError("Missing the required parameter `body` when calling `cloudy_service_update_user_cloudy_settings`") # noqa: E501
378
+ # verify the required parameter 'user_id' is set
379
+ if ('user_id' not in params or
380
+ params['user_id'] is None):
381
+ raise ValueError("Missing the required parameter `user_id` when calling `cloudy_service_update_user_cloudy_settings`") # noqa: E501
382
+
383
+ collection_formats = {}
384
+
385
+ path_params = {}
386
+ if 'user_id' in params:
387
+ path_params['userId'] = params['user_id'] # noqa: E501
388
+
389
+ query_params = []
390
+
391
+ header_params = {}
392
+
393
+ form_params = []
394
+ local_var_files = {}
395
+
396
+ body_params = None
397
+ if 'body' in params:
398
+ body_params = params['body']
399
+ # HTTP header `Accept`
400
+ header_params['Accept'] = self.api_client.select_header_accept(
401
+ ['application/json']) # noqa: E501
402
+
403
+ # HTTP header `Content-Type`
404
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
405
+ ['application/json']) # noqa: E501
406
+
407
+ # Authentication setting
408
+ auth_settings = [] # noqa: E501
409
+
410
+ return self.api_client.call_api(
411
+ '/v1/cloudy/settings/user/{userId}', 'PUT',
412
+ path_params,
413
+ query_params,
414
+ header_params,
415
+ body=body_params,
416
+ post_params=form_params,
417
+ files=local_var_files,
418
+ response_type='V1CloudySettings', # noqa: E501
419
+ auth_settings=auth_settings,
420
+ async_req=params.get('async_req'),
421
+ _return_http_data_only=params.get('_return_http_data_only'),
422
+ _preload_content=params.get('_preload_content', True),
423
+ _request_timeout=params.get('_request_timeout'),
424
+ collection_formats=collection_formats)