cosmotech-api 3.2.6.dev2__py3-none-any.whl → 3.3.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cosmotech-api might be problematic. Click here for more details.

Files changed (258) hide show
  1. cosmotech_api/__init__.py +5 -1
  2. cosmotech_api/api/connector_api.py +31 -27
  3. cosmotech_api/api/dataset_api.py +255 -224
  4. cosmotech_api/api/meta_api.py +281 -0
  5. cosmotech_api/api/organization_api.py +120 -102
  6. cosmotech_api/api/run_api.py +49 -41
  7. cosmotech_api/api/runner_api.py +103 -89
  8. cosmotech_api/api/scenario_api.py +141 -121
  9. cosmotech_api/api/scenariorun_api.py +76 -66
  10. cosmotech_api/api/scenariorunresult_api.py +1 -1
  11. cosmotech_api/api/solution_api.py +127 -108
  12. cosmotech_api/api/twingraph_api.py +83 -72
  13. cosmotech_api/api/validator_api.py +1 -1
  14. cosmotech_api/api/workspace_api.py +132 -121
  15. cosmotech_api/api_client.py +59 -29
  16. cosmotech_api/configuration.py +18 -4
  17. cosmotech_api/exceptions.py +1 -1
  18. cosmotech_api/model/component_role_permissions.py +1 -1
  19. cosmotech_api/model/connector.py +1 -1
  20. cosmotech_api/model/connector_parameter.py +1 -1
  21. cosmotech_api/model/connector_parameter_group.py +1 -1
  22. cosmotech_api/model/container_resource_size_info.py +1 -1
  23. cosmotech_api/model/container_resource_sizing.py +1 -1
  24. cosmotech_api/model/dataset.py +1 -1
  25. cosmotech_api/model/dataset_access_control.py +1 -1
  26. cosmotech_api/model/dataset_compatibility.py +1 -1
  27. cosmotech_api/model/dataset_connector.py +1 -1
  28. cosmotech_api/model/dataset_copy_parameters.py +1 -1
  29. cosmotech_api/model/dataset_role.py +1 -1
  30. cosmotech_api/model/dataset_search.py +1 -1
  31. cosmotech_api/model/dataset_security.py +1 -1
  32. cosmotech_api/model/dataset_source_type.py +1 -1
  33. cosmotech_api/model/dataset_twin_graph_hash.py +1 -1
  34. cosmotech_api/model/dataset_twin_graph_info.py +1 -1
  35. cosmotech_api/model/dataset_twin_graph_query.py +1 -1
  36. cosmotech_api/model/delete_historical_data.py +1 -1
  37. cosmotech_api/model/file_upload_metadata.py +1 -1
  38. cosmotech_api/model/file_upload_validation.py +1 -1
  39. cosmotech_api/model/graph_properties.py +1 -1
  40. cosmotech_api/model/organization.py +1 -1
  41. cosmotech_api/model/organization_access_control.py +1 -1
  42. cosmotech_api/model/organization_role.py +1 -1
  43. cosmotech_api/model/organization_security.py +1 -1
  44. cosmotech_api/model/organization_service.py +1 -1
  45. cosmotech_api/model/organization_services.py +1 -1
  46. cosmotech_api/model/resource_size_info.py +1 -1
  47. cosmotech_api/model/run.py +1 -1
  48. cosmotech_api/model/run_container.py +1 -1
  49. cosmotech_api/model/run_container_artifact.py +1 -1
  50. cosmotech_api/model/run_container_logs.py +1 -1
  51. cosmotech_api/model/run_logs.py +1 -1
  52. cosmotech_api/model/run_resource_requested.py +1 -1
  53. cosmotech_api/model/run_search.py +1 -1
  54. cosmotech_api/model/run_start_containers.py +1 -1
  55. cosmotech_api/model/run_state.py +1 -1
  56. cosmotech_api/model/run_status.py +1 -1
  57. cosmotech_api/model/run_status_node.py +1 -1
  58. cosmotech_api/model/run_template.py +1 -1
  59. cosmotech_api/model/run_template_handler_id.py +1 -1
  60. cosmotech_api/model/run_template_orchestrator.py +1 -1
  61. cosmotech_api/model/run_template_parameter.py +1 -1
  62. cosmotech_api/model/run_template_parameter_group.py +1 -1
  63. cosmotech_api/model/run_template_parameter_value.py +1 -1
  64. cosmotech_api/model/run_template_resource_sizing.py +1 -1
  65. cosmotech_api/model/run_template_step_source.py +1 -1
  66. cosmotech_api/model/runner.py +21 -5
  67. cosmotech_api/model/runner_access_control.py +1 -1
  68. cosmotech_api/model/runner_changed_parameter_value.py +1 -1
  69. cosmotech_api/model/runner_comparison_result.py +1 -1
  70. cosmotech_api/model/runner_data_download_info.py +11 -1
  71. cosmotech_api/model/runner_data_download_job.py +1 -1
  72. cosmotech_api/model/runner_job_state.py +1 -1
  73. cosmotech_api/model/runner_last_run.py +1 -1
  74. cosmotech_api/model/runner_resource_sizing.py +1 -1
  75. cosmotech_api/model/runner_role.py +1 -1
  76. cosmotech_api/model/runner_run_template_parameter_value.py +1 -1
  77. cosmotech_api/model/runner_security.py +1 -1
  78. cosmotech_api/model/runner_validation_status.py +1 -1
  79. cosmotech_api/model/scenario.py +1 -1
  80. cosmotech_api/model/scenario_access_control.py +1 -1
  81. cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
  82. cosmotech_api/model/scenario_comparison_result.py +1 -1
  83. cosmotech_api/model/scenario_data_download_info.py +1 -1
  84. cosmotech_api/model/scenario_data_download_job.py +1 -1
  85. cosmotech_api/model/scenario_job_state.py +1 -1
  86. cosmotech_api/model/scenario_last_run.py +1 -1
  87. cosmotech_api/model/scenario_resource_sizing.py +1 -1
  88. cosmotech_api/model/scenario_role.py +1 -1
  89. cosmotech_api/model/scenario_run.py +1 -1
  90. cosmotech_api/model/scenario_run_container.py +1 -1
  91. cosmotech_api/model/scenario_run_container_artifact.py +1 -1
  92. cosmotech_api/model/scenario_run_container_logs.py +1 -1
  93. cosmotech_api/model/scenario_run_logs.py +1 -1
  94. cosmotech_api/model/scenario_run_resource_requested.py +1 -1
  95. cosmotech_api/model/scenario_run_result.py +1 -1
  96. cosmotech_api/model/scenario_run_search.py +1 -1
  97. cosmotech_api/model/scenario_run_start_containers.py +1 -1
  98. cosmotech_api/model/scenario_run_state.py +1 -1
  99. cosmotech_api/model/scenario_run_status.py +1 -1
  100. cosmotech_api/model/scenario_run_status_node.py +1 -1
  101. cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
  102. cosmotech_api/model/scenario_security.py +1 -1
  103. cosmotech_api/model/scenario_validation_status.py +1 -1
  104. cosmotech_api/model/solution.py +1 -1
  105. cosmotech_api/model/solution_access_control.py +1 -1
  106. cosmotech_api/model/solution_role.py +1 -1
  107. cosmotech_api/model/solution_security.py +1 -1
  108. cosmotech_api/model/source_info.py +1 -1
  109. cosmotech_api/model/sub_dataset_graph_query.py +1 -1
  110. cosmotech_api/model/translated_labels.py +1 -1
  111. cosmotech_api/model/twin_graph_batch_result.py +1 -1
  112. cosmotech_api/model/twin_graph_hash.py +1 -1
  113. cosmotech_api/model/twin_graph_query.py +1 -1
  114. cosmotech_api/model/validator.py +1 -1
  115. cosmotech_api/model/validator_run.py +1 -1
  116. cosmotech_api/model/workspace.py +1 -1
  117. cosmotech_api/model/workspace_access_control.py +1 -1
  118. cosmotech_api/model/workspace_file.py +1 -1
  119. cosmotech_api/model/workspace_role.py +1 -1
  120. cosmotech_api/model/workspace_secret.py +1 -1
  121. cosmotech_api/model/workspace_security.py +1 -1
  122. cosmotech_api/model/workspace_solution.py +1 -1
  123. cosmotech_api/model/workspace_web_app.py +1 -1
  124. cosmotech_api/model_utils.py +1 -1
  125. cosmotech_api/models/__init__.py +5 -1
  126. cosmotech_api/models/about_info.py +92 -0
  127. cosmotech_api/models/about_info_version.py +100 -0
  128. cosmotech_api/models/component_role_permissions.py +7 -7
  129. cosmotech_api/models/connector.py +10 -10
  130. cosmotech_api/models/connector_parameter.py +7 -7
  131. cosmotech_api/models/connector_parameter_group.py +10 -10
  132. cosmotech_api/models/container_resource_size_info.py +7 -7
  133. cosmotech_api/models/container_resource_sizing.py +7 -7
  134. cosmotech_api/models/created_run.py +88 -0
  135. cosmotech_api/models/dataset.py +10 -10
  136. cosmotech_api/models/dataset_access_control.py +7 -7
  137. cosmotech_api/models/dataset_compatibility.py +7 -7
  138. cosmotech_api/models/dataset_connector.py +7 -7
  139. cosmotech_api/models/dataset_copy_parameters.py +7 -7
  140. cosmotech_api/models/dataset_role.py +7 -7
  141. cosmotech_api/models/dataset_search.py +7 -7
  142. cosmotech_api/models/dataset_security.py +10 -10
  143. cosmotech_api/models/dataset_source_type.py +1 -1
  144. cosmotech_api/models/dataset_twin_graph_hash.py +7 -7
  145. cosmotech_api/models/dataset_twin_graph_info.py +7 -7
  146. cosmotech_api/models/dataset_twin_graph_query.py +7 -7
  147. cosmotech_api/models/delete_historical_data.py +7 -7
  148. cosmotech_api/models/file_upload_metadata.py +7 -7
  149. cosmotech_api/models/file_upload_validation.py +13 -13
  150. cosmotech_api/models/graph_properties.py +7 -7
  151. cosmotech_api/models/ingestion_status_enum.py +1 -1
  152. cosmotech_api/models/io_types_enum.py +1 -1
  153. cosmotech_api/models/organization.py +7 -7
  154. cosmotech_api/models/organization_access_control.py +7 -7
  155. cosmotech_api/models/organization_create_request.py +95 -0
  156. cosmotech_api/models/organization_role.py +7 -7
  157. cosmotech_api/models/organization_security.py +10 -10
  158. cosmotech_api/models/organization_service.py +7 -7
  159. cosmotech_api/models/organization_services.py +7 -7
  160. cosmotech_api/models/organization_update_request.py +89 -0
  161. cosmotech_api/models/query_result.py +7 -7
  162. cosmotech_api/models/resource_size_info.py +7 -7
  163. cosmotech_api/models/run.py +13 -13
  164. cosmotech_api/models/run_container.py +10 -10
  165. cosmotech_api/models/run_container_artifact.py +7 -7
  166. cosmotech_api/models/run_container_logs.py +7 -7
  167. cosmotech_api/models/run_data.py +7 -7
  168. cosmotech_api/models/run_data_query.py +7 -7
  169. cosmotech_api/models/run_logs.py +10 -10
  170. cosmotech_api/models/run_logs_entry.py +88 -0
  171. cosmotech_api/models/run_resource_requested.py +7 -7
  172. cosmotech_api/models/run_search.py +7 -7
  173. cosmotech_api/models/run_search_state.py +1 -1
  174. cosmotech_api/models/run_start_containers.py +10 -10
  175. cosmotech_api/models/run_state.py +1 -1
  176. cosmotech_api/models/run_status.py +10 -10
  177. cosmotech_api/models/run_status_node.py +7 -7
  178. cosmotech_api/models/run_template.py +7 -7
  179. cosmotech_api/models/run_template_handler_id.py +1 -1
  180. cosmotech_api/models/run_template_orchestrator.py +1 -1
  181. cosmotech_api/models/run_template_parameter.py +7 -7
  182. cosmotech_api/models/run_template_parameter_group.py +7 -7
  183. cosmotech_api/models/run_template_parameter_value.py +7 -7
  184. cosmotech_api/models/run_template_resource_sizing.py +7 -7
  185. cosmotech_api/models/run_template_step_source.py +1 -1
  186. cosmotech_api/models/runner.py +32 -13
  187. cosmotech_api/models/runner_access_control.py +7 -7
  188. cosmotech_api/models/runner_changed_parameter_value.py +7 -7
  189. cosmotech_api/models/runner_comparison_result.py +10 -10
  190. cosmotech_api/models/runner_create_request.py +154 -0
  191. cosmotech_api/models/runner_data_download_info.py +12 -9
  192. cosmotech_api/models/runner_data_download_job.py +7 -7
  193. cosmotech_api/models/runner_job_state.py +1 -1
  194. cosmotech_api/models/runner_last_run.py +7 -7
  195. cosmotech_api/models/runner_parent_last_run.py +7 -7
  196. cosmotech_api/models/runner_resource_sizing.py +7 -7
  197. cosmotech_api/models/runner_role.py +7 -7
  198. cosmotech_api/models/runner_root_last_run.py +7 -7
  199. cosmotech_api/models/runner_run_template_parameter_value.py +7 -7
  200. cosmotech_api/models/runner_security.py +10 -10
  201. cosmotech_api/models/runner_update_request.py +123 -0
  202. cosmotech_api/models/runner_validation_status.py +1 -1
  203. cosmotech_api/models/scenario.py +11 -11
  204. cosmotech_api/models/scenario_access_control.py +7 -7
  205. cosmotech_api/models/scenario_changed_parameter_value.py +7 -7
  206. cosmotech_api/models/scenario_comparison_result.py +10 -10
  207. cosmotech_api/models/scenario_data_download_info.py +7 -7
  208. cosmotech_api/models/scenario_data_download_job.py +7 -7
  209. cosmotech_api/models/scenario_job_state.py +1 -1
  210. cosmotech_api/models/scenario_last_run.py +7 -7
  211. cosmotech_api/models/scenario_resource_sizing.py +7 -7
  212. cosmotech_api/models/scenario_role.py +7 -7
  213. cosmotech_api/models/scenario_run.py +13 -13
  214. cosmotech_api/models/scenario_run_container.py +10 -10
  215. cosmotech_api/models/scenario_run_container_artifact.py +7 -7
  216. cosmotech_api/models/scenario_run_container_logs.py +7 -7
  217. cosmotech_api/models/scenario_run_logs.py +10 -10
  218. cosmotech_api/models/scenario_run_resource_requested.py +7 -7
  219. cosmotech_api/models/scenario_run_search.py +7 -7
  220. cosmotech_api/models/scenario_run_search_state.py +1 -1
  221. cosmotech_api/models/scenario_run_start_containers.py +10 -10
  222. cosmotech_api/models/scenario_run_state.py +1 -1
  223. cosmotech_api/models/scenario_run_status.py +10 -10
  224. cosmotech_api/models/scenario_run_status_node.py +7 -7
  225. cosmotech_api/models/scenario_run_template_parameter_value.py +7 -7
  226. cosmotech_api/models/scenario_security.py +10 -10
  227. cosmotech_api/models/scenario_validation_status.py +1 -1
  228. cosmotech_api/models/send_run_data_request.py +7 -7
  229. cosmotech_api/models/solution.py +16 -16
  230. cosmotech_api/models/solution_access_control.py +7 -7
  231. cosmotech_api/models/solution_create_request.py +143 -0
  232. cosmotech_api/models/solution_role.py +7 -7
  233. cosmotech_api/models/solution_security.py +10 -10
  234. cosmotech_api/models/solution_update_request.py +107 -0
  235. cosmotech_api/models/source_info.py +7 -7
  236. cosmotech_api/models/sub_dataset_graph_query.py +7 -7
  237. cosmotech_api/models/twin_graph_batch_result.py +7 -7
  238. cosmotech_api/models/twin_graph_hash.py +7 -7
  239. cosmotech_api/models/twin_graph_query.py +7 -7
  240. cosmotech_api/models/twincache_status_enum.py +1 -1
  241. cosmotech_api/models/validator.py +7 -7
  242. cosmotech_api/models/workspace.py +7 -7
  243. cosmotech_api/models/workspace_access_control.py +7 -7
  244. cosmotech_api/models/workspace_create_request.py +117 -0
  245. cosmotech_api/models/workspace_file.py +7 -7
  246. cosmotech_api/models/workspace_role.py +7 -7
  247. cosmotech_api/models/workspace_secret.py +7 -7
  248. cosmotech_api/models/workspace_security.py +10 -10
  249. cosmotech_api/models/workspace_solution.py +7 -7
  250. cosmotech_api/models/workspace_update_request.py +109 -0
  251. cosmotech_api/models/workspace_web_app.py +7 -7
  252. cosmotech_api/rest.py +3 -1
  253. {cosmotech_api-3.2.6.dev2.dist-info → cosmotech_api-3.3.4.dist-info}/METADATA +13 -5
  254. cosmotech_api-3.3.4.dist-info/RECORD +273 -0
  255. {cosmotech_api-3.2.6.dev2.dist-info → cosmotech_api-3.3.4.dist-info}/WHEEL +1 -1
  256. cosmotech_api-3.2.6.dev2.dist-info/RECORD +0 -260
  257. {cosmotech_api-3.2.6.dev2.dist-info → cosmotech_api-3.3.4.dist-info}/LICENSE +0 -0
  258. {cosmotech_api-3.2.6.dev2.dist-info → cosmotech_api-3.3.4.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,143 @@
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: 4.0.1-SNAPSHOT
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 import RunTemplate
25
+ from cosmotech_api.models.run_template_parameter import RunTemplateParameter
26
+ from cosmotech_api.models.run_template_parameter_group import RunTemplateParameterGroup
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, max_length=50)] = Field(description="technical key for resource name convention and version grouping. Must be unique")
36
+ name: Annotated[str, Field(min_length=1, strict=True, max_length=50)] = 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
+ csm_simulator: Annotated[str, Field(min_length=1, strict=True)] = Field(description="The main Cosmo Tech simulator name used in standard Run Template", alias="csmSimulator")
42
+ tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
43
+ parameters: Optional[List[RunTemplateParameter]] = Field(default=None, description="The list of Run Template Parameters")
44
+ parameter_groups: Optional[List[RunTemplateParameterGroup]] = Field(default=None, description="The list of parameters groups for the Run Templates", alias="parameterGroups")
45
+ run_templates: Optional[List[RunTemplate]] = Field(default=None, description="List of Run Templates", alias="runTemplates")
46
+ sdk_version: Optional[StrictStr] = Field(default=None, description="The MAJOR.MINOR version used to build this solution", alias="sdkVersion")
47
+ url: Optional[StrictStr] = Field(default=None, description="An optional URL link to solution page")
48
+ security: Optional[SolutionSecurity] = None
49
+ __properties: ClassVar[List[str]] = ["key", "name", "description", "repository", "version", "alwaysPull", "csmSimulator", "tags", "parameters", "parameterGroups", "runTemplates", "sdkVersion", "url", "security"]
50
+
51
+ model_config = ConfigDict(
52
+ populate_by_name=True,
53
+ validate_assignment=True,
54
+ protected_namespaces=(),
55
+ )
56
+
57
+
58
+ def to_str(self) -> str:
59
+ """Returns the string representation of the model using alias"""
60
+ return pprint.pformat(self.model_dump(by_alias=True))
61
+
62
+ def to_json(self) -> str:
63
+ """Returns the JSON representation of the model using alias"""
64
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
65
+ return json.dumps(self.to_dict())
66
+
67
+ @classmethod
68
+ def from_json(cls, json_str: str) -> Optional[Self]:
69
+ """Create an instance of SolutionCreateRequest from a JSON string"""
70
+ return cls.from_dict(json.loads(json_str))
71
+
72
+ def to_dict(self) -> Dict[str, Any]:
73
+ """Return the dictionary representation of the model using alias.
74
+
75
+ This has the following differences from calling pydantic's
76
+ `self.model_dump(by_alias=True)`:
77
+
78
+ * `None` is only added to the output dict for nullable fields that
79
+ were set at model initialization. Other fields with value `None`
80
+ are ignored.
81
+ """
82
+ excluded_fields: Set[str] = set([
83
+ ])
84
+
85
+ _dict = self.model_dump(
86
+ by_alias=True,
87
+ exclude=excluded_fields,
88
+ exclude_none=True,
89
+ )
90
+ # override the default output from pydantic by calling `to_dict()` of each item in parameters (list)
91
+ _items = []
92
+ if self.parameters:
93
+ for _item_parameters in self.parameters:
94
+ if _item_parameters:
95
+ _items.append(_item_parameters.to_dict())
96
+ _dict['parameters'] = _items
97
+ # override the default output from pydantic by calling `to_dict()` of each item in parameter_groups (list)
98
+ _items = []
99
+ if self.parameter_groups:
100
+ for _item_parameter_groups in self.parameter_groups:
101
+ if _item_parameter_groups:
102
+ _items.append(_item_parameter_groups.to_dict())
103
+ _dict['parameterGroups'] = _items
104
+ # override the default output from pydantic by calling `to_dict()` of each item in run_templates (list)
105
+ _items = []
106
+ if self.run_templates:
107
+ for _item_run_templates in self.run_templates:
108
+ if _item_run_templates:
109
+ _items.append(_item_run_templates.to_dict())
110
+ _dict['runTemplates'] = _items
111
+ # override the default output from pydantic by calling `to_dict()` of security
112
+ if self.security:
113
+ _dict['security'] = self.security.to_dict()
114
+ return _dict
115
+
116
+ @classmethod
117
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
118
+ """Create an instance of SolutionCreateRequest from a dict"""
119
+ if obj is None:
120
+ return None
121
+
122
+ if not isinstance(obj, dict):
123
+ return cls.model_validate(obj)
124
+
125
+ _obj = cls.model_validate({
126
+ "key": obj.get("key"),
127
+ "name": obj.get("name"),
128
+ "description": obj.get("description"),
129
+ "repository": obj.get("repository"),
130
+ "version": obj.get("version"),
131
+ "alwaysPull": obj.get("alwaysPull") if obj.get("alwaysPull") is not None else False,
132
+ "csmSimulator": obj.get("csmSimulator"),
133
+ "tags": obj.get("tags"),
134
+ "parameters": [RunTemplateParameter.from_dict(_item) for _item in obj["parameters"]] if obj.get("parameters") is not None else None,
135
+ "parameterGroups": [RunTemplateParameterGroup.from_dict(_item) for _item in obj["parameterGroups"]] if obj.get("parameterGroups") is not None else None,
136
+ "runTemplates": [RunTemplate.from_dict(_item) for _item in obj["runTemplates"]] if obj.get("runTemplates") is not None else None,
137
+ "sdkVersion": obj.get("sdkVersion"),
138
+ "url": obj.get("url"),
139
+ "security": SolutionSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
140
+ })
141
+ return _obj
142
+
143
+
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.6
8
+ The version of the OpenAPI document: 3.3.4
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 typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -30,11 +30,11 @@ class SolutionRole(BaseModel):
30
30
  role: StrictStr = Field(description="the Solution Role")
