cosmotech-api 2.4.7__py3-none-any.whl → 3.0.9.dev0__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 (110) hide show
  1. cosmotech_api/__init__.py +1 -1
  2. cosmotech_api/api/connector_api.py +20 -21
  3. cosmotech_api/api/dataset_api.py +2612 -153
  4. cosmotech_api/api/organization_api.py +1 -131
  5. cosmotech_api/api/scenario_api.py +13 -158
  6. cosmotech_api/api/scenariorun_api.py +1 -160
  7. cosmotech_api/api/scenariorunresult_api.py +386 -0
  8. cosmotech_api/api/solution_api.py +639 -36
  9. cosmotech_api/api/twingraph_api.py +2 -145
  10. cosmotech_api/api/user_api.py +1 -1
  11. cosmotech_api/api/validator_api.py +1 -1
  12. cosmotech_api/api/workspace_api.py +1 -141
  13. cosmotech_api/api_client.py +1 -1
  14. cosmotech_api/apis/__init__.py +1 -0
  15. cosmotech_api/configuration.py +2 -2
  16. cosmotech_api/exceptions.py +1 -1
  17. cosmotech_api/model/component_role_permissions.py +1 -1
  18. cosmotech_api/model/connector.py +1 -1
  19. cosmotech_api/model/connector_parameter.py +1 -1
  20. cosmotech_api/model/connector_parameter_group.py +1 -1
  21. cosmotech_api/model/container_resource_size_info.py +1 -1
  22. cosmotech_api/model/container_resource_sizing.py +1 -1
  23. cosmotech_api/model/dataset.py +55 -1
  24. cosmotech_api/model/dataset_access_control.py +268 -0
  25. cosmotech_api/model/dataset_compatibility.py +1 -1
  26. cosmotech_api/model/dataset_connector.py +1 -1
  27. cosmotech_api/model/dataset_copy_parameters.py +1 -1
  28. cosmotech_api/model/dataset_role.py +262 -0
  29. cosmotech_api/model/dataset_search.py +1 -1
  30. cosmotech_api/model/dataset_security.py +274 -0
  31. cosmotech_api/model/dataset_source_type.py +286 -0
  32. cosmotech_api/model/dataset_twin_graph_hash.py +256 -0
  33. cosmotech_api/model/dataset_twin_graph_info.py +264 -0
  34. cosmotech_api/model/dataset_twin_graph_query.py +262 -0
  35. cosmotech_api/model/delete_historical_data.py +1 -1
  36. cosmotech_api/model/graph_properties.py +1 -1
  37. cosmotech_api/model/organization.py +1 -1
  38. cosmotech_api/model/organization_access_control.py +1 -1
  39. cosmotech_api/model/organization_role.py +1 -1
  40. cosmotech_api/model/organization_security.py +1 -1
  41. cosmotech_api/model/organization_service.py +1 -1
  42. cosmotech_api/model/organization_services.py +1 -1
  43. cosmotech_api/model/resource_size_info.py +1 -1
  44. cosmotech_api/model/run_template.py +7 -1
  45. cosmotech_api/model/run_template_handler_id.py +1 -1
  46. cosmotech_api/model/run_template_orchestrator.py +283 -0
  47. cosmotech_api/model/run_template_parameter.py +1 -1
  48. cosmotech_api/model/run_template_parameter_group.py +1 -1
  49. cosmotech_api/model/run_template_parameter_value.py +1 -1
  50. cosmotech_api/model/run_template_resource_sizing.py +1 -1
  51. cosmotech_api/model/run_template_step_source.py +1 -1
  52. cosmotech_api/model/scenario.py +1 -1
  53. cosmotech_api/model/scenario_access_control.py +1 -1
  54. cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
  55. cosmotech_api/model/scenario_comparison_result.py +1 -1
  56. cosmotech_api/model/scenario_data_download_info.py +1 -1
  57. cosmotech_api/model/scenario_data_download_job.py +1 -1
  58. cosmotech_api/model/scenario_job_state.py +1 -1
  59. cosmotech_api/model/scenario_last_run.py +1 -1
  60. cosmotech_api/model/scenario_resource_sizing.py +1 -1
  61. cosmotech_api/model/scenario_role.py +1 -1
  62. cosmotech_api/model/scenario_run.py +6 -1
  63. cosmotech_api/model/scenario_run_container.py +1 -1
  64. cosmotech_api/model/scenario_run_container_artifact.py +1 -1
  65. cosmotech_api/model/scenario_run_container_logs.py +1 -1
  66. cosmotech_api/model/scenario_run_logs.py +1 -1
  67. cosmotech_api/model/scenario_run_resource_requested.py +1 -1
  68. cosmotech_api/model/scenario_run_result.py +260 -0
  69. cosmotech_api/model/scenario_run_search.py +1 -1
  70. cosmotech_api/model/scenario_run_start_containers.py +1 -1
  71. cosmotech_api/model/scenario_run_state.py +1 -1
  72. cosmotech_api/model/scenario_run_status.py +1 -1
  73. cosmotech_api/model/scenario_run_status_node.py +16 -1
  74. cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
  75. cosmotech_api/model/scenario_security.py +1 -1
  76. cosmotech_api/model/scenario_validation_status.py +1 -1
  77. cosmotech_api/model/solution.py +7 -1
  78. cosmotech_api/model/solution_access_control.py +268 -0
  79. cosmotech_api/model/solution_role.py +262 -0
  80. cosmotech_api/model/solution_security.py +274 -0
  81. cosmotech_api/model/source_info.py +3 -13
  82. cosmotech_api/model/sub_dataset_graph_query.py +268 -0
  83. cosmotech_api/model/translated_labels.py +1 -1
  84. cosmotech_api/model/twin_graph_batch_result.py +1 -1
  85. cosmotech_api/model/twin_graph_hash.py +1 -1
  86. cosmotech_api/model/twin_graph_import.py +1 -1
  87. cosmotech_api/model/twin_graph_import_info.py +1 -1
  88. cosmotech_api/model/twin_graph_query.py +1 -1
  89. cosmotech_api/model/user.py +1 -1
  90. cosmotech_api/model/user_organization.py +1 -1
  91. cosmotech_api/model/user_workspace.py +1 -1
  92. cosmotech_api/model/validator.py +1 -1
  93. cosmotech_api/model/validator_run.py +1 -1
  94. cosmotech_api/model/workspace.py +1 -1
  95. cosmotech_api/model/workspace_access_control.py +1 -1
  96. cosmotech_api/model/workspace_file.py +1 -1
  97. cosmotech_api/model/workspace_role.py +1 -1
  98. cosmotech_api/model/workspace_secret.py +1 -1
  99. cosmotech_api/model/workspace_security.py +1 -1
  100. cosmotech_api/model/workspace_solution.py +1 -1
  101. cosmotech_api/model/workspace_web_app.py +1 -1
  102. cosmotech_api/model_utils.py +1 -1
  103. cosmotech_api/models/__init__.py +14 -2
  104. cosmotech_api/rest.py +1 -1
  105. {cosmotech_api-2.4.7.dist-info → cosmotech_api-3.0.9.dev0.dist-info}/METADATA +2 -2
  106. cosmotech_api-3.0.9.dev0.dist-info/RECORD +114 -0
  107. {cosmotech_api-2.4.7.dist-info → cosmotech_api-3.0.9.dev0.dist-info}/WHEEL +1 -1
  108. cosmotech_api-2.4.7.dist-info/RECORD +0 -100
  109. {cosmotech_api-2.4.7.dist-info → cosmotech_api-3.0.9.dev0.dist-info}/LICENSE +0 -0
  110. {cosmotech_api-2.4.7.dist-info → cosmotech_api-3.0.9.dev0.dist-info}/top_level.txt +0 -0
