cosmotech-api 3.2.0.post1__py3-none-any.whl → 5.0.0rc3__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 (284) hide show
  1. cosmotech_api/__init__.py +180 -130
  2. cosmotech_api/api/__init__.py +1 -4
  3. cosmotech_api/api/connector_api.py +31 -27
  4. cosmotech_api/api/dataset_api.py +1762 -3918
  5. cosmotech_api/api/meta_api.py +281 -0
  6. cosmotech_api/api/organization_api.py +654 -1460
  7. cosmotech_api/api/run_api.py +170 -817
  8. cosmotech_api/api/runner_api.py +688 -631
  9. cosmotech_api/api/scenario_api.py +141 -121
  10. cosmotech_api/api/scenariorun_api.py +76 -66
  11. cosmotech_api/api/scenariorunresult_api.py +341 -659
  12. cosmotech_api/api/solution_api.py +2504 -956
  13. cosmotech_api/api/twingraph_api.py +83 -72
  14. cosmotech_api/api/validator_api.py +1249 -2501
  15. cosmotech_api/api/workspace_api.py +835 -1658
  16. cosmotech_api/api_client.py +79 -33
  17. cosmotech_api/configuration.py +185 -48
  18. cosmotech_api/exceptions.py +18 -1
  19. cosmotech_api/model/component_role_permissions.py +1 -1
  20. cosmotech_api/model/connector.py +1 -1
  21. cosmotech_api/model/connector_parameter.py +1 -1
  22. cosmotech_api/model/connector_parameter_group.py +1 -1
  23. cosmotech_api/model/container_resource_size_info.py +1 -1
  24. cosmotech_api/model/container_resource_sizing.py +1 -1
  25. cosmotech_api/model/dataset.py +1 -1
  26. cosmotech_api/model/dataset_access_control.py +1 -1
  27. cosmotech_api/model/dataset_compatibility.py +1 -1
  28. cosmotech_api/model/dataset_connector.py +1 -1
  29. cosmotech_api/model/dataset_copy_parameters.py +1 -1
  30. cosmotech_api/model/dataset_role.py +1 -1
  31. cosmotech_api/model/dataset_search.py +1 -1
  32. cosmotech_api/model/dataset_security.py +1 -1
  33. cosmotech_api/model/dataset_source_type.py +1 -1
  34. cosmotech_api/model/dataset_twin_graph_hash.py +1 -1
  35. cosmotech_api/model/dataset_twin_graph_info.py +1 -1
  36. cosmotech_api/model/dataset_twin_graph_query.py +1 -1
  37. cosmotech_api/model/delete_historical_data.py +1 -1
  38. cosmotech_api/model/file_upload_metadata.py +1 -1
  39. cosmotech_api/model/file_upload_validation.py +1 -1
  40. cosmotech_api/model/graph_properties.py +1 -1
  41. cosmotech_api/model/organization.py +1 -1
  42. cosmotech_api/model/organization_access_control.py +1 -1
  43. cosmotech_api/model/organization_role.py +1 -1
  44. cosmotech_api/model/organization_security.py +1 -1
  45. cosmotech_api/model/organization_service.py +1 -1
  46. cosmotech_api/model/organization_services.py +1 -1
  47. cosmotech_api/model/resource_size_info.py +1 -1
  48. cosmotech_api/model/run.py +1 -1
  49. cosmotech_api/model/run_container.py +1 -1
  50. cosmotech_api/model/run_container_artifact.py +1 -1
  51. cosmotech_api/model/run_container_logs.py +1 -1
  52. cosmotech_api/model/run_logs.py +1 -1
  53. cosmotech_api/model/run_resource_requested.py +1 -1
  54. cosmotech_api/model/run_search.py +1 -1
  55. cosmotech_api/model/run_start_containers.py +1 -1
  56. cosmotech_api/model/run_state.py +1 -1
  57. cosmotech_api/model/run_status.py +1 -1
  58. cosmotech_api/model/run_status_node.py +1 -1
  59. cosmotech_api/model/run_template.py +1 -1
  60. cosmotech_api/model/run_template_handler_id.py +1 -1
  61. cosmotech_api/model/run_template_orchestrator.py +1 -1
  62. cosmotech_api/model/run_template_parameter.py +1 -1
  63. cosmotech_api/model/run_template_parameter_group.py +1 -1
  64. cosmotech_api/model/run_template_parameter_value.py +1 -1
  65. cosmotech_api/model/run_template_resource_sizing.py +1 -1
  66. cosmotech_api/model/run_template_step_source.py +1 -1
  67. cosmotech_api/model/runner.py +1 -1
  68. cosmotech_api/model/runner_access_control.py +1 -1
  69. cosmotech_api/model/runner_changed_parameter_value.py +1 -1
  70. cosmotech_api/model/runner_comparison_result.py +1 -1
  71. cosmotech_api/model/runner_data_download_info.py +1 -1
  72. cosmotech_api/model/runner_data_download_job.py +1 -1
  73. cosmotech_api/model/runner_job_state.py +1 -1
  74. cosmotech_api/model/runner_last_run.py +1 -1
  75. cosmotech_api/model/runner_resource_sizing.py +1 -1
  76. cosmotech_api/model/runner_role.py +1 -1
  77. cosmotech_api/model/runner_run_template_parameter_value.py +1 -1
  78. cosmotech_api/model/runner_security.py +1 -1
  79. cosmotech_api/model/runner_validation_status.py +1 -1
  80. cosmotech_api/model/scenario.py +1 -1
  81. cosmotech_api/model/scenario_access_control.py +1 -1
  82. cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
  83. cosmotech_api/model/scenario_comparison_result.py +1 -1
  84. cosmotech_api/model/scenario_data_download_info.py +1 -1
  85. cosmotech_api/model/scenario_data_download_job.py +1 -1
  86. cosmotech_api/model/scenario_job_state.py +1 -1
  87. cosmotech_api/model/scenario_last_run.py +1 -1
  88. cosmotech_api/model/scenario_resource_sizing.py +1 -1
  89. cosmotech_api/model/scenario_role.py +1 -1
  90. cosmotech_api/model/scenario_run.py +1 -1
  91. cosmotech_api/model/scenario_run_container.py +1 -1
  92. cosmotech_api/model/scenario_run_container_artifact.py +1 -1
  93. cosmotech_api/model/scenario_run_container_logs.py +1 -1
  94. cosmotech_api/model/scenario_run_logs.py +1 -1
  95. cosmotech_api/model/scenario_run_resource_requested.py +1 -1
  96. cosmotech_api/model/scenario_run_result.py +1 -1
  97. cosmotech_api/model/scenario_run_search.py +1 -1
  98. cosmotech_api/model/scenario_run_start_containers.py +1 -1
  99. cosmotech_api/model/scenario_run_state.py +1 -1
  100. cosmotech_api/model/scenario_run_status.py +1 -1
  101. cosmotech_api/model/scenario_run_status_node.py +1 -1
  102. cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
  103. cosmotech_api/model/scenario_security.py +1 -1
  104. cosmotech_api/model/scenario_validation_status.py +1 -1
  105. cosmotech_api/model/solution.py +1 -1
  106. cosmotech_api/model/solution_access_control.py +1 -1
  107. cosmotech_api/model/solution_role.py +1 -1
  108. cosmotech_api/model/solution_security.py +1 -1
  109. cosmotech_api/model/source_info.py +1 -1
  110. cosmotech_api/model/sub_dataset_graph_query.py +1 -1
  111. cosmotech_api/model/translated_labels.py +1 -1
  112. cosmotech_api/model/twin_graph_batch_result.py +1 -1
  113. cosmotech_api/model/twin_graph_hash.py +1 -1
  114. cosmotech_api/model/twin_graph_query.py +1 -1
  115. cosmotech_api/model/validator.py +1 -1
  116. cosmotech_api/model/validator_run.py +1 -1
  117. cosmotech_api/model/workspace.py +1 -1
  118. cosmotech_api/model/workspace_access_control.py +1 -1
  119. cosmotech_api/model/workspace_file.py +1 -1
  120. cosmotech_api/model/workspace_role.py +1 -1
  121. cosmotech_api/model/workspace_secret.py +1 -1
  122. cosmotech_api/model/workspace_security.py +1 -1
  123. cosmotech_api/model/workspace_solution.py +1 -1
  124. cosmotech_api/model/workspace_web_app.py +1 -1
  125. cosmotech_api/model_utils.py +1 -1
  126. cosmotech_api/models/__init__.py +33 -72
  127. cosmotech_api/models/about_info.py +92 -0
  128. cosmotech_api/models/about_info_version.py +100 -0
  129. cosmotech_api/models/component_role_permissions.py +11 -11
  130. cosmotech_api/models/connector.py +12 -22
  131. cosmotech_api/models/connector_parameter.py +7 -7
  132. cosmotech_api/models/connector_parameter_group.py +10 -10
  133. cosmotech_api/models/container_resource_size_info.py +7 -7
  134. cosmotech_api/models/container_resource_sizing.py +7 -7
  135. cosmotech_api/models/create_info.py +103 -0
  136. cosmotech_api/models/created_run.py +88 -0
  137. cosmotech_api/models/dataset.py +47 -103
  138. cosmotech_api/models/dataset_access_control.py +7 -7
  139. cosmotech_api/models/dataset_compatibility.py +7 -7
  140. cosmotech_api/models/dataset_connector.py +7 -7
  141. cosmotech_api/models/dataset_copy_parameters.py +7 -7
  142. cosmotech_api/models/dataset_create_info.py +103 -0
  143. cosmotech_api/models/dataset_create_request.py +111 -0
  144. cosmotech_api/models/dataset_edit_info.py +90 -0
  145. cosmotech_api/models/dataset_part.py +132 -0
  146. cosmotech_api/models/dataset_part_create_request.py +100 -0
  147. cosmotech_api/models/dataset_part_type_enum.py +38 -0
  148. cosmotech_api/models/dataset_part_update_request.py +95 -0
  149. cosmotech_api/models/dataset_role.py +7 -7
  150. cosmotech_api/models/dataset_search.py +7 -7
  151. cosmotech_api/models/dataset_security.py +10 -10
  152. cosmotech_api/models/dataset_source_type.py +1 -1
  153. cosmotech_api/models/dataset_twin_graph_hash.py +7 -7
  154. cosmotech_api/models/dataset_twin_graph_info.py +7 -7
  155. cosmotech_api/models/dataset_twin_graph_query.py +7 -7
  156. cosmotech_api/models/dataset_update_request.py +105 -0
  157. cosmotech_api/models/delete_historical_data.py +7 -7
  158. cosmotech_api/models/edit_info.py +90 -0
  159. cosmotech_api/models/file_upload_metadata.py +7 -7
  160. cosmotech_api/models/file_upload_validation.py +13 -13
  161. cosmotech_api/models/graph_properties.py +7 -7
  162. cosmotech_api/models/ingestion_status_enum.py +40 -0
  163. cosmotech_api/models/io_types_enum.py +38 -0
  164. cosmotech_api/models/last_run_info.py +100 -0
  165. cosmotech_api/models/organization.py +24 -23
  166. cosmotech_api/models/organization_access_control.py +10 -10
  167. cosmotech_api/models/organization_create_request.py +95 -0
  168. cosmotech_api/models/organization_edit_info.py +90 -0
  169. cosmotech_api/models/organization_role.py +9 -9
  170. cosmotech_api/models/organization_security.py +13 -13
  171. cosmotech_api/models/organization_service.py +7 -7
  172. cosmotech_api/models/organization_services.py +7 -7
  173. cosmotech_api/models/organization_update_request.py +89 -0
  174. cosmotech_api/models/query_result.py +7 -7
  175. cosmotech_api/models/resource_size_info.py +7 -7
  176. cosmotech_api/models/run.py +20 -22
  177. cosmotech_api/models/run_container.py +9 -19
  178. cosmotech_api/models/run_container_artifact.py +7 -7
  179. cosmotech_api/models/run_container_logs.py +7 -7
  180. cosmotech_api/models/run_data.py +7 -7
  181. cosmotech_api/models/run_data_query.py +7 -7
  182. cosmotech_api/models/run_edit_info.py +90 -0
  183. cosmotech_api/models/run_logs.py +10 -10
  184. cosmotech_api/models/run_logs_entry.py +88 -0
  185. cosmotech_api/models/run_resource_requested.py +7 -7
  186. cosmotech_api/models/run_search.py +9 -18
  187. cosmotech_api/models/run_search_state.py +46 -0
  188. cosmotech_api/models/run_start_containers.py +10 -10
  189. cosmotech_api/models/run_state.py +2 -1
  190. cosmotech_api/models/run_status.py +17 -11
  191. cosmotech_api/models/run_status_node.py +7 -7
  192. cosmotech_api/models/run_template.py +20 -75
  193. cosmotech_api/models/run_template_create_request.py +109 -0
  194. cosmotech_api/models/run_template_handler_id.py +1 -1
  195. cosmotech_api/models/run_template_orchestrator.py +1 -1
  196. cosmotech_api/models/run_template_parameter.py +21 -20
  197. cosmotech_api/models/run_template_parameter_create_request.py +103 -0
  198. cosmotech_api/models/run_template_parameter_group.py +17 -18
  199. cosmotech_api/models/run_template_parameter_group_create_request.py +97 -0
  200. cosmotech_api/models/run_template_parameter_group_update_request.py +94 -0
  201. cosmotech_api/models/run_template_parameter_update_request.py +101 -0
  202. cosmotech_api/models/run_template_parameter_value.py +7 -7
  203. cosmotech_api/models/run_template_resource_sizing.py +8 -8
  204. cosmotech_api/models/run_template_step_source.py +1 -1
  205. cosmotech_api/models/run_template_update_request.py +107 -0
  206. cosmotech_api/models/runner.py +48 -62
  207. cosmotech_api/models/runner_access_control.py +7 -7
  208. cosmotech_api/models/runner_changed_parameter_value.py +7 -7
  209. cosmotech_api/models/runner_comparison_result.py +10 -10
  210. cosmotech_api/models/runner_create_request.py +146 -0
  211. cosmotech_api/models/runner_data_download_info.py +7 -7
  212. cosmotech_api/models/runner_data_download_job.py +7 -7
  213. cosmotech_api/models/runner_datasets.py +92 -0
  214. cosmotech_api/models/runner_edit_info.py +90 -0
  215. cosmotech_api/models/runner_job_state.py +1 -1
  216. cosmotech_api/models/runner_last_run.py +7 -7
  217. cosmotech_api/models/runner_parent_last_run.py +7 -7
  218. cosmotech_api/models/runner_resource_sizing.py +7 -7
  219. cosmotech_api/models/runner_role.py +7 -7
  220. cosmotech_api/models/runner_root_last_run.py +7 -7
  221. cosmotech_api/models/runner_run_template_parameter_value.py +7 -9
  222. cosmotech_api/models/runner_security.py +10 -10
  223. cosmotech_api/models/runner_update_request.py +119 -0
  224. cosmotech_api/models/runner_validation_status.py +1 -1
  225. cosmotech_api/models/scenario.py +10 -10
  226. cosmotech_api/models/scenario_access_control.py +7 -7
  227. cosmotech_api/models/scenario_changed_parameter_value.py +7 -7
  228. cosmotech_api/models/scenario_comparison_result.py +10 -10
  229. cosmotech_api/models/scenario_data_download_info.py +7 -7
  230. cosmotech_api/models/scenario_data_download_job.py +7 -7
  231. cosmotech_api/models/scenario_job_state.py +1 -1
  232. cosmotech_api/models/scenario_last_run.py +7 -7
  233. cosmotech_api/models/scenario_resource_sizing.py +7 -7
  234. cosmotech_api/models/scenario_role.py +7 -7
  235. cosmotech_api/models/scenario_run.py +13 -13
  236. cosmotech_api/models/scenario_run_container.py +10 -10
  237. cosmotech_api/models/scenario_run_container_artifact.py +7 -7
  238. cosmotech_api/models/scenario_run_container_logs.py +7 -7
  239. cosmotech_api/models/scenario_run_logs.py +10 -10
  240. cosmotech_api/models/scenario_run_resource_requested.py +7 -7
  241. cosmotech_api/models/scenario_run_search.py +9 -18
  242. cosmotech_api/models/scenario_run_search_state.py +46 -0
  243. cosmotech_api/models/scenario_run_start_containers.py +10 -10
  244. cosmotech_api/models/scenario_run_state.py +1 -1
  245. cosmotech_api/models/scenario_run_status.py +10 -10
  246. cosmotech_api/models/scenario_run_status_node.py +7 -7
  247. cosmotech_api/models/scenario_run_template_parameter_value.py +7 -7
  248. cosmotech_api/models/scenario_security.py +10 -10
  249. cosmotech_api/models/scenario_validation_status.py +1 -1
  250. cosmotech_api/models/send_run_data_request.py +7 -7
  251. cosmotech_api/models/solution.py +60 -44
  252. cosmotech_api/models/solution_access_control.py +10 -10
  253. cosmotech_api/models/solution_create_request.py +139 -0
  254. cosmotech_api/models/solution_edit_info.py +90 -0
  255. cosmotech_api/models/solution_file.py +88 -0
  256. cosmotech_api/models/solution_role.py +9 -9
  257. cosmotech_api/models/solution_security.py +13 -13
  258. cosmotech_api/models/solution_update_request.py +133 -0
  259. cosmotech_api/models/source_info.py +7 -7
  260. cosmotech_api/models/sub_dataset_graph_query.py +7 -7
  261. cosmotech_api/models/twin_graph_batch_result.py +7 -7
  262. cosmotech_api/models/twin_graph_hash.py +7 -7
  263. cosmotech_api/models/twin_graph_query.py +7 -7
  264. cosmotech_api/models/twincache_status_enum.py +38 -0
  265. cosmotech_api/models/validator.py +7 -7
  266. cosmotech_api/models/workspace.py +46 -42
  267. cosmotech_api/models/workspace_access_control.py +10 -10
  268. cosmotech_api/models/workspace_create_request.py +113 -0
  269. cosmotech_api/models/workspace_edit_info.py +90 -0
  270. cosmotech_api/models/workspace_file.py +10 -10
  271. cosmotech_api/models/workspace_role.py +9 -9
  272. cosmotech_api/models/workspace_secret.py +7 -7
  273. cosmotech_api/models/workspace_security.py +13 -13
  274. cosmotech_api/models/workspace_solution.py +33 -15
  275. cosmotech_api/models/workspace_update_request.py +105 -0
  276. cosmotech_api/models/workspace_web_app.py +7 -7
  277. cosmotech_api/rest.py +5 -2
  278. cosmotech_api-5.0.0rc3.dist-info/METADATA +314 -0
  279. cosmotech_api-5.0.0rc3.dist-info/RECORD +297 -0
  280. {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info}/WHEEL +1 -1
  281. {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info/licenses}/LICENSE +1 -1
  282. cosmotech_api-3.2.0.post1.dist-info/METADATA +0 -18
  283. cosmotech_api-3.2.0.post1.dist-info/RECORD +0 -255
  284. {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info}/top_level.txt +0 -0
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 3.3.6
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictInt, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from cosmotech_api.models.scenario_run_resource_requested import ScenarioRunResourceRequested
24
24
  from typing import Optional, Set