31
31
  __properties: ClassVar[List[str]] = ["role"]
32
32
 
33
- model_config = {
34
- "populate_by_name": True,
35
- "validate_assignment": True,
36
- "protected_namespaces": (),
37
- }
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ )
38
38
 
39
39
 
40
40
  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.6
8
+ The version of the OpenAPI document: 3.3.4
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.solution_access_control import SolutionAccessControl
24
24
  from typing import Optional, Set
@@ -32,11 +32,11 @@ class SolutionSecurity(BaseModel):
32
32
  access_control_list: List[SolutionAccessControl] = Field(description="the list which can access this Solution 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 SolutionSecurity(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
 
@@ -0,0 +1,107 @@
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: 4.0.1-SNAPSHOT
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 typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class SolutionUpdateRequest(BaseModel):
28
+ """
29
+ Request object for updating a solution
30
+ """ # noqa: E501
31
+ key: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=50)]] = Field(default=None, description="technical key for resource name convention and version grouping. Must be unique")
32
+ name: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=50)]] = Field(default=None, description="The Solution name")
33
+ description: Optional[StrictStr] = Field(default=None, description="The Solution description")
34
+ repository: Optional[Annotated[str, Field(min_length=1, strict=True)]] = Field(default=None, description="The registry repository containing the image")
35
+ always_pull: Optional[StrictBool] = Field(default=False, description="Set to true if the runtemplate wants to always pull the image", alias="alwaysPull")
36
+ csm_simulator: Optional[Annotated[str, Field(min_length=1, strict=True)]] = Field(default=None, description="The main Cosmo Tech simulator name used in standard Run Template", alias="csmSimulator")
37
+ version: Optional[Annotated[str, Field(min_length=1, strict=True)]] = Field(default=None, description="The Solution version MAJOR.MINOR.PATCH. Must be aligned with an existing repository tag")
38
+ sdk_version: Optional[StrictStr] = Field(default=None, description="The MAJOR.MINOR version used to build this solution", alias="sdkVersion")
39
+ url: Optional[StrictStr] = Field(default=None, description="An optional URL link to solution page")
40
+ tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
41
+ __properties: ClassVar[List[str]] = ["key", "name", "description", "repository", "alwaysPull", "csmSimulator", "version", "sdkVersion", "url", "tags"]
42
+
43
+ model_config = ConfigDict(
44
+ populate_by_name=True,
45
+ validate_assignment=True,
46
+ protected_namespaces=(),
47
+ )
48
+
49
+
50
+ def to_str(self) -> str:
51
+ """Returns the string representation of the model using alias"""
52
+ return pprint.pformat(self.model_dump(by_alias=True))
53
+
54
+ def to_json(self) -> str:
55
+ """Returns the JSON representation of the model using alias"""
56
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
57
+ return json.dumps(self.to_dict())
58
+
59
+ @classmethod
60
+ def from_json(cls, json_str: str) -> Optional[Self]:
61
+ """Create an instance of SolutionUpdateRequest from a JSON string"""
62
+ return cls.from_dict(json.loads(json_str))
63
+
64
+ def to_dict(self) -> Dict[str, Any]:
65
+ """Return the dictionary representation of the model using alias.
66
+
67
+ This has the following differences from calling pydantic's
68
+ `self.model_dump(by_alias=True)`:
69
+
70
+ * `None` is only added to the output dict for nullable fields that
71
+ were set at model initialization. Other fields with value `None`
72
+ are ignored.
73
+ """
74
+ excluded_fields: Set[str] = set([
75
+ ])
76
+
77
+ _dict = self.model_dump(
78
+ by_alias=True,
79
+ exclude=excluded_fields,
80
+ exclude_none=True,
81
+ )
82
+ return _dict
83
+
84
+ @classmethod
85
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
86
+ """Create an instance of SolutionUpdateRequest from a dict"""
87
+ if obj is None:
88
+ return None
89
+
90
+ if not isinstance(obj, dict):
91
+ return cls.model_validate(obj)
92
+
93
+ _obj = cls.model_validate({
94
+ "key": obj.get("key"),
95
+ "name": obj.get("name"),
96
+ "description": obj.get("description"),
97
+ "repository": obj.get("repository"),
98
+ "alwaysPull": obj.get("alwaysPull") if obj.get("alwaysPull") is not None else False,
99
+ "csmSimulator": obj.get("csmSimulator"),
100
+ "version": obj.get("version"),
101
+ "sdkVersion": obj.get("sdkVersion"),
102
+ "url": obj.get("url"),
103
+ "tags": obj.get("tags")
104
+ })
105
+ return _obj
106
+
107
+
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.6
8
+ The version of the OpenAPI document: 3.3.4
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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -33,11 +33,11 @@ class SourceInfo(BaseModel):
33
33
  job_id: Optional[StrictStr] = Field(default=None, description="indicate the last import jobId", alias="jobId")
