lightning-sdk 2025.8.6rc2__py3-none-any.whl → 2025.11.5__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 (330) hide show
  1. lightning_sdk/__init__.py +13 -7
  2. lightning_sdk/__version__.py +3 -0
  3. lightning_sdk/agents.py +2 -1
  4. lightning_sdk/ai_hub.py +2 -1
  5. lightning_sdk/api/__init__.py +2 -0
  6. lightning_sdk/api/base_studio_api.py +13 -9
  7. lightning_sdk/api/cloud_account_api.py +31 -10
  8. lightning_sdk/api/deployment_api.py +27 -1
  9. lightning_sdk/api/job_api.py +16 -12
  10. lightning_sdk/api/license_api.py +26 -59
  11. lightning_sdk/api/llm_api.py +25 -2
  12. lightning_sdk/api/mmt_api.py +5 -2
  13. lightning_sdk/api/studio_api.py +252 -55
  14. lightning_sdk/api/teamspace_api.py +106 -30
  15. lightning_sdk/api/user_api.py +56 -2
  16. lightning_sdk/api/utils.py +108 -18
  17. lightning_sdk/base_studio.py +51 -27
  18. lightning_sdk/cli/__init__.py +1 -0
  19. lightning_sdk/cli/base_studio/__init__.py +10 -0
  20. lightning_sdk/cli/base_studio/list.py +43 -0
  21. lightning_sdk/cli/config/__init__.py +14 -0
  22. lightning_sdk/cli/config/get.py +57 -0
  23. lightning_sdk/cli/config/set.py +92 -0
  24. lightning_sdk/cli/config/show.py +9 -0
  25. lightning_sdk/cli/entrypoint.py +71 -71
  26. lightning_sdk/cli/groups.py +56 -0
  27. lightning_sdk/cli/job/__init__.py +7 -0
  28. lightning_sdk/cli/{clusters_menu.py → legacy/clusters_menu.py} +9 -6
  29. lightning_sdk/cli/{configure.py → legacy/configure.py} +2 -2
  30. lightning_sdk/cli/{connect.py → legacy/connect.py} +2 -2
  31. lightning_sdk/cli/{create.py → legacy/create.py} +12 -14
  32. lightning_sdk/cli/{delete.py → legacy/delete.py} +5 -5
  33. lightning_sdk/cli/legacy/deploy/__init__.py +0 -0
  34. lightning_sdk/cli/{deploy → legacy/deploy}/_auth.py +5 -6
  35. lightning_sdk/cli/{deploy → legacy/deploy}/devbox.py +8 -2
  36. lightning_sdk/cli/{deploy → legacy/deploy}/serve.py +19 -8
  37. lightning_sdk/cli/{download.py → legacy/download.py} +14 -15
  38. lightning_sdk/cli/legacy/entrypoint.py +110 -0
  39. lightning_sdk/cli/{generate.py → legacy/generate.py} +1 -1
  40. lightning_sdk/cli/{inspection.py → legacy/inspection.py} +1 -1
  41. lightning_sdk/cli/{job_and_mmt_action.py → legacy/job_and_mmt_action.py} +6 -6
  42. lightning_sdk/cli/{jobs_menu.py → legacy/jobs_menu.py} +1 -1
  43. lightning_sdk/cli/{list.py → legacy/list.py} +12 -13
  44. lightning_sdk/cli/{mmts_menu.py → legacy/mmts_menu.py} +1 -1
  45. lightning_sdk/cli/{open.py → legacy/open.py} +4 -4
  46. lightning_sdk/cli/{start.py → legacy/start.py} +1 -0
  47. lightning_sdk/cli/{stop.py → legacy/stop.py} +1 -1
  48. lightning_sdk/cli/{switch.py → legacy/switch.py} +1 -0
  49. lightning_sdk/cli/{teamspace_menu.py → legacy/teamspace_menu.py} +1 -1
  50. lightning_sdk/cli/{upload.py → legacy/upload.py} +7 -8
  51. lightning_sdk/cli/license/__init__.py +14 -0
  52. lightning_sdk/cli/license/get.py +15 -0
  53. lightning_sdk/cli/license/list.py +45 -0
  54. lightning_sdk/cli/license/set.py +13 -0
  55. lightning_sdk/cli/mmt/__init__.py +7 -0
  56. lightning_sdk/cli/studio/__init__.py +24 -0
  57. lightning_sdk/cli/studio/connect.py +139 -0
  58. lightning_sdk/cli/studio/create.py +96 -0
  59. lightning_sdk/cli/studio/delete.py +49 -0
  60. lightning_sdk/cli/studio/list.py +85 -0
  61. lightning_sdk/cli/studio/ssh.py +64 -0
  62. lightning_sdk/cli/studio/start.py +115 -0
  63. lightning_sdk/cli/studio/stop.py +45 -0
  64. lightning_sdk/cli/studio/switch.py +66 -0
  65. lightning_sdk/cli/utils/__init__.py +7 -0
  66. lightning_sdk/cli/utils/cloud_account_map.py +10 -0
  67. lightning_sdk/cli/utils/get_base_studio.py +24 -0
  68. lightning_sdk/cli/utils/handle_machine_and_gpus_args.py +69 -0
  69. lightning_sdk/cli/utils/logging.py +122 -0
  70. lightning_sdk/cli/utils/owner_selection.py +110 -0
  71. lightning_sdk/cli/utils/resolve.py +28 -0
  72. lightning_sdk/cli/utils/richt_print.py +35 -0
  73. lightning_sdk/cli/utils/save_to_config.py +27 -0
  74. lightning_sdk/cli/utils/ssh_connection.py +59 -0
  75. lightning_sdk/cli/utils/studio_selection.py +113 -0
  76. lightning_sdk/cli/utils/teamspace_selection.py +125 -0
  77. lightning_sdk/cli/vm/__init__.py +20 -0
  78. lightning_sdk/cli/vm/create.py +33 -0
  79. lightning_sdk/cli/vm/delete.py +25 -0
  80. lightning_sdk/cli/vm/list.py +30 -0
  81. lightning_sdk/cli/vm/ssh.py +31 -0
  82. lightning_sdk/cli/vm/start.py +60 -0
  83. lightning_sdk/cli/vm/stop.py +25 -0
  84. lightning_sdk/cli/vm/switch.py +38 -0
  85. lightning_sdk/constants.py +1 -0
  86. lightning_sdk/deployment/__init__.py +2 -0
  87. lightning_sdk/deployment/deployment.py +17 -2
  88. lightning_sdk/helpers.py +56 -37
  89. lightning_sdk/job/base.py +21 -6
  90. lightning_sdk/job/job.py +13 -0
  91. lightning_sdk/job/v1.py +11 -0
  92. lightning_sdk/job/v2.py +12 -0
  93. lightning_sdk/lightning_cloud/login.py +320 -10
  94. lightning_sdk/lightning_cloud/openapi/__init__.py +113 -3
  95. lightning_sdk/lightning_cloud/openapi/api/__init__.py +3 -0
  96. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +713 -75
  97. lightning_sdk/lightning_cloud/openapi/api/auth_service_api.py +376 -0
  98. lightning_sdk/lightning_cloud/openapi/api/billing_service_api.py +191 -1
  99. lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +5 -1
  100. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +420 -0
  101. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +0 -97
  102. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +420 -0
  103. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +101 -0
  104. lightning_sdk/lightning_cloud/openapi/api/incidents_service_api.py +1058 -0
  105. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +121 -0
  106. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +1742 -94
  107. lightning_sdk/lightning_cloud/openapi/api/markets_service_api.py +145 -0
  108. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +4 -4
  109. lightning_sdk/lightning_cloud/openapi/api/product_license_service_api.py +108 -108
  110. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +105 -0
  111. lightning_sdk/lightning_cloud/openapi/api/schedules_service_api.py +347 -0
  112. lightning_sdk/lightning_cloud/openapi/api/sdk_command_history_service_api.py +141 -0
  113. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +761 -1
  114. lightning_sdk/lightning_cloud/openapi/configuration.py +3 -19
  115. lightning_sdk/lightning_cloud/openapi/models/__init__.py +110 -3
  116. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +15 -15
  117. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_visibility_body.py +27 -1
  118. lightning_sdk/lightning_cloud/openapi/models/cluster_id_kubernetestemplates_body.py +201 -0
  119. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +131 -1
  120. lightning_sdk/lightning_cloud/openapi/models/create.py +27 -1
  121. lightning_sdk/lightning_cloud/openapi/models/create_machine_request_represents_the_request_to_create_a_machine.py +461 -0
  122. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  123. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +105 -1
  124. lightning_sdk/lightning_cloud/openapi/models/externalv1_user_status.py +27 -1
  125. lightning_sdk/lightning_cloud/openapi/models/id_codeconfig_body.py +3 -81
  126. lightning_sdk/lightning_cloud/openapi/models/id_fork_body1.py +27 -1
  127. lightning_sdk/lightning_cloud/openapi/models/id_render_body.py +123 -0
  128. lightning_sdk/lightning_cloud/openapi/models/id_sleepconfig_body.py +175 -0
  129. lightning_sdk/lightning_cloud/openapi/models/id_transfer_body.py +53 -1
  130. lightning_sdk/lightning_cloud/openapi/models/incident_id_messages_body.py +123 -0
  131. lightning_sdk/lightning_cloud/openapi/models/incidents_id_body.py +279 -0
  132. lightning_sdk/lightning_cloud/openapi/models/job_id_reportroutingtelemetry_body.py +123 -0
  133. lightning_sdk/lightning_cloud/openapi/models/kubernetestemplates_id_body.py +201 -0
  134. lightning_sdk/lightning_cloud/openapi/models/license_key_validate_body.py +123 -0
  135. lightning_sdk/lightning_cloud/openapi/models/message_id_actions_body.py +201 -0
  136. lightning_sdk/lightning_cloud/openapi/models/messages_message_id_body.py +123 -0
  137. lightning_sdk/lightning_cloud/openapi/models/metricsstream_create_body.py +27 -1
  138. lightning_sdk/lightning_cloud/openapi/models/models_model_id_body.py +109 -31
  139. lightning_sdk/lightning_cloud/openapi/models/models_model_id_body1.py +149 -0
  140. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +53 -1
  141. lightning_sdk/lightning_cloud/openapi/models/project_id_storage_body.py +27 -1
  142. lightning_sdk/lightning_cloud/openapi/models/project_id_storagetransfers_body.py +175 -0
  143. lightning_sdk/lightning_cloud/openapi/models/project_tab_management_messages.py +123 -0
  144. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +79 -1
  145. lightning_sdk/lightning_cloud/openapi/models/storage_complete_body.py +41 -15
  146. lightning_sdk/lightning_cloud/openapi/models/storagetransfers_validate_body.py +149 -0
  147. lightning_sdk/lightning_cloud/openapi/models/update1.py +27 -1
  148. lightning_sdk/lightning_cloud/openapi/models/uploads_upload_id_body1.py +27 -1
  149. lightning_sdk/lightning_cloud/openapi/models/user_id_affiliatelinks_body.py +107 -3
  150. lightning_sdk/lightning_cloud/openapi/models/v1_abort_storage_transfer_response.py +97 -0
  151. lightning_sdk/lightning_cloud/openapi/models/v1_aggregated_pod_metrics.py +799 -0
  152. lightning_sdk/lightning_cloud/openapi/models/v1_ai_pod_v1.py +53 -1
  153. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_session_daily_aggregated.py +27 -1
  154. lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +0 -1
  155. lightning_sdk/lightning_cloud/openapi/models/v1_cancel_running_cloud_space_instance_transfer_response.py +97 -0
  156. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +2 -0
  157. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +27 -1
  158. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +1 -0
  159. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_transfer_metadata.py +147 -17
  160. lightning_sdk/lightning_cloud/openapi/models/v1_cloudflare_v1.py +3 -29
  161. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +53 -1
  162. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  163. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_metrics.py +1527 -0
  164. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +27 -1
  165. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -1
  166. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +1 -0
  167. lightning_sdk/lightning_cloud/openapi/models/v1_container_metrics.py +21 -21
  168. lightning_sdk/lightning_cloud/openapi/models/v1_create_incident_request.py +305 -0
  169. lightning_sdk/lightning_cloud/openapi/models/v1_create_license_request.py +175 -0
  170. lightning_sdk/lightning_cloud/openapi/models/v1_create_machine_response.py +123 -0
  171. lightning_sdk/lightning_cloud/openapi/models/v1_create_model_metrics_response.py +97 -0
  172. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +79 -1
  173. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +253 -0
  174. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_response.py +97 -0
  175. lightning_sdk/lightning_cloud/openapi/models/v1_daily_model_metrics.py +149 -0
  176. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +53 -1
  177. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_message_response.py +97 -0
  178. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_response.py +97 -0
  179. lightning_sdk/lightning_cloud/openapi/models/v1_delete_kubernetes_template_response.py +97 -0
  180. lightning_sdk/lightning_cloud/openapi/models/v1_delete_license_response.py +97 -0
  181. lightning_sdk/lightning_cloud/openapi/models/v1_delete_machine_response.py +97 -0
  182. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  183. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +53 -1
  184. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  185. lightning_sdk/lightning_cloud/openapi/models/v1_filestore_data_connection.py +27 -1
  186. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_metric.py +201 -0
  187. lightning_sdk/lightning_cloud/openapi/models/v1_firewall_rule.py +175 -0
  188. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_required_balance_status_response.py +149 -0
  189. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_transfer_estimate_response.py +149 -0
  190. lightning_sdk/lightning_cloud/openapi/models/v1_get_latest_model_metrics_response.py +123 -0
  191. lightning_sdk/lightning_cloud/openapi/models/v1_get_machine_response.py +123 -0
  192. lightning_sdk/lightning_cloud/openapi/models/v1_get_market_pricing_response.py +201 -0
  193. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_metrics_response.py +123 -0
  194. lightning_sdk/lightning_cloud/openapi/models/v1_get_temp_bucket_credentials_response.py +201 -0
  195. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +41 -15
  196. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +27 -1
  197. lightning_sdk/lightning_cloud/openapi/models/v1_group_node_metrics.py +1215 -0
  198. lightning_sdk/lightning_cloud/openapi/models/v1_group_pod_metrics.py +1241 -0
  199. lightning_sdk/lightning_cloud/openapi/models/v1_guest_login_request.py +177 -0
  200. lightning_sdk/lightning_cloud/openapi/models/v1_guest_login_response.py +149 -0
  201. lightning_sdk/lightning_cloud/openapi/models/v1_guest_user.py +201 -0
  202. lightning_sdk/lightning_cloud/openapi/models/v1_incident.py +565 -0
  203. lightning_sdk/lightning_cloud/openapi/models/v1_incident_detail.py +149 -0
  204. lightning_sdk/lightning_cloud/openapi/models/v1_incident_event.py +591 -0
  205. lightning_sdk/lightning_cloud/openapi/models/v1_incident_message.py +253 -0
  206. lightning_sdk/lightning_cloud/openapi/models/v1_incident_severity.py +105 -0
  207. lightning_sdk/lightning_cloud/openapi/models/v1_incident_type.py +108 -0
  208. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +53 -1
  209. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  210. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_indexes.py +149 -0
  211. lightning_sdk/lightning_cloud/openapi/models/v1_kai_scheduler_queue_metrics.py +627 -0
  212. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_aws_config.py +279 -0
  213. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +253 -0
  214. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +107 -3
  215. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_template.py +357 -0
  216. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_template_property.py +227 -0
  217. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +29 -3
  218. lightning_sdk/lightning_cloud/openapi/models/v1_license.py +227 -0
  219. lightning_sdk/lightning_cloud/openapi/models/v1_lightning_elastic_cluster_v1.py +97 -0
  220. lightning_sdk/lightning_cloud/openapi/models/v1_list_aggregated_pod_metrics_response.py +123 -0
  221. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metric_timestamps_response.py +123 -0
  222. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metrics_response.py +123 -0
  223. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_metrics_response.py +123 -0
  224. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_user_metrics_response.py +123 -0
  225. lightning_sdk/lightning_cloud/openapi/models/v1_list_conversation_message_actions_response.py +123 -0
  226. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_metrics_response.py +123 -0
  227. lightning_sdk/lightning_cloud/openapi/models/v1_list_group_pod_metrics_response.py +123 -0
  228. lightning_sdk/lightning_cloud/openapi/models/v1_list_incident_events_response.py +123 -0
  229. lightning_sdk/lightning_cloud/openapi/models/v1_list_incident_messages_response.py +149 -0
  230. lightning_sdk/lightning_cloud/openapi/models/v1_list_incidents_response.py +149 -0
  231. lightning_sdk/lightning_cloud/openapi/models/v1_list_kai_scheduler_queues_metrics_response.py +123 -0
  232. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_templates_response.py +123 -0
  233. lightning_sdk/lightning_cloud/openapi/models/{v1_list_product_licenses_response.py → v1_list_license_response.py} +16 -16
  234. lightning_sdk/lightning_cloud/openapi/models/v1_list_machines_response.py +149 -0
  235. lightning_sdk/lightning_cloud/openapi/models/v1_list_platform_notifications_response.py +123 -0
  236. lightning_sdk/lightning_cloud/openapi/models/v1_list_schedule_runs_response.py +123 -0
  237. lightning_sdk/lightning_cloud/openapi/models/v1_list_storage_transfers_response.py +123 -0
  238. lightning_sdk/lightning_cloud/openapi/models/v1_lustre_data_connection.py +149 -0
  239. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +617 -0
  240. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +123 -0
  241. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +1 -27
  242. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_response.py +27 -1
  243. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +29 -3
  244. lightning_sdk/lightning_cloud/openapi/models/v1_market_price.py +149 -0
  245. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +53 -1
  246. lightning_sdk/lightning_cloud/openapi/models/v1_message_action.py +279 -0
  247. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +27 -1
  248. lightning_sdk/lightning_cloud/openapi/models/v1_model_metrics.py +175 -0
  249. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_metrics.py +591 -0
  250. lightning_sdk/lightning_cloud/openapi/models/v1_namespace_user_metrics.py +435 -0
  251. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  252. lightning_sdk/lightning_cloud/openapi/models/v1_node_metrics.py +361 -23
  253. lightning_sdk/lightning_cloud/openapi/models/v1_notification_type.py +1 -0
  254. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +53 -1
  255. lightning_sdk/lightning_cloud/openapi/models/v1_pause_storage_transfer_response.py +97 -0
  256. lightning_sdk/lightning_cloud/openapi/models/v1_platform_notification.py +279 -0
  257. lightning_sdk/lightning_cloud/openapi/models/v1_pod_metrics.py +335 -23
  258. lightning_sdk/lightning_cloud/openapi/models/v1_project.py +27 -1
  259. lightning_sdk/lightning_cloud/openapi/models/v1_project_cluster_binding.py +27 -1
  260. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +53 -1
  261. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +53 -1
  262. lightning_sdk/lightning_cloud/openapi/models/v1_project_tab.py +149 -0
  263. lightning_sdk/lightning_cloud/openapi/models/{v1_product_license_check_response.py → v1_purchase_annual_upsell_request.py} +23 -23
  264. lightning_sdk/lightning_cloud/openapi/models/v1_purchase_annual_upsell_response.py +123 -0
  265. lightning_sdk/lightning_cloud/openapi/models/v1_quote_annual_upsell_response.py +227 -0
  266. lightning_sdk/lightning_cloud/openapi/models/v1_render_kubernetes_template_response.py +123 -0
  267. lightning_sdk/lightning_cloud/openapi/models/v1_report_deployment_routing_telemetry_response.py +97 -0
  268. lightning_sdk/lightning_cloud/openapi/models/v1_required_balance_reason.py +107 -0
  269. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_request.py +97 -0
  270. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_response.py +123 -0
  271. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +1 -27
  272. lightning_sdk/lightning_cloud/openapi/models/v1_resume_storage_transfer_response.py +97 -0
  273. lightning_sdk/lightning_cloud/openapi/models/v1_routing_telemetry.py +79 -1
  274. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  275. lightning_sdk/lightning_cloud/openapi/models/v1_schedule_run.py +357 -0
  276. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_severity.py +104 -0
  277. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_type.py +104 -0
  278. lightning_sdk/lightning_cloud/openapi/models/v1_secret_type.py +1 -0
  279. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_type.py +1 -0
  280. lightning_sdk/lightning_cloud/openapi/models/v1_slack_notifier.py +201 -0
  281. lightning_sdk/lightning_cloud/openapi/models/v1_slack_notifier_type.py +105 -0
  282. lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset.py +133 -3
  283. lightning_sdk/lightning_cloud/openapi/models/v1_storage_transfer.py +435 -0
  284. lightning_sdk/lightning_cloud/openapi/models/v1_storage_transfer_status.py +108 -0
  285. lightning_sdk/lightning_cloud/openapi/models/v1_token_login_request.py +123 -0
  286. lightning_sdk/lightning_cloud/openapi/models/v1_token_login_response.py +123 -0
  287. lightning_sdk/lightning_cloud/openapi/models/v1_token_owner_type.py +104 -0
  288. lightning_sdk/lightning_cloud/openapi/models/v1_update_cloud_space_instance_config_request.py +3 -81
  289. lightning_sdk/lightning_cloud/openapi/models/v1_update_project_tab_order_response.py +123 -0
  290. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +41 -15
  291. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +444 -600
  292. lightning_sdk/lightning_cloud/openapi/models/v1_validate_license_response.py +123 -0
  293. lightning_sdk/lightning_cloud/openapi/models/v1_validate_storage_transfer_response.py +123 -0
  294. lightning_sdk/lightning_cloud/openapi/models/v1_voltage_park_direct_v1.py +29 -3
  295. lightning_sdk/lightning_cloud/rest_client.py +48 -45
  296. lightning_sdk/lightning_cloud/utils/data_connection.py +51 -1
  297. lightning_sdk/llm/llm.py +175 -56
  298. lightning_sdk/llm/public_assistants.py +44 -7
  299. lightning_sdk/machine.py +21 -2
  300. lightning_sdk/mmt/base.py +7 -0
  301. lightning_sdk/mmt/mmt.py +11 -3
  302. lightning_sdk/mmt/v1.py +3 -1
  303. lightning_sdk/mmt/v2.py +4 -0
  304. lightning_sdk/owner.py +2 -1
  305. lightning_sdk/pipeline/steps.py +6 -0
  306. lightning_sdk/plugin.py +6 -1
  307. lightning_sdk/studio.py +294 -53
  308. lightning_sdk/teamspace.py +167 -7
  309. lightning_sdk/user.py +19 -1
  310. lightning_sdk/utils/config.py +179 -0
  311. lightning_sdk/utils/license.py +13 -0
  312. lightning_sdk/utils/logging.py +79 -0
  313. lightning_sdk/utils/names.py +1179 -0
  314. lightning_sdk/utils/progress.py +283 -0
  315. lightning_sdk/utils/resolve.py +82 -7
  316. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/METADATA +2 -1
  317. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/RECORD +328 -169
  318. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/entry_points.txt +1 -0
  319. lightning_sdk/lightning_cloud/openapi/models/v1_product_license.py +0 -435
  320. lightning_sdk/services/license.py +0 -363
  321. /lightning_sdk/cli/{deploy → legacy}/__init__.py +0 -0
  322. /lightning_sdk/cli/{ai_hub.py → legacy/ai_hub.py} +0 -0
  323. /lightning_sdk/cli/{docker_cli.py → legacy/docker_cli.py} +0 -0
  324. /lightning_sdk/cli/{exceptions.py → legacy/exceptions.py} +0 -0
  325. /lightning_sdk/cli/{run.py → legacy/run.py} +0 -0
  326. /lightning_sdk/cli/{studios_menu.py → legacy/studios_menu.py} +0 -0
  327. /lightning_sdk/cli/{coloring.py → utils/coloring.py} +0 -0
  328. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/LICENSE +0 -0
  329. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/WHEEL +0 -0
  330. {lightning_sdk-2025.8.6rc2.dist-info → lightning_sdk-2025.11.5.dist-info}/top_level.txt +0 -0