@@ -42,11 +42,11 @@ class ScenarioRunStatusNode(BaseModel):
42
42
  end_time: Optional[StrictStr] = Field(default=None, description="the node end time", alias="endTime")
43
43
  __properties: ClassVar[List[str]] = ["id", "name", "containerName", "outboundNodes", "resourcesDuration", "estimatedDuration", "hostNodeName", "message", "phase", "progress", "startTime", "endTime"]
44
44
 
45
- model_config = {
46
- "populate_by_name": True,
47
- "validate_assignment": True,
48
- "protected_namespaces": (),
49
- }
45
+ model_config = ConfigDict(
46
+ populate_by_name=True,
47
+ validate_assignment=True,
48
+ protected_namespaces=(),
49
+ )
50
50
 
51
51
 
52
52
  def to_str(self) -> str:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 3.3.6
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictBool, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -33,11 +33,11 @@ class ScenarioRunTemplateParameterValue(BaseModel):
33
33
  is_inherited: Optional[StrictBool] = Field(default=None, description="whether or not the value is inherited from parent or has been changed", alias="isInherited")
34
34
  __properties: ClassVar[List[str]] = ["parameterId", "varType", "value", "isInherited"]
35
35
 
36
- model_config = {
37
- "populate_by_name": True,
38
- "validate_assignment": True,
39
- "protected_namespaces": (),
40
- }
36
+ model_config = ConfigDict(
37
+ populate_by_name=True,
38
+ validate_assignment=True,
39
+ protected_namespaces=(),
40
+ )
41
41
 