34
34
  __properties: ClassVar[List[str]] = ["name", "location", "path", "jobId"]
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.6
8
+ The version of the OpenAPI document: 3.3.4
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 SubDatasetGraphQuery(BaseModel):
33
33
  main: Optional[StrictBool] = Field(default=None, description="is this the main dataset")
34
34
  __properties: ClassVar[List[str]] = ["name", "description", "queries", "main"]
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.6
8
+ The version of the OpenAPI document: 3.3.4
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
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -32,11 +32,11 @@ class TwinGraphBatchResult(BaseModel):
32
32
  errors: List[StrictStr]
33
33
  __properties: ClassVar[List[str]] = ["totalLines", "processedLines", "errors"]
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:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Cosmo Tech Platform API
7
7
 
8
- The version of the OpenAPI document: 3.2.6
8
+ The version of the OpenAPI document: 3.3.4
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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -30,11 +30,11 @@ class TwinGraphHash(BaseModel):
30
30
  hash: Optional[StrictStr] = Field(default=None, description="the hash of the graph")
31
31
  __properties: ClassVar[List[str]] = ["hash"]
32
32
 
33
- model_config = {
34
- "populate_by_name": True,
35
- "validate_assignment": True,
36
- "protected_namespaces": (),
37
- }
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ )
38
38
 