@@ -358,6 +358,232 @@ class AssistantsServiceApi(object):
358
358
  _request_timeout=params.get('_request_timeout'),
359
359
  collection_formats=collection_formats)
360
360
 
361
+ def assistants_service_create_conversation_message_action(self, body: 'MessageIdActionsBody', assistant_id: 'str', conversation_id: 'str', message_id: 'str', **kwargs) -> 'V1MessageAction': # noqa: E501
362
+ """assistants_service_create_conversation_message_action # noqa: E501
363
+
364
+ This method makes a synchronous HTTP request by default. To make an
365
+ asynchronous HTTP request, please pass async_req=True
366
+ >>> thread = api.assistants_service_create_conversation_message_action(body, assistant_id, conversation_id, message_id, async_req=True)
367
+ >>> result = thread.get()
368
+
369
+ :param async_req bool
370
+ :param MessageIdActionsBody body: (required)
371
+ :param str assistant_id: (required)
372
+ :param str conversation_id: (required)
373
+ :param str message_id: (required)
374
+ :return: V1MessageAction
375
+ If the method is called asynchronously,
376
+ returns the request thread.
377
+ """
378
+ kwargs['_return_http_data_only'] = True
379
+ if kwargs.get('async_req'):
380
+ return self.assistants_service_create_conversation_message_action_with_http_info(body, assistant_id, conversation_id, message_id, **kwargs) # noqa: E501
381
+ else:
382
+ (data) = self.assistants_service_create_conversation_message_action_with_http_info(body, assistant_id, conversation_id, message_id, **kwargs) # noqa: E501
383
+ return data
384
+
385
+ def assistants_service_create_conversation_message_action_with_http_info(self, body: 'MessageIdActionsBody', assistant_id: 'str', conversation_id: 'str', message_id: 'str', **kwargs) -> 'V1MessageAction': # noqa: E501
386
+ """assistants_service_create_conversation_message_action # noqa: E501
387
+
388
+ This method makes a synchronous HTTP request by default. To make an
389
+ asynchronous HTTP request, please pass async_req=True
390
+ >>> thread = api.assistants_service_create_conversation_message_action_with_http_info(body, assistant_id, conversation_id, message_id, async_req=True)
391
+ >>> result = thread.get()
392
+
393
+ :param async_req bool
394
+ :param MessageIdActionsBody body: (required)
395
+ :param str assistant_id: (required)
396
+ :param str conversation_id: (required)
397
+ :param str message_id: (required)
398
+ :return: V1MessageAction
399
+ If the method is called asynchronously,
400
+ returns the request thread.
401
+ """
402
+
403
+ all_params = ['body', 'assistant_id', 'conversation_id', 'message_id'] # noqa: E501
404
+ all_params.append('async_req')
405
+ all_params.append('_return_http_data_only')
406
+ all_params.append('_preload_content')
407
+ all_params.append('_request_timeout')
408
+
409
+ params = locals()
410
+ for key, val in six.iteritems(params['kwargs']):
411
+ if key not in all_params:
412
+ raise TypeError(
413
+ "Got an unexpected keyword argument '%s'"
414
+ " to method assistants_service_create_conversation_message_action" % key
415
+ )
416
+ params[key] = val
417
+ del params['kwargs']
418
+ # verify the required parameter 'body' is set
419
+ if ('body' not in params or
420
+ params['body'] is None):
421
+ raise ValueError("Missing the required parameter `body` when calling `assistants_service_create_conversation_message_action`") # noqa: E501
422
+ # verify the required parameter 'assistant_id' is set
423
+ if ('assistant_id' not in params or
424
+ params['assistant_id'] is None):
425
+ raise ValueError("Missing the required parameter `assistant_id` when calling `assistants_service_create_conversation_message_action`") # noqa: E501
426
+ # verify the required parameter 'conversation_id' is set
427
+ if ('conversation_id' not in params or
428
+ params['conversation_id'] is None):
429
+ raise ValueError("Missing the required parameter `conversation_id` when calling `assistants_service_create_conversation_message_action`") # noqa: E501
430
+ # verify the required parameter 'message_id' is set
431
+ if ('message_id' not in params or
432
+ params['message_id'] is None):
433
+ raise ValueError("Missing the required parameter `message_id` when calling `assistants_service_create_conversation_message_action`") # noqa: E501
434
+
435
+ collection_formats = {}
436
+
437
+ path_params = {}
438
+ if 'assistant_id' in params:
439
+ path_params['assistantId'] = params['assistant_id'] # noqa: E501
440
+ if 'conversation_id' in params:
441
+ path_params['conversationId'] = params['conversation_id'] # noqa: E501
442
+ if 'message_id' in params:
443
+ path_params['messageId'] = params['message_id'] # noqa: E501
444
+
445
+ query_params = []
446
+
447
+ header_params = {}
448
+
449
+ form_params = []
450
+ local_var_files = {}
451
+
452
+ body_params = None
453
+ if 'body' in params:
454
+ body_params = params['body']
455
+ # HTTP header `Accept`
456
+ header_params['Accept'] = self.api_client.select_header_accept(
457
+ ['application/json']) # noqa: E501
458
+
459
+ # HTTP header `Content-Type`
460
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
461
+ ['application/json']) # noqa: E501
462
+
463
+ # Authentication setting
464
+ auth_settings = [] # noqa: E501
465
+
466
+ return self.api_client.call_api(
467
+ '/v1/agents/{assistantId}/conversations/{conversationId}/messages/{messageId}/actions', 'POST',
468
+ path_params,
469
+ query_params,
470
+ header_params,
471
+ body=body_params,
472
+ post_params=form_params,
473
+ files=local_var_files,
474
+ response_type='V1MessageAction', # noqa: E501
475
+ auth_settings=auth_settings,
476
+ async_req=params.get('async_req'),
477
+ _return_http_data_only=params.get('_return_http_data_only'),
478
+ _preload_content=params.get('_preload_content', True),
479
+ _request_timeout=params.get('_request_timeout'),
480
+ collection_formats=collection_formats)
481
+
482
+ def assistants_service_create_model_metrics(self, body: 'ModelsModelIdBody', model_id: 'str', **kwargs) -> 'V1CreateModelMetricsResponse': # noqa: E501
483
+ """assistants_service_create_model_metrics # noqa: E501
484
+
485
+ This method makes a synchronous HTTP request by default. To make an
486
+ asynchronous HTTP request, please pass async_req=True
487
+ >>> thread = api.assistants_service_create_model_metrics(body, model_id, async_req=True)
488
+ >>> result = thread.get()
489
+
490
+ :param async_req bool
491
+ :param ModelsModelIdBody body: (required)
492
+ :param str model_id: (required)
493
+ :return: V1CreateModelMetricsResponse
494
+ If the method is called asynchronously,
495
+ returns the request thread.
496
+ """
497
+ kwargs['_return_http_data_only'] = True
498
+ if kwargs.get('async_req'):
499
+ return self.assistants_service_create_model_metrics_with_http_info(body, model_id, **kwargs) # noqa: E501
500
+ else:
501
+ (data) = self.assistants_service_create_model_metrics_with_http_info(body, model_id, **kwargs) # noqa: E501
502
+ return data
503
+
504
+ def assistants_service_create_model_metrics_with_http_info(self, body: 'ModelsModelIdBody', model_id: 'str', **kwargs) -> 'V1CreateModelMetricsResponse': # noqa: E501
505
+ """assistants_service_create_model_metrics # noqa: E501
506
+
507
+ This method makes a synchronous HTTP request by default. To make an
508
+ asynchronous HTTP request, please pass async_req=True
509
+ >>> thread = api.assistants_service_create_model_metrics_with_http_info(body, model_id, async_req=True)
510
+ >>> result = thread.get()
511
+
512
+ :param async_req bool
513
+ :param ModelsModelIdBody body: (required)
514
+ :param str model_id: (required)
515
+ :return: V1CreateModelMetricsResponse
516
+ If the method is called asynchronously,
517
+ returns the request thread.
518
+ """
519
+
520
+ all_params = ['body', 'model_id'] # noqa: E501
521
+ all_params.append('async_req')
522
+ all_params.append('_return_http_data_only')
523
+ all_params.append('_preload_content')
524
+ all_params.append('_request_timeout')
525
+
526
+ params = locals()
527
+ for key, val in six.iteritems(params['kwargs']):
528
+ if key not in all_params:
529
+ raise TypeError(
530
+ "Got an unexpected keyword argument '%s'"
531
+ " to method assistants_service_create_model_metrics" % key
532
+ )
533
+ params[key] = val
534
+ del params['kwargs']
535
+ # verify the required parameter 'body' is set
536
+ if ('body' not in params or
537
+ params['body'] is None):
538
+ raise ValueError("Missing the required parameter `body` when calling `assistants_service_create_model_metrics`") # noqa: E501
539
+ # verify the required parameter 'model_id' is set
540
+ if ('model_id' not in params or
541
+ params['model_id'] is None):
542
+ raise ValueError("Missing the required parameter `model_id` when calling `assistants_service_create_model_metrics`") # noqa: E501
543
+
544
+ collection_formats = {}
545
+
546
+ path_params = {}
547
+ if 'model_id' in params:
548
+ path_params['modelId'] = params['model_id'] # noqa: E501
549
+
550
+ query_params = []
551
+
552
+ header_params = {}
553
+
554
+ form_params = []
555
+ local_var_files = {}
556
+
557
+ body_params = None
558
+ if 'body' in params:
559
+ body_params = params['body']
560
+ # HTTP header `Accept`
561
+ header_params['Accept'] = self.api_client.select_header_accept(
562
+ ['application/json']) # noqa: E501
563
+
564
+ # HTTP header `Content-Type`
565
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
566
+ ['application/json']) # noqa: E501
567
+
568
+ # Authentication setting
569
+ auth_settings = [] # noqa: E501
570
+
571
+ return self.api_client.call_api(
572
+ '/v1/agents/metrics/models/{modelId}', 'POST',
573
+ path_params,
574
+ query_params,
575
+ header_params,
576
+ body=body_params,
577
+ post_params=form_params,
578
+ files=local_var_files,
579
+ response_type='V1CreateModelMetricsResponse', # noqa: E501
580
+ auth_settings=auth_settings,
581
+ async_req=params.get('async_req'),
582
+ _return_http_data_only=params.get('_return_http_data_only'),
583
+ _preload_content=params.get('_preload_content', True),
584
+ _request_timeout=params.get('_request_timeout'),
585
+ collection_formats=collection_formats)
586
+
361
587
  def assistants_service_delete_assistant(self, project_id: 'str', id: 'str', **kwargs) -> 'V1DeleteAssistantResponse': # noqa: E501