@@ -3,7 +3,7 @@
3
3
 
4
4
  Cosmo Tech Platform API # noqa: E501
5
5
 
6
- The version of the OpenAPI document: 2.4.7-private
6
+ The version of the OpenAPI document: 3.0.9-SNAPSHOT
7
7
  Contact: platform@cosmotech.com
8
8
  Generated by: https://openapi-generator.tech
9
9
  """
@@ -27,6 +27,8 @@ from cosmotech_api.model.run_template_handler_id import RunTemplateHandlerId
27
27
  from cosmotech_api.model.run_template_parameter import RunTemplateParameter
28
28
  from cosmotech_api.model.run_template_parameter_group import RunTemplateParameterGroup
29
29
  from cosmotech_api.model.solution import Solution
30
+ from cosmotech_api.model.solution_access_control import SolutionAccessControl
31
+ from cosmotech_api.model.solution_role import SolutionRole
30
32
 
31
33
 
32
34
  class SolutionApi(object):
@@ -232,6 +234,71 @@ class SolutionApi(object):
232
234
  },
233
235
  api_client=api_client
234
236
  )
237
+ self.add_solution_access_control_endpoint = _Endpoint(
238
+ settings={
239
+ 'response_type': (SolutionAccessControl,),
240
+ 'auth': [
241
+ 'oAuth2AuthCode'
242
+ ],
243
+ 'endpoint_path': '/organizations/{organization_id}/solutions/{solution_id}/security/access',
244
+ 'operation_id': 'add_solution_access_control',
245
+ 'http_method': 'POST',
246
+ 'servers': None,
247
+ },
248
+ params_map={
249
+ 'all': [
250
+ 'organization_id',
251
+ 'solution_id',
252
+ 'solution_access_control',
253
+ ],
254
+ 'required': [
255
+ 'organization_id',
256
+ 'solution_id',
257
+ 'solution_access_control',
258
+ ],
259
+ 'nullable': [
260
+ ],
261
+ 'enum': [
262
+ ],
263
+ 'validation': [
264
+ ]
265
+ },
266
+ root_map={
267
+ 'validations': {
268
+ },
269
+ 'allowed_values': {
270
+ },
271
+ 'openapi_types': {
272
+ 'organization_id':
273
+ (str,),
274
+ 'solution_id':
275
+ (str,),
276
+ 'solution_access_control':
277
+ (SolutionAccessControl,),
278
+ },
279
+ 'attribute_map': {
280
+ 'organization_id': 'organization_id',
281
+ 'solution_id': 'solution_id',
282
+ },
283
+ 'location_map': {
284
+ 'organization_id': 'path',
285
+ 'solution_id': 'path',
286
+ 'solution_access_control': 'body',
287
+ },
288
+ 'collection_format_map': {
289
+ }
290
+ },
291
+ headers_map={
292
+ 'accept': [
293
+ 'application/json'
294
+ ],
295
+ 'content_type': [
296
+ 'application/json',
297
+ 'application/yaml'
298
+ ]
299
+ },
300
+ api_client=api_client
301
+ )
235
302
  self.create_solution_endpoint = _Endpoint(
236
303
  settings={
237
304
  'response_type': (Solution,),
@@ -594,25 +661,27 @@ class SolutionApi(object):
594
661
  },
595
662
  api_client=api_client
596
663
  )
597
- self.import_solution_endpoint = _Endpoint(
664
+ self.get_solution_access_control_endpoint = _Endpoint(
598
665
  settings={
599
- 'response_type': (Solution,),
666
+ 'response_type': (SolutionAccessControl,),
600
667
  'auth': [
601
668
  'oAuth2AuthCode'
602
669
  ],
603
- 'endpoint_path': '/organizations/{organization_id}/solutions/import',
604
- 'operation_id': 'import_solution',
605
- 'http_method': 'POST',
670
+ 'endpoint_path': '/organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}',
671
+ 'operation_id': 'get_solution_access_control',
672
+ 'http_method': 'GET',
606
673
  'servers': None,
607
674
  },
608
675
  params_map={
609
676
  'all': [
610
677
  'organization_id',
611
- 'solution',
678
+ 'solution_id',
679
+ 'identity_id',
612
680
  ],
613
681
  'required': [
614
682
  'organization_id',
615
- 'solution',
683
+ 'solution_id',
684
+ 'identity_id',
616
685
  ],
617
686
  'nullable': [
618
687
  ],
@@ -629,15 +698,20 @@ class SolutionApi(object):
629
698
  'openapi_types': {
630
699
  'organization_id':
631
700
  (str,),
632
- 'solution':
633
- (Solution,),
701
+ 'solution_id':
702
+ (str,),
703
+ 'identity_id':
704
+ (str,),
634
705
  },
635
706
  'attribute_map': {
636
707
  'organization_id': 'organization_id',
708
+ 'solution_id': 'solution_id',
709
+ 'identity_id': 'identity_id',
637
710
  },
638
711
  'location_map': {
639
712
  'organization_id': 'path',
640
- 'solution': 'body',
713
+ 'solution_id': 'path',
714
+ 'identity_id': 'path',
641
715
  },
642
716
  'collection_format_map': {
643
717
  }
@@ -646,11 +720,65 @@ class SolutionApi(object):
646
720
  'accept': [
647
721
  'application/json'
648
722
  ],
649
- 'content_type': [
650
- 'application/json',
651
- 'application/yaml'
723
+ 'content_type': [],
724
+ },
725
+ api_client=api_client
726
+ )
727
+ self.get_solution_security_users_endpoint = _Endpoint(
728
+ settings={
729
+ 'response_type': ([str],),
730
+ 'auth': [
731
+ 'oAuth2AuthCode'
732
+ ],
733
+ 'endpoint_path': '/organizations/{organization_id}/solutions/{solution_id}/security/users',
734
+ 'operation_id': 'get_solution_security_users',
735
+ 'http_method': 'GET',
736
+ 'servers': None,
737
+ },
738
+ params_map={
739
+ 'all': [
740
+ 'organization_id',
741
+ 'solution_id',
742
+ ],
743
+ 'required': [
744
+ 'organization_id',
745
+ 'solution_id',
746
+ ],
747
+ 'nullable': [
748
+ ],
749
+ 'enum': [
750
+ ],
751
+ 'validation': [
652
752
  ]
653
753
  },
754
+ root_map={
755
+ 'validations': {
756
+ },
757
+ 'allowed_values': {
758
+ },
759
+ 'openapi_types': {
760
+ 'organization_id':
761
+ (str,),
762
+ 'solution_id':
763
+ (str,),
764
+ },
765
+ 'attribute_map': {
766
+ 'organization_id': 'organization_id',
767
+ 'solution_id': 'solution_id',
768
+ },
769
+ 'location_map': {
770
+ 'organization_id': 'path',
771
+ 'solution_id': 'path',
772
+ },
773
+ 'collection_format_map': {
774
+ }
775
+ },
776
+ headers_map={
777
+ 'accept': [
778
+ 'application/json'
779
+ ],
780
+ 'content_type': [],
781
+ },
654
782
  api_client=api_client
655
783
  )
656
784
  self.remove_all_run_templates_endpoint = _Endpoint(
@@ -818,6 +946,67 @@ class SolutionApi(object):
818
946
  },
819
947
  api_client=api_client
820
948
  )
949
+ self.remove_solution_access_control_endpoint = _Endpoint(
950
+ settings={
951
+ 'response_type': None,
952
+ 'auth': [
953
+ 'oAuth2AuthCode'
954
+ ],
955
+ 'endpoint_path': '/organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}',
956
+ 'operation_id': 'remove_solution_access_control',
957
+ 'http_method': 'DELETE',
958
+ 'servers': None,
959
+ },
960
+ params_map={
961
+ 'all': [
962
+ 'organization_id',
963
+ 'solution_id',
964
+ 'identity_id',
965
+ ],
966
+ 'required': [
967
+ 'organization_id',
968
+ 'solution_id',
969
+ 'identity_id',
970
+ ],
971
+ 'nullable': [
972
+ ],
973
+ 'enum': [
974
+ ],
975
+ 'validation': [
976
+ ]
977
+ },
978
+ root_map={
979
+ 'validations': {
980
+ },
981
+ 'allowed_values': {
982
+ },
983
+ 'openapi_types': {
984
+ 'organization_id':
985
+ (str,),
986
+ 'solution_id':
987
+ (str,),
988
+ 'identity_id':
989
+ (str,),
990
+ },
991
+ 'attribute_map': {
992
+ 'organization_id': 'organization_id',
993
+ 'solution_id': 'solution_id',
994
+ 'identity_id': 'identity_id',
995
+ },
996
+ 'location_map': {
997
+ 'organization_id': 'path',
998
+ 'solution_id': 'path',
999
+ 'identity_id': 'path',
1000
+ },
1001
+ 'collection_format_map': {
1002
+ }
1003
+ },
1004
+ headers_map={
1005
+ 'accept': [],
1006
+ 'content_type': [],
1007
+ },
1008
+ api_client=api_client
1009
+ )
821
1010
  self.update_solution_endpoint = _Endpoint(
822
1011
  settings={
823
1012
  'response_type': (Solution,),
@@ -883,6 +1072,76 @@ class SolutionApi(object):
883
1072
  },
884
1073
  api_client=api_client
885
1074
  )
1075
+ self.update_solution_access_control_endpoint = _Endpoint(
1076
+ settings={
1077
+ 'response_type': (SolutionAccessControl,),
1078
+ 'auth': [
1079
+ 'oAuth2AuthCode'
1080
+ ],
1081
+ 'endpoint_path': '/organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}',
1082
+ 'operation_id': 'update_solution_access_control',
1083
+ 'http_method': 'PATCH',
1084
+ 'servers': None,
1085
+ },
1086
+ params_map={
1087
+ 'all': [
1088
+ 'organization_id',
1089
+ 'solution_id',
1090
+ 'identity_id',
1091
+ 'solution_role',
1092
+ ],
1093
+ 'required': [
1094
+ 'organization_id',
1095
+ 'solution_id',
1096
+ 'identity_id',
1097
+ 'solution_role',
1098
+ ],
1099
+ 'nullable': [
1100
+ ],
1101
+ 'enum': [
1102
+ ],
1103
+ 'validation': [
1104
+ ]
1105
+ },
1106
+ root_map={
1107
+ 'validations': {
1108
+ },
1109
+ 'allowed_values': {
1110
+ },
1111
+ 'openapi_types': {
1112
+ 'organization_id':
1113
+ (str,),
1114
+ 'solution_id':
1115
+ (str,),
1116
+ 'identity_id':
1117
+ (str,),
1118
+ 'solution_role':
1119
+ (SolutionRole,),
1120
+ },
1121
+ 'attribute_map': {
1122
+ 'organization_id': 'organization_id',
1123
+ 'solution_id': 'solution_id',
1124
+ 'identity_id': 'identity_id',
1125
+ },
1126
+ 'location_map': {
1127
+ 'organization_id': 'path',
1128
+ 'solution_id': 'path',
1129
+ 'identity_id': 'path',
1130
+ 'solution_role': 'body',
1131
+ },
1132
+ 'collection_format_map': {
1133
+ }
1134
+ },
1135
+ headers_map={
1136
+ 'accept': [
1137
+ 'application/json'
1138
+ ],
1139
+ 'content_type': [
1140
+ 'application/json'
1141
+ ]
1142
+ },
1143
+ api_client=api_client
1144
+ )
886
1145
  self.update_solution_run_template_endpoint = _Endpoint(
887
1146
  settings={
888
1147
  'response_type': ([RunTemplate],),
@@ -1289,23 +1548,25 @@ class SolutionApi(object):
1289
1548
  run_template
1290
1549
  return self.add_or_replace_run_templates_endpoint.call_with_http_info(**kwargs)
1291
1550
 
1292
- def create_solution(
1551
+ def add_solution_access_control(
1293
1552
  self,
1294
1553
  organization_id,
1295
- solution,
1554
+ solution_id,
1555
+ solution_access_control,
1296
1556
  **kwargs
1297
1557
  ):
1298
- """Register a new solution # noqa: E501
1558
+ """Add a control access to the Solution # noqa: E501
1299
1559
 
1300
1560
  This method makes a synchronous HTTP request by default. To make an
1301
1561
  asynchronous HTTP request, please pass async_req=True
1302
1562
 
1303
- >>> thread = api.create_solution(organization_id, solution, async_req=True)
1563
+ >>> thread = api.add_solution_access_control(organization_id, solution_id, solution_access_control, async_req=True)
1304
1564
  >>> result = thread.get()
1305
1565
 
1306
1566
  Args:
1307
1567
  organization_id (str): the Organization identifier
1308
- solution (Solution): the Solution to create
1568
+ solution_id (str): the Solution identifier
1569
+ solution_access_control (SolutionAccessControl): the new Solution security access to add.
1309
1570
 
1310
1571
  Keyword Args:
1311
1572
  _return_http_data_only (bool): response data without head status
@@ -1336,7 +1597,7 @@ class SolutionApi(object):
1336
1597
  async_req (bool): execute request asynchronously
1337
1598
 
1338
1599
  Returns:
1339
- Solution
1600
+ SolutionAccessControl
1340
1601
  If the method is called asynchronously, returns the request
1341
1602
  thread.
1342
1603
  """