42
42
 
43
43
  def to_str(self) -> str:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 3.3.6
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List
23
23
  from cosmotech_api.models.scenario_access_control import ScenarioAccessControl
24
24
  from typing import Optional, Set
@@ -32,11 +32,11 @@ class ScenarioSecurity(BaseModel):
32
32
  access_control_list: List[ScenarioAccessControl] = Field(description="the list which can access this Scenario with detailed access control information", alias="accessControlList")
33
33
  __properties: ClassVar[List[str]] = ["default", "accessControlList"]
34
34
 
35
- model_config = {
36
- "populate_by_name": True,
37
- "validate_assignment": True,
38
- "protected_namespaces": (),
39
- }
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ )
40
40
 
41
41
 
42
42
  def to_str(self) -> str:
@@ -74,9 +74,9 @@ class ScenarioSecurity(BaseModel):
74
74
  # override the default output from pydantic by calling `to_dict()` of each item in access_control_list (list)
75
75
  _items = []
76
76
  if self.access_control_list:
77
- for _item in self.access_control_list:
78
- if _item:
79
- _items.append(_item.to_dict())
77
+ for _item_access_control_list in self.access_control_list:
78
+ if _item_access_control_list:
79
+ _items.append(_item_access_control_list.to_dict())
80
80
  _dict['accessControlList'] = _items