362
588
  """assistants_service_delete_assistant # noqa: E501
363
589
 
@@ -952,49 +1178,43 @@ class AssistantsServiceApi(object):
952
1178
  _request_timeout=params.get('_request_timeout'),
953
1179
  collection_formats=collection_formats)
954
1180
 
955
- def assistants_service_get_managed_model_assistant(self, model_name: 'str', **kwargs) -> 'V1Assistant': # noqa: E501
956
- """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1181
+ def assistants_service_get_latest_model_metrics(self, **kwargs) -> 'V1GetLatestModelMetricsResponse': # noqa: E501
1182
+ """model metrics # noqa: E501
957
1183
 
958
1184
  This method makes a synchronous HTTP request by default. To make an
959
1185
  asynchronous HTTP request, please pass async_req=True
960
- >>> thread = api.assistants_service_get_managed_model_assistant(model_name, async_req=True)
1186
+ >>> thread = api.assistants_service_get_latest_model_metrics(async_req=True)
961
1187
  >>> result = thread.get()
962
1188
 
963
1189
  :param async_req bool
964
- :param str model_name: (required)
965
- :param str user_name:
966
- :param str org_name:
967
- :param str model_provider:
968
- :return: V1Assistant
1190
+ :param str model_id:
1191
+ :return: V1GetLatestModelMetricsResponse
969
1192
  If the method is called asynchronously,
970
1193
  returns the request thread.
971
1194
  """