@@ -1366,22 +1627,105 @@ class SolutionApi(object):
1366
1627
  kwargs['_host_index'] = kwargs.get('_host_index')
1367
1628
  kwargs['organization_id'] = \
1368
1629
  organization_id
1369
- kwargs['solution'] = \
1370
- solution
1371
- return self.create_solution_endpoint.call_with_http_info(**kwargs)
1630
+ kwargs['solution_id'] = \
1631
+ solution_id
1632
+ kwargs['solution_access_control'] = \
1633
+ solution_access_control
1634
+ return self.add_solution_access_control_endpoint.call_with_http_info(**kwargs)
1372
1635
 
1373
- def delete_solution(
1636
+ def create_solution(
1374
1637
  self,
1375
1638
  organization_id,
1376
- solution_id,
1639
+ solution,
1377
1640
  **kwargs
1378
1641
  ):
1379
- """Delete a solution # noqa: E501
1642
+ """Register a new solution # noqa: E501
1380
1643
 
1381
1644
  This method makes a synchronous HTTP request by default. To make an
1382
1645
  asynchronous HTTP request, please pass async_req=True
1383
1646
 
1384
- >>> thread = api.delete_solution(organization_id, solution_id, async_req=True)
1647
+ >>> thread = api.create_solution(organization_id, solution, async_req=True)
1648
+ >>> result = thread.get()
1649
+
1650
+ Args:
1651
+ organization_id (str): the Organization identifier
1652
+ solution (Solution): the Solution to create
1653
+
1654
+ Keyword Args:
1655
+ _return_http_data_only (bool): response data without head status
1656
+ code and headers. Default is True.
1657
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
1658
+ will be returned without reading/decoding response data.
1659
+ Default is True.
1660
+ _request_timeout (int/float/tuple): timeout setting for this request. If
1661
+ one number provided, it will be total request timeout. It can also
1662
+ be a pair (tuple) of (connection, read) timeouts.
1663
+ Default is None.
1664
+ _check_input_type (bool): specifies if type checking
1665
+ should be done one the data sent to the server.
1666
+ Default is True.
1667
+ _check_return_type (bool): specifies if type checking
1668
+ should be done one the data received from the server.
1669
+ Default is True.
1670
+ _spec_property_naming (bool): True if the variable names in the input data
1671
+ are serialized names, as specified in the OpenAPI document.
1672
+ False if the variable names in the input data
1673
+ are pythonic names, e.g. snake case (default)
1674
+ _content_type (str/None): force body content-type.
1675
+ Default is None and content-type will be predicted by allowed
1676
+ content-types and body.
1677
+ _host_index (int/None): specifies the index of the server
1678
+ that we want to use.
1679
+ Default is read from the configuration.
1680
+ async_req (bool): execute request asynchronously
1681
+
1682
+ Returns:
1683
+ Solution
1684
+ If the method is called asynchronously, returns the request
1685
+ thread.
1686
+ """
1687
+ kwargs['async_req'] = kwargs.get(
1688
+ 'async_req', False
1689
+ )
1690
+ kwargs['_return_http_data_only'] = kwargs.get(
1691
+ '_return_http_data_only', True
1692
+ )
1693
+ kwargs['_preload_content'] = kwargs.get(
1694
+ '_preload_content', True
1695
+ )
1696
+ kwargs['_request_timeout'] = kwargs.get(
1697
+ '_request_timeout', None
1698
+ )
1699
+ kwargs['_check_input_type'] = kwargs.get(
1700
+ '_check_input_type', True
1701
+ )
1702
+ kwargs['_check_return_type'] = kwargs.get(
1703
+ '_check_return_type', True
1704
+ )
1705
+ kwargs['_spec_property_naming'] = kwargs.get(
1706
+ '_spec_property_naming', False
1707
+ )
1708
+ kwargs['_content_type'] = kwargs.get(
1709
+ '_content_type')
1710
+ kwargs['_host_index'] = kwargs.get('_host_index')
1711
+ kwargs['organization_id'] = \
1712
+ organization_id
1713
+ kwargs['solution'] = \
1714
+ solution
1715
+ return self.create_solution_endpoint.call_with_http_info(**kwargs)
1716
+
1717
+ def delete_solution(
1718
+ self,
1719
+ organization_id,
1720
+ solution_id,
1721
+ **kwargs
1722
+ ):
1723
+ """Delete a solution # noqa: E501
1724
+
1725
+ This method makes a synchronous HTTP request by default. To make an
1726
+ asynchronous HTTP request, please pass async_req=True
1727
+
1728
+ >>> thread = api.delete_solution(organization_id, solution_id, async_req=True)
1385
1729
  >>> result = thread.get()
1386
1730
 
1387
1731
  Args:
@@ -1785,23 +2129,25 @@ class SolutionApi(object):
1785
2129
  solution_id
1786
2130
  return self.find_solution_by_id_endpoint.call_with_http_info(**kwargs)
1787
2131
 
1788
- def import_solution(
2132
+ def get_solution_access_control(
1789
2133
  self,
1790
2134
  organization_id,
1791
- solution,
2135
+ solution_id,
2136
+ identity_id,
1792
2137
  **kwargs
1793
2138
  ):
1794
- """Import a solution # noqa: E501
2139
+ """Get a control access for the Solution # noqa: E501
1795
2140
 
1796
2141
  This method makes a synchronous HTTP request by default. To make an
1797
2142
  asynchronous HTTP request, please pass async_req=True
1798
2143
 
1799
- >>> thread = api.import_solution(organization_id, solution, async_req=True)
2144
+ >>> thread = api.get_solution_access_control(organization_id, solution_id, identity_id, async_req=True)
1800
2145
  >>> result = thread.get()
1801
2146
 
1802
2147
  Args:
1803
2148
  organization_id (str): the Organization identifier
1804
- solution (Solution): the Solution to import
2149
+ solution_id (str): the Solution identifier
2150
+ identity_id (str): the User identifier
1805
2151
 
1806
2152
  Keyword Args:
1807
2153
  _return_http_data_only (bool): response data without head status
@@ -1832,7 +2178,7 @@ class SolutionApi(object):
1832
2178
  async_req (bool): execute request asynchronously
1833
2179
 
1834
2180
  Returns:
1835
- Solution
2181
+ SolutionAccessControl
1836
2182
  If the method is called asynchronously, returns the request
1837
2183
  thread.
1838
2184
  """
@@ -1862,9 +2208,92 @@ class SolutionApi(object):
1862
2208
  kwargs['_host_index'] = kwargs.get('_host_index')
1863
2209
  kwargs['organization_id'] = \
1864
2210
  organization_id
1865
- kwargs['solution'] = \
1866
- solution
1867
- return self.import_solution_endpoint.call_with_http_info(**kwargs)
2211
+ kwargs['solution_id'] = \
2212
+ solution_id
2213
+ kwargs['identity_id'] = \
2214
+ identity_id
2215
+ return self.get_solution_access_control_endpoint.call_with_http_info(**kwargs)
2216
+
2217
+ def get_solution_security_users(
2218
+ self,
2219
+ organization_id,
2220
+ solution_id,
2221
+ **kwargs
2222
+ ):
2223
+ """Get the Solution security users list # noqa: E501
2224
+
2225
+ This method makes a synchronous HTTP request by default. To make an
2226
+ asynchronous HTTP request, please pass async_req=True
2227
+
2228
+ >>> thread = api.get_solution_security_users(organization_id, solution_id, async_req=True)
2229
+ >>> result = thread.get()
2230
+
2231
+ Args:
2232
+ organization_id (str): the Organization identifier
2233
+ solution_id (str): the Solution identifier
2234
+
2235
+ Keyword Args:
2236
+ _return_http_data_only (bool): response data without head status
2237
+ code and headers. Default is True.
2238
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
2239
+ will be returned without reading/decoding response data.
2240
+ Default is True.
2241
+ _request_timeout (int/float/tuple): timeout setting for this request. If
2242
+ one number provided, it will be total request timeout. It can also
2243
+ be a pair (tuple) of (connection, read) timeouts.
2244
+ Default is None.
2245
+ _check_input_type (bool): specifies if type checking
2246
+ should be done one the data sent to the server.
2247
+ Default is True.
2248
+ _check_return_type (bool): specifies if type checking
2249
+ should be done one the data received from the server.
2250
+ Default is True.
2251
+ _spec_property_naming (bool): True if the variable names in the input data
2252
+ are serialized names, as specified in the OpenAPI document.
2253
+ False if the variable names in the input data
2254
+ are pythonic names, e.g. snake case (default)
2255
+ _content_type (str/None): force body content-type.
2256
+ Default is None and content-type will be predicted by allowed
2257
+ content-types and body.
2258
+ _host_index (int/None): specifies the index of the server
2259
+ that we want to use.
2260
+ Default is read from the configuration.
2261
+ async_req (bool): execute request asynchronously
2262
+
2263
+ Returns:
2264
+ [str]
2265
+ If the method is called asynchronously, returns the request
2266
+ thread.
2267
+ """
2268
+ kwargs['async_req'] = kwargs.get(
2269
+ 'async_req', False
2270
+ )
2271
+ kwargs['_return_http_data_only'] = kwargs.get(
2272
+ '_return_http_data_only', True
2273
+ )
2274
+ kwargs['_preload_content'] = kwargs.get(
2275
+ '_preload_content', True
2276
+ )
2277
+ kwargs['_request_timeout'] = kwargs.get(
2278
+ '_request_timeout', None
2279
+ )
2280
+ kwargs['_check_input_type'] = kwargs.get(
2281
+ '_check_input_type', True
2282
+ )
2283
+ kwargs['_check_return_type'] = kwargs.get(
2284
+ '_check_return_type', True
2285
+ )
2286
+ kwargs['_spec_property_naming'] = kwargs.get(
2287
+ '_spec_property_naming', False
2288
+ )
2289
+ kwargs['_content_type'] = kwargs.get(
2290
+ '_content_type')
2291
+ kwargs['_host_index'] = kwargs.get('_host_index')
2292
+ kwargs['organization_id'] = \
2293
+ organization_id
2294
+ kwargs['solution_id'] = \
2295
+ solution_id
2296
+ return self.get_solution_security_users_endpoint.call_with_http_info(**kwargs)
1868
2297
 
1869
2298
  def remove_all_run_templates(
1870
2299
  self,
@@ -2109,6 +2538,91 @@ class SolutionApi(object):
2109
2538
  solution_id
2110
2539
  return self.remove_all_solution_parameters_endpoint.call_with_http_info(**kwargs)
2111
2540
 
2541
+ def remove_solution_access_control(
2542
+ self,
2543
+ organization_id,
2544
+ solution_id,
2545
+ identity_id,
2546
+ **kwargs
2547
+ ):
2548
+ """Remove the specified access from the given Organization Solution # noqa: E501
2549
+
2550
+ This method makes a synchronous HTTP request by default. To make an
2551
+ asynchronous HTTP request, please pass async_req=True
2552
+
2553
+ >>> thread = api.remove_solution_access_control(organization_id, solution_id, identity_id, async_req=True)
2554
+ >>> result = thread.get()
2555
+
2556
+ Args:
2557
+ organization_id (str): the Organization identifier
2558
+ solution_id (str): the Solution identifier
2559
+ identity_id (str): the User identifier
2560
+
2561
+ Keyword Args:
2562
+ _return_http_data_only (bool): response data without head status
2563
+ code and headers. Default is True.
2564
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
2565
+ will be returned without reading/decoding response data.
2566
+ Default is True.
2567
+ _request_timeout (int/float/tuple): timeout setting for this request. If
2568
+ one number provided, it will be total request timeout. It can also
2569
+ be a pair (tuple) of (connection, read) timeouts.
2570
+ Default is None.
2571
+ _check_input_type (bool): specifies if type checking
2572
+ should be done one the data sent to the server.
2573
+ Default is True.
2574
+ _check_return_type (bool): specifies if type checking
2575
+ should be done one the data received from the server.
2576
+ Default is True.
2577
+ _spec_property_naming (bool): True if the variable names in the input data
2578
+ are serialized names, as specified in the OpenAPI document.
2579
+ False if the variable names in the input data
2580
+ are pythonic names, e.g. snake case (default)
2581
+ _content_type (str/None): force body content-type.
2582
+ Default is None and content-type will be predicted by allowed
2583
+ content-types and body.
2584
+ _host_index (int/None): specifies the index of the server
2585
+ that we want to use.
2586
+ Default is read from the configuration.
2587
+ async_req (bool): execute request asynchronously
2588
+
2589
+ Returns:
2590
+ None
2591
+ If the method is called asynchronously, returns the request
2592
+ thread.
2593
+ """
2594
+ kwargs['async_req'] = kwargs.get(
2595
+ 'async_req', False
2596
+ )
2597
+ kwargs['_return_http_data_only'] = kwargs.get(
2598
+ '_return_http_data_only', True
2599
+ )
2600
+ kwargs['_preload_content'] = kwargs.get(
2601
+ '_preload_content', True
2602
+ )
2603
+ kwargs['_request_timeout'] = kwargs.get(
2604
+ '_request_timeout', None
2605
+ )
2606
+ kwargs['_check_input_type'] = kwargs.get(
2607
+ '_check_input_type', True
2608
+ )
2609
+ kwargs['_check_return_type'] = kwargs.get(
2610
+ '_check_return_type', True
2611
+ )
2612
+ kwargs['_spec_property_naming'] = kwargs.get(
2613
+ '_spec_property_naming', False
2614
+ )
2615
+ kwargs['_content_type'] = kwargs.get(
2616
+ '_content_type')
2617
+ kwargs['_host_index'] = kwargs.get('_host_index')
2618
+ kwargs['organization_id'] = \
2619
+ organization_id
2620
+ kwargs['solution_id'] = \
2621
+ solution_id
2622
+ kwargs['identity_id'] = \
2623
+ identity_id
2624
+ return self.remove_solution_access_control_endpoint.call_with_http_info(**kwargs)
2625
+
2112
2626
  def update_solution(
2113
2627
  self,
2114
2628
  organization_id,
@@ -2194,6 +2708,95 @@ class SolutionApi(object):
2194
2708
  solution
2195
2709
  return self.update_solution_endpoint.call_with_http_info(**kwargs)
2196
2710
 
2711
+ def update_solution_access_control(
2712
+ self,
2713
+ organization_id,
2714
+ solution_id,
2715
+ identity_id,
2716
+ solution_role,
2717
+ **kwargs
2718
+ ):
2719
+ """Update the specified access to User for a Solution # noqa: E501
2720
+
2721
+ This method makes a synchronous HTTP request by default. To make an
2722
+ asynchronous HTTP request, please pass async_req=True
2723
+
2724
+ >>> thread = api.update_solution_access_control(organization_id, solution_id, identity_id, solution_role, async_req=True)
2725
+ >>> result = thread.get()
2726
+
2727
+ Args:
2728
+ organization_id (str): the Organization identifier
2729
+ solution_id (str): the Solution identifier
2730
+ identity_id (str): the User identifier
2731
+ solution_role (SolutionRole): The new Solution Access Control
2732
+
2733
+ Keyword Args:
2734
+ _return_http_data_only (bool): response data without head status
2735
+ code and headers. Default is True.
2736
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
2737
+ will be returned without reading/decoding response data.
2738
+ Default is True.
2739
+ _request_timeout (int/float/tuple): timeout setting for this request. If
2740
+ one number provided, it will be total request timeout. It can also
2741
+ be a pair (tuple) of (connection, read) timeouts.
2742
+ Default is None.
2743
+ _check_input_type (bool): specifies if type checking
2744
+ should be done one the data sent to the server.
2745
+ Default is True.
2746
+ _check_return_type (bool): specifies if type checking
2747
+ should be done one the data received from the server.
2748
+ Default is True.
2749
+ _spec_property_naming (bool): True if the variable names in the input data
2750
+ are serialized names, as specified in the OpenAPI document.
2751
+ False if the variable names in the input data
2752
+ are pythonic names, e.g. snake case (default)
2753
+ _content_type (str/None): force body content-type.
2754
+ Default is None and content-type will be predicted by allowed
2755
+ content-types and body.
2756
+ _host_index (int/None): specifies the index of the server
2757
+ that we want to use.
2758
+ Default is read from the configuration.
2759
+ async_req (bool): execute request asynchronously
2760
+
2761
+ Returns:
2762
+ SolutionAccessControl
2763
+ If the method is called asynchronously, returns the request
2764
+ thread.
2765
+ """
2766
+ kwargs['async_req'] = kwargs.get(
2767
+ 'async_req', False
2768
+ )
2769
+ kwargs['_return_http_data_only'] = kwargs.get(
2770
+ '_return_http_data_only', True
2771
+ )
2772
+ kwargs['_preload_content'] = kwargs.get(
2773
+ '_preload_content', True
2774
+ )
2775
+ kwargs['_request_timeout'] = kwargs.get(
2776
+ '_request_timeout', None
2777
+ )
2778
+ kwargs['_check_input_type'] = kwargs.get(
2779
+ '_check_input_type', True
2780
+ )
2781
+ kwargs['_check_return_type'] = kwargs.get(
2782
+ '_check_return_type', True
2783
+ )
2784
+ kwargs['_spec_property_naming'] = kwargs.get(
2785
+ '_spec_property_naming', False
2786
+ )
2787
+ kwargs['_content_type'] = kwargs.get(
2788
+ '_content_type')
2789
+ kwargs['_host_index'] = kwargs.get('_host_index')
2790
+ kwargs['organization_id'] = \
2791
+ organization_id
2792
+ kwargs['solution_id'] = \
2793
+ solution_id
2794
+ kwargs['identity_id'] = \
2795
+ identity_id
2796
+ kwargs['solution_role'] = \
2797
+ solution_role
2798
+ return self.update_solution_access_control_endpoint.call_with_http_info(**kwargs)
2799
+
2197
2800
  def update_solution_run_template(
2198
2801
  self,
2199
2802
  organization_id,