81
81
  return _dict
82
82
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 3.3.6
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 3.3.6
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -31,11 +31,11 @@ class SendRunDataRequest(BaseModel):
31
31
  data: Optional[List[Dict[str, Any]]] = None
32
32
  __properties: ClassVar[List[str]] = ["id", "data"]
33
33
 
34
- model_config = {
35
- "populate_by_name": True,
36
- "validate_assignment": True,
37
- "protected_namespaces": (),
38
- }
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
39
 
40
40
 
41
41
  def to_str(self) -> str:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 5.0.0-rc3
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,43 +18,59 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictBool, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
+ from typing_extensions import Annotated
23
24
  from cosmotech_api.models.run_template import RunTemplate
24
25
  from cosmotech_api.models.run_template_parameter import RunTemplateParameter
25
26
  from cosmotech_api.models.run_template_parameter_group import RunTemplateParameterGroup
27
+ from cosmotech_api.models.solution_edit_info import SolutionEditInfo
26
28
  from cosmotech_api.models.solution_security import SolutionSecurity
27
29
  from typing import Optional, Set
28
30
  from typing_extensions import Self
29
31
 
30
32
  class Solution(BaseModel):
31
33
  """
32
- a version of a Solution
34
+ A version of a Solution
33
35
  """ # noqa: E501