972
1195
  kwargs['_return_http_data_only'] = True
973
1196
  if kwargs.get('async_req'):
974
- return self.assistants_service_get_managed_model_assistant_with_http_info(model_name, **kwargs) # noqa: E501
1197
+ return self.assistants_service_get_latest_model_metrics_with_http_info(**kwargs) # noqa: E501
975
1198
  else:
976
- (data) = self.assistants_service_get_managed_model_assistant_with_http_info(model_name, **kwargs) # noqa: E501
1199
+ (data) = self.assistants_service_get_latest_model_metrics_with_http_info(**kwargs) # noqa: E501
977
1200
  return data
978
1201
 
979
- def assistants_service_get_managed_model_assistant_with_http_info(self, model_name: 'str', **kwargs) -> 'V1Assistant': # noqa: E501
980
- """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1202
+ def assistants_service_get_latest_model_metrics_with_http_info(self, **kwargs) -> 'V1GetLatestModelMetricsResponse': # noqa: E501
1203
+ """model metrics # noqa: E501
981
1204
 
982
1205
  This method makes a synchronous HTTP request by default. To make an
983
1206
  asynchronous HTTP request, please pass async_req=True
984
- >>> thread = api.assistants_service_get_managed_model_assistant_with_http_info(model_name, async_req=True)
1207
+ >>> thread = api.assistants_service_get_latest_model_metrics_with_http_info(async_req=True)
985
1208
  >>> result = thread.get()