39
39
 
40
40
  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.6
8
+ The version of the OpenAPI document: 3.3.4
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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -31,11 +31,11 @@ class TwinGraphQuery(BaseModel):
31
31
  query: StrictStr = Field(description="the query in cypher language")
32
32
  __properties: ClassVar[List[str]] = ["version", "query"]
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.6
8
+ The version of the OpenAPI document: 3.3.4
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.6
8
+ The version of the OpenAPI document: 3.3.4
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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -37,11 +37,11 @@ class Validator(BaseModel):
37
37
  tags: Optional[List[StrictStr]] = Field(default=None, description="the list of tags")
38
38
  __properties: ClassVar[List[str]] = ["id", "name", "description", "repository", "version", "ownerId", "url", "tags"]
39
39
 
40
- model_config = {
41
- "populate_by_name": True,
42
- "validate_assignment": True,
43
- "protected_namespaces": (),
44
- }
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
45
45
 
46
46
 
47
47
  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.6
8
+ The version of the OpenAPI document: 3.3.4
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 cosmotech_api.models.workspace_security import WorkspaceSecurity
24
24
  from cosmotech_api.models.workspace_solution import WorkspaceSolution
@@ -51,11 +51,11 @@ class Workspace(BaseModel):
51
51
  security: Optional[WorkspaceSecurity] = None
52
52
  __properties: ClassVar[List[str]] = ["id", "organizationId", "key", "name", "description", "linkedDatasetIdList", "version", "tags", "ownerId", "solution", "webApp", "sendInputToDataWarehouse", "useDedicatedEventHubNamespace", "dedicatedEventHubSasKeyName", "dedicatedEventHubAuthenticationStrategy", "sendScenarioRunToEventHub", "sendScenarioMetadataToEventHub", "datasetCopy", "security"]
53
53
 
54
- model_config = {
55
- "populate_by_name": True,
56
- "validate_assignment": True,
57
- "protected_namespaces": (),
58
- }
54
+ model_config = ConfigDict(
55
+ populate_by_name=True,
56
+ validate_assignment=True,
57
+ protected_namespaces=(),
58
+ )
59
59
 
60
60
 
61
61
  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.6
8
+ The version of the OpenAPI document: 3.3.4
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 typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -31,11 +31,11 @@ class WorkspaceAccessControl(BaseModel):
31
31
  role: StrictStr = Field(description="a 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: