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
@@ -0,0 +1,103 @@
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.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, StrictInt, StrictStr, field_validator
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 CreateInfo(BaseModel):
28
+ """
29
+ CreateInfo
30
+ """ # noqa: E501
31
+ timestamp: StrictInt = Field(description="The timestamp of the creation in millisecond")
32
+ user_id: StrictStr = Field(description="The id of the user who did the creation", alias="userId")
33
+ runner_id: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The runner id which has created the dataset (nullable)", alias="runnerId")
34
+ __properties: ClassVar[List[str]] = ["timestamp", "userId", "runnerId"]
35
+
36
+ @field_validator('runner_id')
37
+ def runner_id_validate_regular_expression(cls, value):
38
+ """Validates the regular expression"""
39
+ if value is None:
40
+ return value
41
+
42
+ if not re.match(r"^r-\w{10,20}", value):
43
+ raise ValueError(r"must validate the regular expression /^r-\w{10,20}/")
44
+ return value
45
+
46
+ model_config = ConfigDict(
47
+ populate_by_name=True,
48
+ validate_assignment=True,
49
+ protected_namespaces=(),
50
+ )
51
+
52
+
53
+ def to_str(self) -> str:
54
+ """Returns the string representation of the model using alias"""
55
+ return pprint.pformat(self.model_dump(by_alias=True))
56
+
57
+ def to_json(self) -> str:
58
+ """Returns the JSON representation of the model using alias"""
59
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
60
+ return json.dumps(self.to_dict())
61
+
62
+ @classmethod
63
+ def from_json(cls, json_str: str) -> Optional[Self]:
64
+ """Create an instance of CreateInfo from a JSON string"""
65
+ return cls.from_dict(json.loads(json_str))
66
+
67
+ def to_dict(self) -> Dict[str, Any]:
68
+ """Return the dictionary representation of the model using alias.
69
+
70
+ This has the following differences from calling pydantic's
71
+ `self.model_dump(by_alias=True)`:
72
+
73
+ * `None` is only added to the output dict for nullable fields that
74
+ were set at model initialization. Other fields with value `None`
75
+ are ignored.
76
+ """
77
+ excluded_fields: Set[str] = set([
78
+ ])
79
+
80
+ _dict = self.model_dump(
81
+ by_alias=True,
82
+ exclude=excluded_fields,
83
+ exclude_none=True,
84
+ )
85
+ return _dict
86
+
87
+ @classmethod
88
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
89
+ """Create an instance of CreateInfo from a dict"""
90
+ if obj is None:
91
+ return None
92
+
93
+ if not isinstance(obj, dict):
94
+ return cls.model_validate(obj)
95
+
96
+ _obj = cls.model_validate({
97
+ "timestamp": obj.get("timestamp"),
98
+ "userId": obj.get("userId"),
99
+ "runnerId": obj.get("runnerId")
100
+ })
101
+ return _obj
102
+
103
+
@@ -0,0 +1,88 @@
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, StrictStr
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class CreatedRun(BaseModel):
27
+ """
28
+ Newly created Run info
29
+ """ # noqa: E501
30
+ id: StrictStr = Field(description="Run id")
31
+ __properties: ClassVar[List[str]] = ["id"]
32
+
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ )
38
+
39
+
40
+ def to_str(self) -> str:
41
+ """Returns the string representation of the model using alias"""
42
+ return pprint.pformat(self.model_dump(by_alias=True))
43
+
44
+ def to_json(self) -> str:
45
+ """Returns the JSON representation of the model using alias"""
46
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
47
+ return json.dumps(self.to_dict())
48
+
49
+ @classmethod
50
+ def from_json(cls, json_str: str) -> Optional[Self]:
51
+ """Create an instance of CreatedRun from a JSON string"""
52
+ return cls.from_dict(json.loads(json_str))
53
+
54
+ def to_dict(self) -> Dict[str, Any]:
55
+ """Return the dictionary representation of the model using alias.
56
+
57
+ This has the following differences from calling pydantic's
58
+ `self.model_dump(by_alias=True)`:
59
+
60
+ * `None` is only added to the output dict for nullable fields that
61
+ were set at model initialization. Other fields with value `None`
62
+ are ignored.
63
+ """
64
+ excluded_fields: Set[str] = set([
65
+ ])
66
+
67
+ _dict = self.model_dump(
68
+ by_alias=True,
69
+ exclude=excluded_fields,
70
+ exclude_none=True,
71
+ )
72
+ return _dict
73
+
74
+ @classmethod
75
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
76
+ """Create an instance of CreatedRun from a dict"""
77
+ if obj is None:
78
+ return None
79
+
80
+ if not isinstance(obj, dict):
81
+ return cls.model_validate(obj)
82
+
83
+ _obj = cls.model_validate({
84
+ "id": obj.get("id")
85
+ })
86
+ return _obj
87
+
88
+
@@ -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,70 +18,44 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, Field, StrictBool, StrictInt, StrictStr, field_validator
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
- from cosmotech_api.models.dataset_compatibility import DatasetCompatibility
24
- from cosmotech_api.models.dataset_connector import DatasetConnector
23
+ from typing_extensions import Annotated
24
+ from cosmotech_api.models.dataset_edit_info import DatasetEditInfo
25
+ from cosmotech_api.models.dataset_part import DatasetPart
25
26
  from cosmotech_api.models.dataset_security import DatasetSecurity
26
- from cosmotech_api.models.dataset_source_type import DatasetSourceType
27
- from cosmotech_api.models.source_info import SourceInfo
28
27
  from typing import Optional, Set
29
28
  from typing_extensions import Self
30
29
 
31
30
  class Dataset(BaseModel):
32
31
  """
33
- a Dataset
32
+ Dataset object
34
33
  """ # noqa: E501
35
- id: Optional[StrictStr] = Field(default=None, description="the Dataset unique identifier")
36
- name: Optional[StrictStr] = Field(default=None, description="the Dataset name")
37
- description: Optional[StrictStr] = Field(default=None, description="the Dataset description")
38
- owner_id: Optional[StrictStr] = Field(default=None, description="the User id which own this Dataset", alias="ownerId")
39
- owner_name: Optional[StrictStr] = Field(default=None, description="the name of the owner", alias="ownerName")
40
- organization_id: Optional[StrictStr] = Field(default=None, description="the Organization Id related to this Dataset", alias="organizationId")
41
- parent_id: Optional[StrictStr] = Field(default=None, description="the Dataset id which is the parent of this Dataset", alias="parentId")
42
- linked_workspace_id_list: Optional[List[StrictStr]] = Field(default=None, description="list of workspace linked to this dataset", alias="linkedWorkspaceIdList")
43
- twingraph_id: Optional[StrictStr] = Field(default=None, description="the twin graph id", alias="twingraphId")
44
- main: Optional[StrictBool] = Field(default=None, description="is this the main dataset")
45
- creation_date: Optional[StrictInt] = Field(default=None, description="the Dataset creation date", alias="creationDate")
46
- refresh_date: Optional[StrictInt] = Field(default=None, description="the last time a refresh was done", alias="refreshDate")
47
- source_type: Optional[DatasetSourceType] = Field(default=None, alias="sourceType")
48
- source: Optional[SourceInfo] = None
49
- ingestion_status: Optional[StrictStr] = Field(default=None, description="the Dataset ingestion status", alias="ingestionStatus")
50
- twincache_status: Optional[StrictStr] = Field(default=None, description="the twincache data status", alias="twincacheStatus")
51
- queries: Optional[List[StrictStr]] = Field(default=None, description="the list of queries")
52
- tags: Optional[List[StrictStr]] = Field(default=None, description="the list of tags")
53
- connector: Optional[DatasetConnector] = None
54
- fragments_ids: Optional[List[StrictStr]] = Field(default=None, description="the list of other Datasets ids to compose as fragments", alias="fragmentsIds")
55
- validator_id: Optional[StrictStr] = Field(default=None, description="the validator id", alias="validatorId")
56
- compatibility: Optional[List[DatasetCompatibility]] = Field(default=None, description="the list of compatible Solutions versions")
57
- security: Optional[DatasetSecurity] = None
58
- __properties: ClassVar[List[str]] = ["id", "name", "description", "ownerId", "ownerName", "organizationId", "parentId", "linkedWorkspaceIdList", "twingraphId", "main", "creationDate", "refreshDate", "sourceType", "source", "ingestionStatus", "twincacheStatus", "queries", "tags", "connector", "fragmentsIds", "validatorId", "compatibility", "security"]
59
-
60
- @field_validator('ingestion_status')
61
- def ingestion_status_validate_enum(cls, value):
62
- """Validates the enum"""
63
- if value is None:
64
- return value
65
-
66
- if value not in set(['NONE', 'PENDING', 'ERROR', 'SUCCESS']):
67
- raise ValueError("must be one of enum values ('NONE', 'PENDING', 'ERROR', 'SUCCESS')")
34
+ id: Annotated[str, Field(strict=True)]
35
+ name: Annotated[str, Field(min_length=1, strict=True)]
36
+ description: Optional[StrictStr] = None
37
+ organization_id: StrictStr = Field(description="the associated Organization Id", alias="organizationId")
38
+ workspace_id: StrictStr = Field(description="the associated Workspace Id", alias="workspaceId")
39
+ tags: List[StrictStr] = Field(description="the list of tags")
40
+ additional_data: Optional[Dict[str, Any]] = Field(default=None, description="Free form additional data", alias="additionalData")
41
+ parts: List[DatasetPart]
42
+ create_info: DatasetEditInfo = Field(description="The details of the Dataset creation", alias="createInfo")
43
+ update_info: DatasetEditInfo = Field(description="The details of the Dataset last update", alias="updateInfo")
44
+ security: DatasetSecurity
45
+ __properties: ClassVar[List[str]] = ["id", "name", "description", "organizationId", "workspaceId", "tags", "additionalData", "parts", "createInfo", "updateInfo", "security"]
46
+
47
+ @field_validator('id')
48
+ def id_validate_regular_expression(cls, value):
49
+ """Validates the regular expression"""
50
+ if not re.match(r"^d-\w{10,20}", value):
51
+ raise ValueError(r"must validate the regular expression /^d-\w{10,20}/")
68
52
  return value