986
1209
 
987
1210
  :param async_req bool
988
- :param str model_name: (required)
989
- :param str user_name:
990
- :param str org_name:
991
- :param str model_provider:
992
- :return: V1Assistant
1211
+ :param str model_id:
1212
+ :return: V1GetLatestModelMetricsResponse
993
1213
  If the method is called asynchronously,
994
1214
  returns the request thread.
995
1215
  """
996
1216
 
997
- all_params = ['model_name', 'user_name', 'org_name', 'model_provider'] # noqa: E501
1217
+ all_params = ['model_id'] # noqa: E501
998
1218
  all_params.append('async_req')
999
1219
  all_params.append('_return_http_data_only')
1000
1220
  all_params.append('_preload_content')
@@ -1005,28 +1225,18 @@ class AssistantsServiceApi(object):
1005
1225
  if key not in all_params:
1006
1226
  raise TypeError(
1007
1227
  "Got an unexpected keyword argument '%s'"
1008
- " to method assistants_service_get_managed_model_assistant" % key
1228
+ " to method assistants_service_get_latest_model_metrics" % key
1009
1229
  )
1010
1230
  params[key] = val
1011
1231
  del params['kwargs']
1012
- # verify the required parameter 'model_name' is set
1013
- if ('model_name' not in params or
1014
- params['model_name'] is None):
1015
- raise ValueError("Missing the required parameter `model_name` when calling `assistants_service_get_managed_model_assistant`") # noqa: E501
1016
1232
 
1017
1233
  collection_formats = {}
1018
1234
 
1019
1235
  path_params = {}
1020
- if 'model_name' in params:
1021
- path_params['modelName'] = params['model_name'] # noqa: E501
1022
1236
 
1023
1237
  query_params = []
1024
- if 'user_name' in params:
1025
- query_params.append(('userName', params['user_name'])) # noqa: E501
1026
- if 'org_name' in params:
1027
- query_params.append(('orgName', params['org_name'])) # noqa: E501
1028
- if 'model_provider' in params:
1029
- query_params.append(('modelProvider', params['model_provider'])) # noqa: E501
1238
+ if 'model_id' in params:
1239
+ query_params.append(('modelId', params['model_id'])) # noqa: E501
1030
1240
 
1031
1241
  header_params = {}
1032
1242
 
@@ -1042,14 +1252,14 @@ class AssistantsServiceApi(object):
1042
1252
  auth_settings = [] # noqa: E501
1043
1253
 
1044
1254
  return self.api_client.call_api(
1045
- '/v1/agents/managed-model/{modelName}', 'GET',
1255
+ '/v1/agents/latest-metrics', 'GET',
1046
1256
  path_params,
1047
1257
  query_params,
1048
1258
  header_params,
1049
1259
  body=body_params,
1050
1260
  post_params=form_params,
1051
1261
  files=local_var_files,
1052
- response_type='V1Assistant', # noqa: E501
1262
+ response_type='V1GetLatestModelMetricsResponse', # noqa: E501
1053
1263
  auth_settings=auth_settings,
1054
1264
  async_req=params.get('async_req'),
1055
1265
  _return_http_data_only=params.get('_return_http_data_only'),
@@ -1057,47 +1267,51 @@ class AssistantsServiceApi(object):
1057
1267
  _request_timeout=params.get('_request_timeout'),
1058
1268
  collection_formats=collection_formats)
1059
1269
 
1060
- def assistants_service_get_managed_model_by_name(self, project_id: 'str', managed_endpoint_id: 'str', name: 'str', **kwargs) -> 'V1ManagedModel': # noqa: E501
1061
- """assistants_service_get_managed_model_by_name # noqa: E501
1270
+ def assistants_service_get_managed_model_assistant(self, model_name: 'str', **kwargs) -> 'V1Assistant': # noqa: E501
1271
+ """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1062
1272
 
1063
1273
  This method makes a synchronous HTTP request by default. To make an
1064
1274
  asynchronous HTTP request, please pass async_req=True
1065
- >>> thread = api.assistants_service_get_managed_model_by_name(project_id, managed_endpoint_id, name, async_req=True)
1275
+ >>> thread = api.assistants_service_get_managed_model_assistant(model_name, async_req=True)
1066
1276
  >>> result = thread.get()
1067
1277
 
1068
1278
  :param async_req bool
1069
- :param str project_id: (required)
1070
- :param str managed_endpoint_id: (required)
1071
- :param str name: (required)
1072
- :return: V1ManagedModel
1279
+ :param str model_name: (required)
1280
+ :param str user_name:
1281
+ :param str org_name:
1282
+ :param str model_provider:
1283
+ :param str model_display_name:
1284
+ :return: V1Assistant
1073
1285
  If the method is called asynchronously,
1074
1286
  returns the request thread.
1075
1287
  """
1076
1288
  kwargs['_return_http_data_only'] = True
1077
1289
  if kwargs.get('async_req'):
1078
- return self.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, **kwargs) # noqa: E501
1290
+ return self.assistants_service_get_managed_model_assistant_with_http_info(model_name, **kwargs) # noqa: E501
1079
1291
  else:
1080
- (data) = self.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, **kwargs) # noqa: E501
1292
+ (data) = self.assistants_service_get_managed_model_assistant_with_http_info(model_name, **kwargs) # noqa: E501
1081
1293
  return data
1082
1294
 
1083
- def assistants_service_get_managed_model_by_name_with_http_info(self, project_id: 'str', managed_endpoint_id: 'str', name: 'str', **kwargs) -> 'V1ManagedModel': # noqa: E501
1084
- """assistants_service_get_managed_model_by_name # noqa: E501
1295
+ def assistants_service_get_managed_model_assistant_with_http_info(self, model_name: 'str', **kwargs) -> 'V1Assistant': # noqa: E501
1296
+ """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1085
1297
 
1086
1298
  This method makes a synchronous HTTP request by default. To make an
1087
1299
  asynchronous HTTP request, please pass async_req=True
1088
- >>> thread = api.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, async_req=True)
1300
+ >>> thread = api.assistants_service_get_managed_model_assistant_with_http_info(model_name, async_req=True)
1089
1301
  >>> result = thread.get()
1090
1302
 
1091
1303
  :param async_req bool
1092
- :param str project_id: (required)
1093
- :param str managed_endpoint_id: (required)
1094
- :param str name: (required)
1095
- :return: V1ManagedModel
1304
+ :param str model_name: (required)
1305
+ :param str user_name:
1306
+ :param str org_name:
1307
+ :param str model_provider:
1308
+ :param str model_display_name:
1309
+ :return: V1Assistant
1096
1310
  If the method is called asynchronously,