34
- id: Optional[StrictStr] = Field(default=None, description="the Solution version unique identifier")
35
- organization_id: Optional[StrictStr] = Field(default=None, description="the Organization unique identifier", alias="organizationId")
36
- key: Optional[StrictStr] = Field(default=None, description="the Solution key which group Solution versions")
37
- name: Optional[StrictStr] = Field(default=None, description="the Solution name")
38
- description: Optional[StrictStr] = Field(default=None, description="the Solution description")
39
- repository: Optional[StrictStr] = Field(default=None, description="the registry repository containing the image")
40
- always_pull: Optional[StrictBool] = Field(default=False, description="set to true if the runtemplate wants to always pull the image", alias="alwaysPull")
41
- csm_simulator: Optional[StrictStr] = Field(default=None, description="the main Cosmo Tech simulator name used in standard Run Template", alias="csmSimulator")
42
- version: Optional[StrictStr] = Field(default=None, description="the Solution version MAJOR.MINOR.PATCH. Must be aligned with an existing repository tag")
43
- owner_id: Optional[StrictStr] = Field(default=None, description="the User id which own this Solution", alias="ownerId")
44
- sdk_version: Optional[StrictStr] = Field(default=None, description="the MAJOR.MINOR version used to build this solution", alias="sdkVersion")
45
- url: Optional[StrictStr] = Field(default=None, description="an optional URL link to solution page")
46
- tags: Optional[List[StrictStr]] = Field(default=None, description="the list of tags")
47
- parameters: Optional[List[RunTemplateParameter]] = Field(default=None, description="the list of Run Template Parameters")
48
- parameter_groups: Optional[List[RunTemplateParameterGroup]] = Field(default=None, description="the list of parameters groups for the Run Templates", alias="parameterGroups")
49
- run_templates: Optional[List[RunTemplate]] = Field(default=None, description="list of Run Template", alias="runTemplates")
50
- security: Optional[SolutionSecurity] = None
51
- __properties: ClassVar[List[str]] = ["id", "organizationId", "key", "name", "description", "repository", "alwaysPull", "csmSimulator", "version", "ownerId", "sdkVersion", "url", "tags", "parameters", "parameterGroups", "runTemplates", "security"]
52
-
53
- model_config = {
54
- "populate_by_name": True,
55
- "validate_assignment": True,
56
- "protected_namespaces": (),
57
- }
36
+ id: Annotated[str, Field(strict=True)] = Field(description="The Solution version unique identifier")
37
+ organization_id: Annotated[str, Field(strict=True)] = Field(description="The Organization unique identifier", alias="organizationId")
38
+ key: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The Solution key which groups Solution versions")
39
+ name: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The Solution name")
40
+ description: Optional[StrictStr] = Field(default=None, description="The Solution description")
41
+ repository: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The registry repository containing the image")
42
+ always_pull: Optional[StrictBool] = Field(default=False, description="Set to true if the runtemplate wants to always pull the image", alias="alwaysPull")
43
+ version: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The Solution version MAJOR.MINOR.PATCH. Must be aligned with an existing repository tag")
44
+ create_info: SolutionEditInfo = Field(description="The details of the Solution creation", alias="createInfo")
45
+ update_info: SolutionEditInfo = Field(description="The details of the Solution last update", alias="updateInfo")
46
+ sdk_version: Optional[StrictStr] = Field(default=None, description="The full SDK version used to build this solution, if available", alias="sdkVersion")
47
+ url: Optional[StrictStr] = Field(default=None, description="An optional URL link to solution page")
48
+ tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
49
+ parameters: List[RunTemplateParameter] = Field(description="The list of Run Template Parameters")
50
+ parameter_groups: List[RunTemplateParameterGroup] = Field(description="The list of parameters groups for the Run Templates", alias="parameterGroups")
51
+ run_templates: List[RunTemplate] = Field(description="List of Run Templates", alias="runTemplates")
52
+ security: SolutionSecurity
53
+ __properties: ClassVar[List[str]] = ["id", "organizationId", "key", "name", "description", "repository", "alwaysPull", "version", "createInfo", "updateInfo", "sdkVersion", "url", "tags", "parameters", "parameterGroups", "runTemplates", "security"]
54
+
55
+ @field_validator('id')
56
+ def id_validate_regular_expression(cls, value):
57
+ """Validates the regular expression"""
58
+ if not re.match(r"^sol-\w{10,20}", value):
59
+ raise ValueError(r"must validate the regular expression /^sol-\w{10,20}/")
60
+ return value
61
+
62
+ @field_validator('organization_id')
63
+ def organization_id_validate_regular_expression(cls, value):
64
+ """Validates the regular expression"""
65
+ if not re.match(r"^o-\w{10,20}", value):
66
+ raise ValueError(r"must validate the regular expression /^o-\w{10,20}/")
67
+ return value
68
+
69
+ model_config = ConfigDict(
70
+ populate_by_name=True,
71
+ validate_assignment=True,
72
+ protected_namespaces=(),
73
+ )
58
74
 