69
53
 
70
- @field_validator('twincache_status')
71
- def twincache_status_validate_enum(cls, value):
72
- """Validates the enum"""
73
- if value is None:
74
- return value
75
-
76
- if value not in set(['EMPTY', 'FULL']):
77
- raise ValueError("must be one of enum values ('EMPTY', 'FULL')")
78
- return value
79
-
80
- model_config = {
81
- "populate_by_name": True,
82
- "validate_assignment": True,
83
- "protected_namespaces": (),
84
- }
54
+ model_config = ConfigDict(
55
+ populate_by_name=True,
56
+ validate_assignment=True,
57
+ protected_namespaces=(),
58
+ )
85
59
 
86
60
 
87
61
  def to_str(self) -> str:
@@ -109,18 +83,10 @@ class Dataset(BaseModel):
109
83
  are ignored.
110
84
  * OpenAPI `readOnly` fields are excluded.
111
85
  * OpenAPI `readOnly` fields are excluded.
112
- * OpenAPI `readOnly` fields are excluded.
113
- * OpenAPI `readOnly` fields are excluded.
114
- * OpenAPI `readOnly` fields are excluded.
115
- * OpenAPI `readOnly` fields are excluded.
116
86
  """
117
87
  excluded_fields: Set[str] = set([
118
- "id",
119
- "owner_id",
120
- "owner_name",
121
88
  "organization_id",
122
- "creation_date",
123
- "refresh_date",
89
+ "workspace_id",
124
90
  ])
125
91
 
126
92
  _dict = self.model_dump(
@@ -128,32 +94,22 @@ class Dataset(BaseModel):
128
94
  exclude=excluded_fields,
129
95
  exclude_none=True,
130
96
  )
131
- # override the default output from pydantic by calling `to_dict()` of source
132
- if self.source:
133
- _dict['source'] = self.source.to_dict()
134
- # override the default output from pydantic by calling `to_dict()` of connector
135
- if self.connector:
136
- _dict['connector'] = self.connector.to_dict()
137
- # override the default output from pydantic by calling `to_dict()` of each item in compatibility (list)
97
+ # override the default output from pydantic by calling `to_dict()` of each item in parts (list)
138
98
  _items = []
139
- if self.compatibility:
140
- for _item in self.compatibility:
141
- if _item:
142
- _items.append(_item.to_dict())
143
- _dict['compatibility'] = _items
99
+ if self.parts:
100
+ for _item_parts in self.parts:
101
+ if _item_parts:
102
+ _items.append(_item_parts.to_dict())
103
+ _dict['parts'] = _items
104
+ # override the default output from pydantic by calling `to_dict()` of create_info
105
+ if self.create_info:
106
+ _dict['createInfo'] = self.create_info.to_dict()
107
+ # override the default output from pydantic by calling `to_dict()` of update_info
108
+ if self.update_info:
109
+ _dict['updateInfo'] = self.update_info.to_dict()
144
110
  # override the default output from pydantic by calling `to_dict()` of security
145
111
  if self.security:
146
112
  _dict['security'] = self.security.to_dict()
147
- # set to None if ingestion_status (nullable) is None
148
- # and model_fields_set contains the field
149
- if self.ingestion_status is None and "ingestion_status" in self.model_fields_set:
150
- _dict['ingestionStatus'] = None
151
-
152
- # set to None if twincache_status (nullable) is None
153
- # and model_fields_set contains the field
154
- if self.twincache_status is None and "twincache_status" in self.model_fields_set:
155
- _dict['twincacheStatus'] = None
156
-
157
113
  return _dict
158
114
 
159
115
  @classmethod
@@ -169,25 +125,13 @@ class Dataset(BaseModel):
169
125
  "id": obj.get("id"),
170
126
  "name": obj.get("name"),
171
127
  "description": obj.get("description"),
172
- "ownerId": obj.get("ownerId"),
173
- "ownerName": obj.get("ownerName"),
174
128
  "organizationId": obj.get("organizationId"),
175
- "parentId": obj.get("parentId"),
176
- "linkedWorkspaceIdList": obj.get("linkedWorkspaceIdList"),
177
- "twingraphId": obj.get("twingraphId"),
178
- "main": obj.get("main"),
179
- "creationDate": obj.get("creationDate"),
180
- "refreshDate": obj.get("refreshDate"),
181
- "sourceType": obj.get("sourceType"),
182
- "source": SourceInfo.from_dict(obj["source"]) if obj.get("source") is not None else None,
183
- "ingestionStatus": obj.get("ingestionStatus"),
184
- "twincacheStatus": obj.get("twincacheStatus"),
185
- "queries": obj.get("queries"),
129
+ "workspaceId": obj.get("workspaceId"),
186
130
  "tags": obj.get("tags"),
187
- "connector": DatasetConnector.from_dict(obj["connector"]) if obj.get("connector") is not None else None,
188
- "fragmentsIds": obj.get("fragmentsIds"),
189
- "validatorId": obj.get("validatorId"),
190
- "compatibility": [DatasetCompatibility.from_dict(_item) for _item in obj["compatibility"]] if obj.get("compatibility") is not None else None,
131
+ "additionalData": obj.get("additionalData"),
132
+ "parts": [DatasetPart.from_dict(_item) for _item in obj["parts"]] if obj.get("parts") is not None else None,
133
+ "createInfo": DatasetEditInfo.from_dict(obj["createInfo"]) if obj.get("createInfo") is not None else None,
134
+ "updateInfo": DatasetEditInfo.from_dict(obj["updateInfo"]) if obj.get("updateInfo") is not None else None,
191
135
  "security": DatasetSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
192
136
  })
193
137
  return _obj
@@ -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,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 DatasetAccessControl(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:
@@ -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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -32,11 +32,11 @@ class DatasetCompatibility(BaseModel):
32
32
  maximum_version: Optional[StrictStr] = Field(default=None, description="the Solution maximum version compatibility (version included)", alias="maximumVersion")
33
33
  __properties: ClassVar[List[str]] = ["solutionKey", "minimumVersion", "maximumVersion"]
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.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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -33,11 +33,11 @@ class DatasetConnector(BaseModel):
33
33
  parameters_values: Optional[Dict[str, StrictStr]] = Field(default=None, alias="parametersValues")
34
34
  __properties: ClassVar[List[str]] = ["id", "name", "version", "parametersValues"]
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, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -32,11 +32,11 @@ class DatasetCopyParameters(BaseModel):
32
32
  options: Optional[Dict[str, Any]] = Field(default=None, description="freeform options to path to connectors")
33
33
  __properties: ClassVar[List[str]] = ["sourceId", "targetId", "options"]
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:
@@ -0,0 +1,103 @@
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.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, StrictInt, StrictStr, field_validator
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 DatasetCreateInfo(BaseModel):
28
+ """
29
+ DatasetCreateInfo
30
+ """ # noqa: E501
31
+ timestamp: StrictInt = Field(description="The timestamp of the creation in millisecond")
32
+ user_id: StrictStr = Field(description="The id of the user who did the creation", alias="userId")
33
+ runner_id: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The runner id which has created the dataset (nullable)", alias="runnerId")
34
+ __properties: ClassVar[List[str]] = ["timestamp", "userId", "runnerId"]
35
+
36
+ @field_validator('runner_id')
37
+ def runner_id_validate_regular_expression(cls, value):
38
+ """Validates the regular expression"""
39
+ if value is None:
40
+ return value
41
+
42
+ if not re.match(r"^r-\w{10,20}", value):
43
+ raise ValueError(r"must validate the regular expression /^r-\w{10,20}/")
44
+ return value
45
+
46
+ model_config = ConfigDict(
47
+ populate_by_name=True,
48
+ validate_assignment=True,
49
+ protected_namespaces=(),
50
+ )
51
+
52
+
53
+ def to_str(self) -> str:
54
+ """Returns the string representation of the model using alias"""
55
+ return pprint.pformat(self.model_dump(by_alias=True))
56
+
57
+ def to_json(self) -> str:
58
+ """Returns the JSON representation of the model using alias"""
59
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
60
+ return json.dumps(self.to_dict())
61
+
62
+ @classmethod
63
+ def from_json(cls, json_str: str) -> Optional[Self]:
64
+ """Create an instance of DatasetCreateInfo from a JSON string"""
65
+ return cls.from_dict(json.loads(json_str))
66
+
67
+ def to_dict(self) -> Dict[str, Any]:
68
+ """Return the dictionary representation of the model using alias.
69
+
70
+ This has the following differences from calling pydantic's
71
+ `self.model_dump(by_alias=True)`:
72
+
73
+ * `None` is only added to the output dict for nullable fields that
74
+ were set at model initialization. Other fields with value `None`
75
+ are ignored.
76
+ """
77
+ excluded_fields: Set[str] = set([
78
+ ])
79
+
80
+ _dict = self.model_dump(
81
+ by_alias=True,
82
+ exclude=excluded_fields,
83
+ exclude_none=True,
84
+ )
85
+ return _dict
86
+
87
+ @classmethod
88
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
89
+ """Create an instance of DatasetCreateInfo from a dict"""
90
+ if obj is None:
91
+ return None
92
+
93
+ if not isinstance(obj, dict):
94
+ return cls.model_validate(obj)
95
+
96
+ _obj = cls.model_validate({
97
+ "timestamp": obj.get("timestamp"),
98
+ "userId": obj.get("userId"),
99
+ "runnerId": obj.get("runnerId")
100
+ })
101
+ return _obj
102
+
103
+