1097
1311
  returns the request thread.
1098
1312
  """
1099
1313
 
1100
- all_params = ['project_id', 'managed_endpoint_id', 'name'] # noqa: E501
1314
+ all_params = ['model_name', 'user_name', 'org_name', 'model_provider', 'model_display_name'] # noqa: E501
1101
1315
  all_params.append('async_req')
1102
1316
  all_params.append('_return_http_data_only')
1103
1317
  all_params.append('_preload_content')
@@ -1108,14 +1322,224 @@ class AssistantsServiceApi(object):
1108
1322
  if key not in all_params:
1109
1323
  raise TypeError(
1110
1324
  "Got an unexpected keyword argument '%s'"
1111
- " to method assistants_service_get_managed_model_by_name" % key
1325
+ " to method assistants_service_get_managed_model_assistant" % key
1112
1326
  )
1113
1327
  params[key] = val
1114
1328
  del params['kwargs']
1115
- # verify the required parameter 'project_id' is set
1116
- if ('project_id' not in params or
1117
- params['project_id'] is None):
1118
- raise ValueError("Missing the required parameter `project_id` when calling `assistants_service_get_managed_model_by_name`") # noqa: E501
1329
+ # verify the required parameter 'model_name' is set
1330
+ if ('model_name' not in params or
1331
+ params['model_name'] is None):
1332
+ raise ValueError("Missing the required parameter `model_name` when calling `assistants_service_get_managed_model_assistant`") # noqa: E501
1333
+
1334
+ collection_formats = {}
1335
+
1336
+ path_params = {}
1337
+ if 'model_name' in params:
1338
+ path_params['modelName'] = params['model_name'] # noqa: E501
1339
+
1340
+ query_params = []
1341
+ if 'user_name' in params:
1342
+ query_params.append(('userName', params['user_name'])) # noqa: E501
1343
+ if 'org_name' in params:
1344
+ query_params.append(('orgName', params['org_name'])) # noqa: E501
1345
+ if 'model_provider' in params:
1346
+ query_params.append(('modelProvider', params['model_provider'])) # noqa: E501
1347
+ if 'model_display_name' in params:
1348
+ query_params.append(('modelDisplayName', params['model_display_name'])) # noqa: E501
1349
+
1350
+ header_params = {}
1351
+
1352
+ form_params = []
1353
+ local_var_files = {}
1354
+
1355
+ body_params = None
1356
+ # HTTP header `Accept`
1357
+ header_params['Accept'] = self.api_client.select_header_accept(
1358
+ ['application/json']) # noqa: E501
1359
+
1360
+ # Authentication setting
1361
+ auth_settings = [] # noqa: E501
1362
+
1363
+ return self.api_client.call_api(
1364
+ '/v1/agents/managed-model/{modelName}', 'GET',
1365
+ path_params,
1366
+ query_params,
1367
+ header_params,
1368
+ body=body_params,
1369
+ post_params=form_params,
1370
+ files=local_var_files,
1371
+ response_type='V1Assistant', # noqa: E501
1372
+ auth_settings=auth_settings,
1373
+ async_req=params.get('async_req'),
1374
+ _return_http_data_only=params.get('_return_http_data_only'),
1375
+ _preload_content=params.get('_preload_content', True),
1376
+ _request_timeout=params.get('_request_timeout'),
1377
+ collection_formats=collection_formats)
1378
+
1379
+ def assistants_service_get_managed_model_assistant2(self, **kwargs) -> 'V1Assistant': # noqa: E501
1380
+ """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1381
+
1382
+ This method makes a synchronous HTTP request by default. To make an
1383
+ asynchronous HTTP request, please pass async_req=True
1384
+ >>> thread = api.assistants_service_get_managed_model_assistant2(async_req=True)
1385
+ >>> result = thread.get()
1386
+
1387
+ :param async_req bool
1388
+ :param str user_name:
1389
+ :param str org_name:
1390
+ :param str model_provider:
1391
+ :param str model_name:
1392
+ :param str model_display_name:
1393
+ :return: V1Assistant
1394
+ If the method is called asynchronously,
1395
+ returns the request thread.
1396
+ """
1397
+ kwargs['_return_http_data_only'] = True
1398
+ if kwargs.get('async_req'):
1399
+ return self.assistants_service_get_managed_model_assistant2_with_http_info(**kwargs) # noqa: E501
1400
+ else:
1401
+ (data) = self.assistants_service_get_managed_model_assistant2_with_http_info(**kwargs) # noqa: E501
1402
+ return data
1403
+
1404
+ def assistants_service_get_managed_model_assistant2_with_http_info(self, **kwargs) -> 'V1Assistant': # noqa: E501
1405
+ """Each managed model has a dedicated assistant for direct interaction. By using user_name, org_name, or model_provider as query parameters, this endpoint retrieves that specific assistant only—excluding any other assistants that may use the same model. # noqa: E501
1406
+
1407
+ This method makes a synchronous HTTP request by default. To make an
1408
+ asynchronous HTTP request, please pass async_req=True
1409
+ >>> thread = api.assistants_service_get_managed_model_assistant2_with_http_info(async_req=True)
1410
+ >>> result = thread.get()
1411
+
1412
+ :param async_req bool
1413
+ :param str user_name:
1414
+ :param str org_name:
1415
+ :param str model_provider:
1416
+ :param str model_name:
1417
+ :param str model_display_name:
1418
+ :return: V1Assistant
1419
+ If the method is called asynchronously,
1420
+ returns the request thread.
1421
+ """
1422
+
1423
+ all_params = ['user_name', 'org_name', 'model_provider', 'model_name', 'model_display_name'] # noqa: E501
1424
+ all_params.append('async_req')
1425
+ all_params.append('_return_http_data_only')
1426
+ all_params.append('_preload_content')
1427
+ all_params.append('_request_timeout')
1428
+
1429
+ params = locals()
1430
+ for key, val in six.iteritems(params['kwargs']):
1431
+ if key not in all_params:
1432
+ raise TypeError(
1433
+ "Got an unexpected keyword argument '%s'"
1434
+ " to method assistants_service_get_managed_model_assistant2" % key
1435
+ )
1436
+ params[key] = val
1437
+ del params['kwargs']
1438
+
1439
+ collection_formats = {}
1440
+
1441
+ path_params = {}
1442
+
1443
+ query_params = []
1444
+ if 'user_name' in params:
1445
+ query_params.append(('userName', params['user_name'])) # noqa: E501
1446
+ if 'org_name' in params:
1447
+ query_params.append(('orgName', params['org_name'])) # noqa: E501
1448
+ if 'model_provider' in params:
1449
+ query_params.append(('modelProvider', params['model_provider'])) # noqa: E501
1450
+ if 'model_name' in params:
1451
+ query_params.append(('modelName', params['model_name'])) # noqa: E501
1452
+ if 'model_display_name' in params:
1453
+ query_params.append(('modelDisplayName', params['model_display_name'])) # noqa: E501
1454
+
1455
+ header_params = {}
1456
+
1457
+ form_params = []
1458
+ local_var_files = {}
1459
+
1460
+ body_params = None
1461
+ # HTTP header `Accept`
1462
+ header_params['Accept'] = self.api_client.select_header_accept(
1463
+ ['application/json']) # noqa: E501
1464
+
1465
+ # Authentication setting
1466
+ auth_settings = [] # noqa: E501
1467
+
1468
+ return self.api_client.call_api(
1469
+ '/v1/agents/managed-model', 'GET',
1470
+ path_params,
1471
+ query_params,
1472
+ header_params,
1473
+ body=body_params,
1474
+ post_params=form_params,
1475
+ files=local_var_files,
1476
+ response_type='V1Assistant', # noqa: E501
1477
+ auth_settings=auth_settings,
1478
+ async_req=params.get('async_req'),
1479
+ _return_http_data_only=params.get('_return_http_data_only'),
1480
+ _preload_content=params.get('_preload_content', True),
1481
+ _request_timeout=params.get('_request_timeout'),
1482
+ collection_formats=collection_formats)
1483
+
1484
+ def assistants_service_get_managed_model_by_name(self, project_id: 'str', managed_endpoint_id: 'str', name: 'str', **kwargs) -> 'V1ManagedModel': # noqa: E501
1485
+ """assistants_service_get_managed_model_by_name # noqa: E501
1486
+
1487
+ This method makes a synchronous HTTP request by default. To make an
1488
+ asynchronous HTTP request, please pass async_req=True
1489
+ >>> thread = api.assistants_service_get_managed_model_by_name(project_id, managed_endpoint_id, name, async_req=True)
1490
+ >>> result = thread.get()
1491
+
1492
+ :param async_req bool
1493
+ :param str project_id: (required)
1494
+ :param str managed_endpoint_id: (required)
1495
+ :param str name: (required)
1496
+ :return: V1ManagedModel
1497
+ If the method is called asynchronously,
1498
+ returns the request thread.
1499
+ """
1500
+ kwargs['_return_http_data_only'] = True
1501
+ if kwargs.get('async_req'):
1502
+ return self.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, **kwargs) # noqa: E501
1503
+ else:
1504
+ (data) = self.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, **kwargs) # noqa: E501
1505
+ return data
1506
+
1507
+ def assistants_service_get_managed_model_by_name_with_http_info(self, project_id: 'str', managed_endpoint_id: 'str', name: 'str', **kwargs) -> 'V1ManagedModel': # noqa: E501
1508
+ """assistants_service_get_managed_model_by_name # noqa: E501
1509
+
1510
+ This method makes a synchronous HTTP request by default. To make an
1511
+ asynchronous HTTP request, please pass async_req=True
1512
+ >>> thread = api.assistants_service_get_managed_model_by_name_with_http_info(project_id, managed_endpoint_id, name, async_req=True)
1513
+ >>> result = thread.get()
1514
+
1515
+ :param async_req bool
1516
+ :param str project_id: (required)
1517
+ :param str managed_endpoint_id: (required)
1518
+ :param str name: (required)
1519
+ :return: V1ManagedModel
1520
+ If the method is called asynchronously,
1521
+ returns the request thread.
1522
+ """
1523
+
1524
+ all_params = ['project_id', 'managed_endpoint_id', 'name'] # noqa: E501
1525
+ all_params.append('async_req')
1526
+ all_params.append('_return_http_data_only')
1527
+ all_params.append('_preload_content')
1528
+ all_params.append('_request_timeout')
1529
+
1530
+ params = locals()
1531
+ for key, val in six.iteritems(params['kwargs']):
1532
+ if key not in all_params:
1533
+ raise TypeError(
1534
+ "Got an unexpected keyword argument '%s'"
1535
+ " to method assistants_service_get_managed_model_by_name" % key
1536
+ )
1537
+ params[key] = val
1538
+ del params['kwargs']
1539
+ # verify the required parameter 'project_id' is set
1540
+ if ('project_id' not in params or
1541
+ params['project_id'] is None):
1542
+ raise ValueError("Missing the required parameter `project_id` when calling `assistants_service_get_managed_model_by_name`") # noqa: E501
1119
1543
  # verify the required parameter 'managed_endpoint_id' is set
1120
1544
  if ('managed_endpoint_id' not in params or
1121
1545
  params['managed_endpoint_id'] is None):
@@ -1166,43 +1590,146 @@ class AssistantsServiceApi(object):
1166
1590
  _request_timeout=params.get('_request_timeout'),
1167
1591
  collection_formats=collection_formats)
1168
1592
 
1169
- def assistants_service_get_published_managed_endpoint_by_model_id(self, id: 'str', **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1170
- """GetPublishedManagedEndpointModel returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1593
+ def assistants_service_get_model_metrics(self, model_id: 'str', **kwargs) -> 'V1GetModelMetricsResponse': # noqa: E501
1594
+ """assistants_service_get_model_metrics # noqa: E501
1171
1595
 
1172
1596
  This method makes a synchronous HTTP request by default. To make an
1173
1597
  asynchronous HTTP request, please pass async_req=True
1174
- >>> thread = api.assistants_service_get_published_managed_endpoint_by_model_id(id, async_req=True)
1598
+ >>> thread = api.assistants_service_get_model_metrics(model_id, async_req=True)
1175
1599
  >>> result = thread.get()
1176
1600
 
1177
1601
  :param async_req bool
1178
- :param str id: (required)
1602
+ :param str model_id: (required)
1603
+ :param datetime _from:
1604
+ :param datetime to:
1605
+ :return: V1GetModelMetricsResponse
1606
+ If the method is called asynchronously,
1607
+ returns the request thread.
1608
+ """
1609
+ kwargs['_return_http_data_only'] = True
1610
+ if kwargs.get('async_req'):
1611
+ return self.assistants_service_get_model_metrics_with_http_info(model_id, **kwargs) # noqa: E501
1612
+ else:
1613
+ (data) = self.assistants_service_get_model_metrics_with_http_info(model_id, **kwargs) # noqa: E501
1614
+ return data
1615
+
1616
+ def assistants_service_get_model_metrics_with_http_info(self, model_id: 'str', **kwargs) -> 'V1GetModelMetricsResponse': # noqa: E501
1617
+ """assistants_service_get_model_metrics # noqa: E501
1618
+
1619
+ This method makes a synchronous HTTP request by default. To make an
1620
+ asynchronous HTTP request, please pass async_req=True
1621
+ >>> thread = api.assistants_service_get_model_metrics_with_http_info(model_id, async_req=True)
1622
+ >>> result = thread.get()
1623
+
1624
+ :param async_req bool
1625
+ :param str model_id: (required)
1626
+ :param datetime _from:
1627
+ :param datetime to:
1628
+ :return: V1GetModelMetricsResponse
1629
+ If the method is called asynchronously,
1630
+ returns the request thread.
1631
+ """
1632
+
1633
+ all_params = ['model_id', '_from', 'to'] # noqa: E501
1634
+ all_params.append('async_req')
1635
+ all_params.append('_return_http_data_only')
1636
+ all_params.append('_preload_content')
1637
+ all_params.append('_request_timeout')
1638
+
1639
+ params = locals()
1640
+ for key, val in six.iteritems(params['kwargs']):
1641
+ if key not in all_params:
1642
+ raise TypeError(
1643
+ "Got an unexpected keyword argument '%s'"
1644
+ " to method assistants_service_get_model_metrics" % key
1645
+ )
1646
+ params[key] = val
1647
+ del params['kwargs']
1648
+ # verify the required parameter 'model_id' is set
1649
+ if ('model_id' not in params or
1650
+ params['model_id'] is None):
1651
+ raise ValueError("Missing the required parameter `model_id` when calling `assistants_service_get_model_metrics`") # noqa: E501
1652
+
1653
+ collection_formats = {}
1654
+
1655
+ path_params = {}
1656
+ if 'model_id' in params:
1657
+ path_params['modelId'] = params['model_id'] # noqa: E501
1658
+
1659
+ query_params = []
1660
+ if '_from' in params:
1661
+ query_params.append(('from', params['_from'])) # noqa: E501
1662
+ if 'to' in params:
1663
+ query_params.append(('to', params['to'])) # noqa: E501
1664
+
1665
+ header_params = {}
1666
+
1667
+ form_params = []
1668
+ local_var_files = {}
1669
+
1670
+ body_params = None
1671
+ # HTTP header `Accept`
1672
+ header_params['Accept'] = self.api_client.select_header_accept(
1673
+ ['application/json']) # noqa: E501
1674
+
1675
+ # Authentication setting
1676
+ auth_settings = [] # noqa: E501
1677
+
1678
+ return self.api_client.call_api(
1679
+ '/v1/agents/metrics/models/{modelId}', 'GET',
1680
+ path_params,
1681
+ query_params,
1682
+ header_params,
1683
+ body=body_params,
1684
+ post_params=form_params,
1685
+ files=local_var_files,
1686
+ response_type='V1GetModelMetricsResponse', # noqa: E501
1687
+ auth_settings=auth_settings,
1688
+ async_req=params.get('async_req'),
1689
+ _return_http_data_only=params.get('_return_http_data_only'),
1690
+ _preload_content=params.get('_preload_content', True),
1691
+ _request_timeout=params.get('_request_timeout'),
1692
+ collection_formats=collection_formats)
1693
+
1694
+ def assistants_service_get_published_managed_endpoint(self, **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1695
+ """GetPublishedManagedEndpoint returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1696
+
1697
+ This method makes a synchronous HTTP request by default. To make an
1698
+ asynchronous HTTP request, please pass async_req=True
1699
+ >>> thread = api.assistants_service_get_published_managed_endpoint(async_req=True)
1700
+ >>> result = thread.get()
1701
+
1702
+ :param async_req bool
1703
+ :param str id:
1704
+ :param str name:
1179
1705
  :return: V1ManagedEndpoint
1180
1706
  If the method is called asynchronously,
1181
1707
  returns the request thread.
1182
1708
  """
1183
1709
  kwargs['_return_http_data_only'] = True
1184
1710
  if kwargs.get('async_req'):
1185
- return self.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, **kwargs) # noqa: E501
1711
+ return self.assistants_service_get_published_managed_endpoint_with_http_info(**kwargs) # noqa: E501
1186
1712
  else:
1187
- (data) = self.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, **kwargs) # noqa: E501
1713
+ (data) = self.assistants_service_get_published_managed_endpoint_with_http_info(**kwargs) # noqa: E501
1188
1714
  return data
1189
1715
 
1190
- def assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(self, id: 'str', **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1191
- """GetPublishedManagedEndpointModel returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1716
+ def assistants_service_get_published_managed_endpoint_with_http_info(self, **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1717
+ """GetPublishedManagedEndpoint returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1192
1718
 
1193
1719
  This method makes a synchronous HTTP request by default. To make an
1194
1720
  asynchronous HTTP request, please pass async_req=True
1195
- >>> thread = api.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, async_req=True)
1721
+ >>> thread = api.assistants_service_get_published_managed_endpoint_with_http_info(async_req=True)
1196
1722
  >>> result = thread.get()
1197
1723
 
1198
1724
  :param async_req bool
1199
- :param str id: (required)
1725
+ :param str id:
1726
+ :param str name:
1200
1727
  :return: V1ManagedEndpoint
1201
1728
  If the method is called asynchronously,
1202
1729
  returns the request thread.
1203
1730
  """
1204
1731
 
1205
- all_params = ['id'] # noqa: E501
1732
+ all_params = ['id', 'name'] # noqa: E501
1206
1733
  all_params.append('async_req')
1207
1734
  all_params.append('_return_http_data_only')
1208
1735
  all_params.append('_preload_content')
@@ -1213,22 +1740,20 @@ class AssistantsServiceApi(object):
1213
1740
  if key not in all_params:
1214
1741
  raise TypeError(
1215
1742
  "Got an unexpected keyword argument '%s'"
1216
- " to method assistants_service_get_published_managed_endpoint_by_model_id" % key
1743
+ " to method assistants_service_get_published_managed_endpoint" % key
1217
1744
  )
1218
1745
  params[key] = val
1219
1746
  del params['kwargs']
1220
- # verify the required parameter 'id' is set
1221
- if ('id' not in params or
1222
- params['id'] is None):
1223
- raise ValueError("Missing the required parameter `id` when calling `assistants_service_get_published_managed_endpoint_by_model_id`") # noqa: E501
1224
1747
 
1225
1748
  collection_formats = {}
1226
1749
 
1227
1750
  path_params = {}
1228
- if 'id' in params:
1229
- path_params['id'] = params['id'] # noqa: E501
1230
1751
 
1231
1752
  query_params = []
1753
+ if 'id' in params:
1754
+ query_params.append(('id', params['id'])) # noqa: E501
1755
+ if 'name' in params:
1756
+ query_params.append(('name', params['name'])) # noqa: E501
1232
1757
 
1233
1758
  header_params = {}
1234
1759
 
@@ -1244,7 +1769,7 @@ class AssistantsServiceApi(object):
1244
1769
  auth_settings = [] # noqa: E501
1245
1770
 
1246
1771
  return self.api_client.call_api(
1247
- '/v1/agent-published-managed-model/{id}', 'GET',
1772
+ '/v1/agent-published-managed-model', 'GET',
1248
1773
  path_params,
1249
1774
  query_params,
1250
1775
  header_params,
@@ -1469,6 +1994,119 @@ class AssistantsServiceApi(object):
1469
1994
  _request_timeout=params.get('_request_timeout'),
1470
1995
  collection_formats=collection_formats)
1471
1996
 
1997
+ def assistants_service_list_conversation_message_actions(self, assistant_id: 'str', conversation_id: 'str', message_id: 'str', **kwargs) -> 'V1ListConversationMessageActionsResponse': # noqa: E501
1998
+ """assistants_service_list_conversation_message_actions # noqa: E501
1999
+
2000
+ This method makes a synchronous HTTP request by default. To make an
2001
+ asynchronous HTTP request, please pass async_req=True
2002
+ >>> thread = api.assistants_service_list_conversation_message_actions(assistant_id, conversation_id, message_id, async_req=True)
2003
+ >>> result = thread.get()
2004
+
2005
+ :param async_req bool
2006
+ :param str assistant_id: (required)
2007
+ :param str conversation_id: (required)
2008
+ :param str message_id: (required)
2009
+ :param str project_id:
2010
+ :return: V1ListConversationMessageActionsResponse
2011
+ If the method is called asynchronously,
2012
+ returns the request thread.
2013
+ """
2014
+ kwargs['_return_http_data_only'] = True
2015
+ if kwargs.get('async_req'):
2016
+ return self.assistants_service_list_conversation_message_actions_with_http_info(assistant_id, conversation_id, message_id, **kwargs) # noqa: E501
2017
+ else:
2018
+ (data) = self.assistants_service_list_conversation_message_actions_with_http_info(assistant_id, conversation_id, message_id, **kwargs) # noqa: E501
2019
+ return data
2020
+
2021
+ def assistants_service_list_conversation_message_actions_with_http_info(self, assistant_id: 'str', conversation_id: 'str', message_id: 'str', **kwargs) -> 'V1ListConversationMessageActionsResponse': # noqa: E501
2022
+ """assistants_service_list_conversation_message_actions # noqa: E501
2023
+
2024
+ This method makes a synchronous HTTP request by default. To make an
2025
+ asynchronous HTTP request, please pass async_req=True
2026
+ >>> thread = api.assistants_service_list_conversation_message_actions_with_http_info(assistant_id, conversation_id, message_id, async_req=True)
2027
+ >>> result = thread.get()
2028
+
2029
+ :param async_req bool
2030
+ :param str assistant_id: (required)
2031
+ :param str conversation_id: (required)
2032
+ :param str message_id: (required)
2033
+ :param str project_id:
2034
+ :return: V1ListConversationMessageActionsResponse
2035
+ If the method is called asynchronously,
2036
+ returns the request thread.
2037
+ """
2038
+
2039
+ all_params = ['assistant_id', 'conversation_id', 'message_id', 'project_id'] # noqa: E501
2040
+ all_params.append('async_req')
2041
+ all_params.append('_return_http_data_only')
2042
+ all_params.append('_preload_content')
2043
+ all_params.append('_request_timeout')
2044
+
2045
+ params = locals()
2046
+ for key, val in six.iteritems(params['kwargs']):
2047
+ if key not in all_params:
2048
+ raise TypeError(
2049
+ "Got an unexpected keyword argument '%s'"
2050
+ " to method assistants_service_list_conversation_message_actions" % key
2051
+ )
2052
+ params[key] = val
2053
+ del params['kwargs']
2054
+ # verify the required parameter 'assistant_id' is set
2055
+ if ('assistant_id' not in params or
2056
+ params['assistant_id'] is None):
2057
+ raise ValueError("Missing the required parameter `assistant_id` when calling `assistants_service_list_conversation_message_actions`") # noqa: E501
2058
+ # verify the required parameter 'conversation_id' is set
2059
+ if ('conversation_id' not in params or
2060
+ params['conversation_id'] is None):
2061
+ raise ValueError("Missing the required parameter `conversation_id` when calling `assistants_service_list_conversation_message_actions`") # noqa: E501
2062
+ # verify the required parameter 'message_id' is set
2063
+ if ('message_id' not in params or
2064
+ params['message_id'] is None):
2065
+ raise ValueError("Missing the required parameter `message_id` when calling `assistants_service_list_conversation_message_actions`") # noqa: E501
2066
+
2067
+ collection_formats = {}
2068
+
2069
+ path_params = {}
2070
+ if 'assistant_id' in params:
2071
+ path_params['assistantId'] = params['assistant_id'] # noqa: E501
2072
+ if 'conversation_id' in params:
2073
+ path_params['conversationId'] = params['conversation_id'] # noqa: E501
2074
+ if 'message_id' in params:
2075
+ path_params['messageId'] = params['message_id'] # noqa: E501
2076
+
2077
+ query_params = []
2078
+ if 'project_id' in params:
2079
+ query_params.append(('projectId', params['project_id'])) # noqa: E501
2080
+
2081
+ header_params = {}
2082
+
2083
+ form_params = []
2084
+ local_var_files = {}
2085
+
2086
+ body_params = None
2087
+ # HTTP header `Accept`
2088
+ header_params['Accept'] = self.api_client.select_header_accept(
2089
+ ['application/json']) # noqa: E501
2090
+
2091
+ # Authentication setting
2092
+ auth_settings = [] # noqa: E501
2093
+
2094
+ return self.api_client.call_api(
2095
+ '/v1/agents/{assistantId}/conversations/{conversationId}/messages/{messageId}/actions', 'GET',
2096
+ path_params,
2097
+ query_params,
2098
+ header_params,
2099
+ body=body_params,
2100
+ post_params=form_params,
2101
+ files=local_var_files,
2102
+ response_type='V1ListConversationMessageActionsResponse', # noqa: E501
2103
+ auth_settings=auth_settings,
2104
+ async_req=params.get('async_req'),
2105
+ _return_http_data_only=params.get('_return_http_data_only'),
2106
+ _preload_content=params.get('_preload_content', True),
2107
+ _request_timeout=params.get('_request_timeout'),
2108
+ collection_formats=collection_formats)
2109
+
1472
2110
  def assistants_service_list_conversations(self, assistant_id: 'str', **kwargs) -> 'V1ListConversationsResponse': # noqa: E501
1473
2111
  """Conversations # noqa: E501
1474
2112