59
75
 
60
76
  def to_str(self) -> str:
@@ -80,14 +96,8 @@ class Solution(BaseModel):
80
96
  * `None` is only added to the output dict for nullable fields that
81
97
  were set at model initialization. Other fields with value `None`
82
98
  are ignored.
83
- * OpenAPI `readOnly` fields are excluded.
84
- * OpenAPI `readOnly` fields are excluded.
85
- * OpenAPI `readOnly` fields are excluded.
86
99
  """
87
100
  excluded_fields: Set[str] = set([
88
- "id",
89
- "organization_id",
90
- "owner_id",
91
101
  ])
92
102
 
93
103
  _dict = self.model_dump(
@@ -95,26 +105,32 @@ class Solution(BaseModel):
95
105
  exclude=excluded_fields,
96
106
  exclude_none=True,
97
107
  )
108
+ # override the default output from pydantic by calling `to_dict()` of create_info
109
+ if self.create_info:
110
+ _dict['createInfo'] = self.create_info.to_dict()
111
+ # override the default output from pydantic by calling `to_dict()` of update_info
112
+ if self.update_info:
113
+ _dict['updateInfo'] = self.update_info.to_dict()
98
114
  # override the default output from pydantic by calling `to_dict()` of each item in parameters (list)
99
115
  _items = []
100
116
  if self.parameters:
101
- for _item in self.parameters:
102
- if _item:
103
- _items.append(_item.to_dict())
117
+ for _item_parameters in self.parameters:
118
+ if _item_parameters:
119
+ _items.append(_item_parameters.to_dict())
104
120
  _dict['parameters'] = _items
105
121
  # override the default output from pydantic by calling `to_dict()` of each item in parameter_groups (list)
106
122
  _items = []
107
123
  if self.parameter_groups:
108
- for _item in self.parameter_groups:
109
- if _item:
110
- _items.append(_item.to_dict())
124
+ for _item_parameter_groups in self.parameter_groups:
125
+ if _item_parameter_groups:
126
+ _items.append(_item_parameter_groups.to_dict())
111
127
  _dict['parameterGroups'] = _items
112
128
  # override the default output from pydantic by calling `to_dict()` of each item in run_templates (list)
113
129
  _items = []
114
130
  if self.run_templates:
115
- for _item in self.run_templates:
116
- if _item:
117
- _items.append(_item.to_dict())
131
+ for _item_run_templates in self.run_templates:
132
+ if _item_run_templates:
133
+ _items.append(_item_run_templates.to_dict())
118
134
  _dict['runTemplates'] = _items
119
135
  # override the default output from pydantic by calling `to_dict()` of security
120
136
  if self.security:
@@ -138,9 +154,9 @@ class Solution(BaseModel):
138
154
  "description": obj.get("description"),
139
155
  "repository": obj.get("repository"),
140
156
  "alwaysPull": obj.get("alwaysPull") if obj.get("alwaysPull") is not None else False,
141
- "csmSimulator": obj.get("csmSimulator"),
142
157
  "version": obj.get("version"),
143
- "ownerId": obj.get("ownerId"),
158
+ "createInfo": SolutionEditInfo.from_dict(obj["createInfo"]) if obj.get("createInfo") is not None else None,
159
+ "updateInfo": SolutionEditInfo.from_dict(obj["updateInfo"]) if obj.get("updateInfo") is not None else None,
144
160
  "sdkVersion": obj.get("sdkVersion"),
145
161
  "url": obj.get("url"),
146
162
  "tags": obj.get("tags"),
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.0
8
+ The version of the OpenAPI document: 5.0.0-rc3
9
9
  Contact: platform@cosmotech.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -18,24 +18,24 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
25
 
26
26
  class SolutionAccessControl(BaseModel):
27
27
  """
28
- a Solution access control item
28
+ A Solution access control item
29
29
  """ # noqa: E501
30
- id: StrictStr = Field(description="the identity id")
31
- role: StrictStr = Field(description="a role")
30
+ id: StrictStr = Field(description="The identity id")
31
+ role: StrictStr = Field(description="The assigned role")
32
32
  __properties: ClassVar[List[str]] = ["id", "role"]
33
33
 
34
- model_config = {
35
- "populate_by_name": True,
36
- "validate_assignment": True,
37
- "protected_namespaces": (),
38
- }
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
39
 
40
40
 
41
41
  def to_str(self) -> str:
@@ -0,0 +1,139 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 5.0.0-rc3
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from typing_extensions import Annotated
24
+ from cosmotech_api.models.run_template_create_request import RunTemplateCreateRequest
25
+ from cosmotech_api.models.run_template_parameter_create_request import RunTemplateParameterCreateRequest
26
+ from cosmotech_api.models.run_template_parameter_group_create_request import RunTemplateParameterGroupCreateRequest
27
+ from cosmotech_api.models.solution_security import SolutionSecurity
28
+ from typing import Optional, Set
29
+ from typing_extensions import Self
30
+
31
+ class SolutionCreateRequest(BaseModel):
32
+ """
33
+ Request object for creating a new solution
34
+ """ # noqa: E501
35
+ key: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Technical key for resource name convention and version grouping. Must be unique")
36
+ name: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Solution name. This name is displayed in the sample webApp")
37
+ description: Optional[StrictStr] = Field(default=None, description="The Solution description")
38
+ repository: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The registry repository containing the image")
39
+ version: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The Solution version MAJOR.MINOR.PATCH")
40
+ always_pull: Optional[StrictBool] = Field(default=False, description="Set to true if the runtemplate wants to always pull the image", alias="alwaysPull")
41
+ tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
42
+ parameters: Optional[List[RunTemplateParameterCreateRequest]] = Field(default=None, description="The list of Run Template Parameters")
43
+ parameter_groups: Optional[List[RunTemplateParameterGroupCreateRequest]] = Field(default=None, description="The list of parameters groups for the Run Templates", alias="parameterGroups")
44
+ run_templates: Optional[List[RunTemplateCreateRequest]] = Field(default=None, description="List of Run Templates", alias="runTemplates")
45
+ url: Optional[StrictStr] = Field(default=None, description="An optional URL link to solution page")
46
+ security: Optional[SolutionSecurity] = None
47
+ __properties: ClassVar[List[str]] = ["key", "name", "description", "repository", "version", "alwaysPull", "tags", "parameters", "parameterGroups", "runTemplates", "url", "security"]
48
+
49
+ model_config = ConfigDict(
50
+ populate_by_name=True,
51
+ validate_assignment=True,
52
+ protected_namespaces=(),
53
+ )
54
+
55
+
56
+ def to_str(self) -> str:
57
+ """Returns the string representation of the model using alias"""
58
+ return pprint.pformat(self.model_dump(by_alias=True))
59
+
60
+ def to_json(self) -> str:
61
+ """Returns the JSON representation of the model using alias"""
62
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
63
+ return json.dumps(self.to_dict())
64
+
65
+ @classmethod
66
+ def from_json(cls, json_str: str) -> Optional[Self]:
67
+ """Create an instance of SolutionCreateRequest from a JSON string"""
68
+ return cls.from_dict(json.loads(json_str))
69
+
70
+ def to_dict(self) -> Dict[str, Any]:
71
+ """Return the dictionary representation of the model using alias.
72
+
73
+ This has the following differences from calling pydantic's
74
+ `self.model_dump(by_alias=True)`:
75
+
76
+ * `None` is only added to the output dict for nullable fields that
77
+ were set at model initialization. Other fields with value `None`
78
+ are ignored.
79
+ """
80
+ excluded_fields: Set[str] = set([
81
+ ])
82
+
83
+ _dict = self.model_dump(
84
+ by_alias=True,
85
+ exclude=excluded_fields,
86
+ exclude_none=True,
87
+ )
88
+ # override the default output from pydantic by calling `to_dict()` of each item in parameters (list)
89
+ _items = []
90
+ if self.parameters:
91
+ for _item_parameters in self.parameters:
92
+ if _item_parameters:
93
+ _items.append(_item_parameters.to_dict())
94
+ _dict['parameters'] = _items
95
+ # override the default output from pydantic by calling `to_dict()` of each item in parameter_groups (list)
96
+ _items = []
97
+ if self.parameter_groups:
98
+ for _item_parameter_groups in self.parameter_groups:
99
+ if _item_parameter_groups:
100
+ _items.append(_item_parameter_groups.to_dict())
101
+ _dict['parameterGroups'] = _items
102
+ # override the default output from pydantic by calling `to_dict()` of each item in run_templates (list)
103
+ _items = []
104
+ if self.run_templates:
105
+ for _item_run_templates in self.run_templates:
106
+ if _item_run_templates:
107
+ _items.append(_item_run_templates.to_dict())
108
+ _dict['runTemplates'] = _items
109
+ # override the default output from pydantic by calling `to_dict()` of security
110
+ if self.security:
111
+ _dict['security'] = self.security.to_dict()
112
+ return _dict
113
+
114
+ @classmethod
115
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
116
+ """Create an instance of SolutionCreateRequest from a dict"""
117
+ if obj is None:
118
+ return None
119
+
120
+ if not isinstance(obj, dict):
121
+ return cls.model_validate(obj)
122
+
123
+ _obj = cls.model_validate({
124
+ "key": obj.get("key"),
125
+ "name": obj.get("name"),
126
+ "description": obj.get("description"),
127
+ "repository": obj.get("repository"),
128
+ "version": obj.get("version"),
129
+ "alwaysPull": obj.get("alwaysPull") if obj.get("alwaysPull") is not None else False,
130
+ "tags": obj.get("tags"),
131
+ "parameters": [RunTemplateParameterCreateRequest.from_dict(_item) for _item in obj["parameters"]] if obj.get("parameters") is not None else None,
132
+ "parameterGroups": [RunTemplateParameterGroupCreateRequest.from_dict(_item) for _item in obj["parameterGroups"]] if obj.get("parameterGroups") is not None else None,
133
+ "runTemplates": [RunTemplateCreateRequest.from_dict(_item) for _item in obj["runTemplates"]] if obj.get("runTemplates") is not None else None,
134
+ "url": obj.get("url"),
135
+ "security": SolutionSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
136
+ })
137
+ return _obj
138
+
139
+
@@ -0,0 +1,90 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 5.0.0-rc3
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class SolutionEditInfo(BaseModel):
27
+ """
28
+ SolutionEditInfo
29
+ """ # noqa: E501
30
+ timestamp: StrictInt = Field(description="The timestamp of the modification in millisecond")
31
+ user_id: StrictStr = Field(description="The id of the user who did the modification", alias="userId")
32
+ __properties: ClassVar[List[str]] = ["timestamp", "userId"]
33
+
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
+
40
+
41
+ def to_str(self) -> str:
42
+ """Returns the string representation of the model using alias"""
43
+ return pprint.pformat(self.model_dump(by_alias=True))
44
+
45
+ def to_json(self) -> str:
46
+ """Returns the JSON representation of the model using alias"""
47
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
+ return json.dumps(self.to_dict())
49
+
50
+ @classmethod
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
52
+ """Create an instance of SolutionEditInfo from a JSON string"""
53
+ return cls.from_dict(json.loads(json_str))
54
+
55
+ def to_dict(self) -> Dict[str, Any]:
56
+ """Return the dictionary representation of the model using alias.
57
+
58
+ This has the following differences from calling pydantic's
59
+ `self.model_dump(by_alias=True)`:
60
+
61
+ * `None` is only added to the output dict for nullable fields that
62
+ were set at model initialization. Other fields with value `None`
63
+ are ignored.
64
+ """
65
+ excluded_fields: Set[str] = set([
66
+ ])
67
+
68
+ _dict = self.model_dump(
69
+ by_alias=True,
70
+ exclude=excluded_fields,
71
+ exclude_none=True,
72
+ )
73
+ return _dict
74
+
75
+ @classmethod
76
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
+ """Create an instance of SolutionEditInfo from a dict"""
78
+ if obj is None:
79
+ return None
80
+
81
+ if not isinstance(obj, dict):
82
+ return cls.model_validate(obj)
83
+
84
+ _obj = cls.model_validate({
85
+ "timestamp": obj.get("timestamp"),
86
+ "userId": obj.get("userId")
87
+ })
88
+ return _obj
89
+
90
+