UncountablePythonSDK 0.0.126__py3-none-any.whl → 0.0.142.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 UncountablePythonSDK might be problematic. Click here for more details.
- docs/requirements.txt +1 -1
- examples/integration-server/jobs/materials_auto/example_cron.py +1 -1
- examples/integration-server/jobs/materials_auto/example_instrument.py +68 -38
- examples/integration-server/jobs/materials_auto/example_parse.py +140 -0
- examples/integration-server/jobs/materials_auto/example_predictions.py +61 -0
- examples/integration-server/jobs/materials_auto/example_runsheet_wh.py +57 -16
- examples/integration-server/jobs/materials_auto/profile.yaml +18 -0
- examples/integration-server/pyproject.toml +4 -4
- pkgs/argument_parser/argument_parser.py +20 -1
- pkgs/serialization_util/serialization_helpers.py +3 -1
- pkgs/type_spec/builder.py +43 -13
- pkgs/type_spec/builder_types.py +9 -0
- pkgs/type_spec/cross_output_links.py +2 -10
- pkgs/type_spec/emit_open_api.py +0 -12
- pkgs/type_spec/emit_python.py +72 -11
- pkgs/type_spec/emit_typescript.py +2 -2
- pkgs/type_spec/emit_typescript_util.py +28 -6
- pkgs/type_spec/load_types.py +1 -1
- pkgs/type_spec/parts/base.ts.prepart +3 -0
- pkgs/type_spec/type_info/emit_type_info.py +27 -3
- pkgs/type_spec/value_spec/__main__.py +2 -2
- uncountable/core/client.py +10 -3
- uncountable/integration/cli.py +89 -2
- uncountable/integration/executors/executors.py +1 -2
- uncountable/integration/executors/generic_upload_executor.py +1 -1
- uncountable/integration/job.py +3 -3
- uncountable/integration/queue_runner/command_server/__init__.py +4 -0
- uncountable/integration/queue_runner/command_server/command_client.py +63 -0
- uncountable/integration/queue_runner/command_server/command_server.py +77 -5
- uncountable/integration/queue_runner/command_server/protocol/command_server.proto +33 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.py +27 -13
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.pyi +53 -1
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2_grpc.py +135 -0
- uncountable/integration/queue_runner/command_server/types.py +44 -1
- uncountable/integration/queue_runner/datastore/datastore_sqlite.py +132 -8
- uncountable/integration/queue_runner/datastore/interface.py +3 -0
- uncountable/integration/queue_runner/datastore/model.py +8 -1
- uncountable/integration/queue_runner/job_scheduler.py +78 -3
- uncountable/integration/queue_runner/types.py +2 -0
- uncountable/integration/queue_runner/worker.py +28 -26
- uncountable/integration/scheduler.py +64 -13
- uncountable/integration/server.py +36 -6
- uncountable/integration/telemetry.py +120 -7
- uncountable/integration/webhook_server/entrypoint.py +2 -0
- uncountable/types/__init__.py +18 -0
- uncountable/types/api/entity/list_aggregate.py +79 -0
- uncountable/types/api/entity/list_entities.py +25 -0
- uncountable/types/api/entity/set_barcode.py +43 -0
- uncountable/types/api/entity/transition_entity_phase.py +2 -1
- uncountable/types/api/files/download_file.py +15 -1
- uncountable/types/api/integrations/push_notification.py +2 -0
- uncountable/types/api/integrations/register_sockets_token.py +41 -0
- uncountable/types/api/listing/__init__.py +1 -0
- uncountable/types/api/listing/fetch_listing.py +57 -0
- uncountable/types/api/notebooks/__init__.py +1 -0
- uncountable/types/api/notebooks/add_notebook_content.py +119 -0
- uncountable/types/api/outputs/get_output_organization.py +1 -1
- uncountable/types/api/recipes/edit_recipe_inputs.py +1 -1
- uncountable/types/api/recipes/get_recipes_data.py +29 -0
- uncountable/types/api/recipes/lock_recipes.py +2 -1
- uncountable/types/api/recipes/set_recipe_total.py +59 -0
- uncountable/types/api/recipes/unlock_recipes.py +2 -1
- uncountable/types/api/runsheet/export_default_runsheet.py +44 -0
- uncountable/types/api/uploader/complete_async_parse.py +4 -0
- uncountable/types/async_batch_processor.py +222 -0
- uncountable/types/async_batch_t.py +4 -0
- uncountable/types/client_base.py +367 -2
- uncountable/types/client_config.py +1 -0
- uncountable/types/client_config_t.py +10 -0
- uncountable/types/entity_t.py +3 -1
- uncountable/types/integration_server_t.py +2 -0
- uncountable/types/listing.py +46 -0
- uncountable/types/listing_t.py +533 -0
- uncountable/types/notices.py +8 -0
- uncountable/types/notices_t.py +37 -0
- uncountable/types/queued_job.py +1 -0
- uncountable/types/queued_job_t.py +9 -0
- uncountable/types/sockets.py +9 -0
- uncountable/types/sockets_t.py +99 -0
- uncountable/types/uploader_t.py +3 -2
- {uncountablepythonsdk-0.0.126.dist-info → uncountablepythonsdk-0.0.142.dev0.dist-info}/METADATA +4 -2
- {uncountablepythonsdk-0.0.126.dist-info → uncountablepythonsdk-0.0.142.dev0.dist-info}/RECORD +84 -68
- {uncountablepythonsdk-0.0.126.dist-info → uncountablepythonsdk-0.0.142.dev0.dist-info}/WHEEL +0 -0
- {uncountablepythonsdk-0.0.126.dist-info → uncountablepythonsdk-0.0.142.dev0.dist-info}/top_level.txt +0 -0
uncountable/types/client_base.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
from pkgs.serialization import OpaqueKey
|
|
11
|
+
import uncountable.types.api.notebooks.add_notebook_content as add_notebook_content_t
|
|
11
12
|
import uncountable.types.api.recipes.add_recipe_to_project as add_recipe_to_project_t
|
|
12
13
|
import uncountable.types.api.recipes.add_time_series_data as add_time_series_data_t
|
|
13
14
|
import uncountable.types.api.recipes.archive_recipes as archive_recipes_t
|
|
@@ -17,6 +18,7 @@ import uncountable.types.api.recipes.associate_recipe_as_lot as associate_recipe
|
|
|
17
18
|
from uncountable.types import async_batch_t
|
|
18
19
|
from uncountable.types import base_t
|
|
19
20
|
import uncountable.types.api.recipes.clear_recipe_outputs as clear_recipe_outputs_t
|
|
21
|
+
from uncountable.types import client_config_t
|
|
20
22
|
import uncountable.types.api.uploader.complete_async_parse as complete_async_parse_t
|
|
21
23
|
import uncountable.types.api.runsheet.complete_async_upload as complete_async_upload_t
|
|
22
24
|
import uncountable.types.api.chemical.convert_chemical_formats as convert_chemical_formats_t
|
|
@@ -35,6 +37,7 @@ import uncountable.types.api.batch.execute_batch as execute_batch_t
|
|
|
35
37
|
import uncountable.types.api.batch.execute_batch_load_async as execute_batch_load_async_t
|
|
36
38
|
import uncountable.types.api.entity.export_entities as export_entities_t
|
|
37
39
|
from uncountable.types import exports_t
|
|
40
|
+
import uncountable.types.api.listing.fetch_listing as fetch_listing_t
|
|
38
41
|
from uncountable.types import field_values_t
|
|
39
42
|
from uncountable.types import generic_upload_t
|
|
40
43
|
import uncountable.types.api.recipes.get_column_calculation_values as get_column_calculation_values_t
|
|
@@ -47,6 +50,7 @@ import uncountable.types.api.inputs.get_input_names as get_input_names_t
|
|
|
47
50
|
import uncountable.types.api.inputs.get_inputs_data as get_inputs_data_t
|
|
48
51
|
import uncountable.types.api.outputs.get_output_data as get_output_data_t
|
|
49
52
|
import uncountable.types.api.outputs.get_output_names as get_output_names_t
|
|
53
|
+
import uncountable.types.api.outputs.get_output_organization as get_output_organization_t
|
|
50
54
|
import uncountable.types.api.project.get_projects as get_projects_t
|
|
51
55
|
import uncountable.types.api.project.get_projects_data as get_projects_data_t
|
|
52
56
|
import uncountable.types.api.recipes.get_recipe_calculations as get_recipe_calculations_t
|
|
@@ -59,12 +63,15 @@ import uncountable.types.api.entity.grant_entity_permissions as grant_entity_per
|
|
|
59
63
|
from uncountable.types import id_source_t
|
|
60
64
|
from uncountable.types import identifier_t
|
|
61
65
|
import uncountable.types.api.uploader.invoke_uploader as invoke_uploader_t
|
|
66
|
+
import uncountable.types.api.entity.list_aggregate as list_aggregate_t
|
|
62
67
|
import uncountable.types.api.entity.list_entities as list_entities_t
|
|
63
68
|
import uncountable.types.api.id_source.list_id_source as list_id_source_t
|
|
69
|
+
from uncountable.types import listing_t
|
|
64
70
|
import uncountable.types.api.entity.lock_entity as lock_entity_t
|
|
65
71
|
import uncountable.types.api.recipes.lock_recipes as lock_recipes_t
|
|
66
72
|
import uncountable.types.api.entity.lookup_entity as lookup_entity_t
|
|
67
73
|
import uncountable.types.api.id_source.match_id_source as match_id_source_t
|
|
74
|
+
from uncountable.types import notices_t
|
|
68
75
|
from uncountable.types import notifications_t
|
|
69
76
|
from uncountable.types import permissions_t
|
|
70
77
|
from uncountable.types import post_base_t
|
|
@@ -73,11 +80,13 @@ from uncountable.types import recipe_identifiers_t
|
|
|
73
80
|
from uncountable.types import recipe_links_t
|
|
74
81
|
from uncountable.types import recipe_metadata_t
|
|
75
82
|
from uncountable.types import recipe_workflow_steps_t
|
|
83
|
+
import uncountable.types.api.integrations.register_sockets_token as register_sockets_token_t
|
|
76
84
|
import uncountable.types.api.recipes.remove_recipe_from_project as remove_recipe_from_project_t
|
|
77
85
|
import uncountable.types.api.recipe_links.remove_recipe_link as remove_recipe_link_t
|
|
78
86
|
import uncountable.types.api.entity.resolve_entity_ids as resolve_entity_ids_t
|
|
79
87
|
import uncountable.types.api.outputs.resolve_output_conditions as resolve_output_conditions_t
|
|
80
88
|
import uncountable.types.api.triggers.run_trigger as run_trigger_t
|
|
89
|
+
import uncountable.types.api.entity.set_barcode as set_barcode_t
|
|
81
90
|
import uncountable.types.api.permissions.set_core_permissions as set_core_permissions_t
|
|
82
91
|
import uncountable.types.api.entity.set_entity_field_values as set_entity_field_values_t
|
|
83
92
|
import uncountable.types.api.inputs.set_input_attribute_values as set_input_attribute_values_t
|
|
@@ -90,7 +99,9 @@ import uncountable.types.api.recipes.set_recipe_output_annotations as set_recipe
|
|
|
90
99
|
import uncountable.types.api.recipes.set_recipe_output_file as set_recipe_output_file_t
|
|
91
100
|
import uncountable.types.api.recipes.set_recipe_outputs as set_recipe_outputs_t
|
|
92
101
|
import uncountable.types.api.recipes.set_recipe_tags as set_recipe_tags_t
|
|
102
|
+
import uncountable.types.api.recipes.set_recipe_total as set_recipe_total_t
|
|
93
103
|
import uncountable.types.api.entity.set_values as set_values_t
|
|
104
|
+
from uncountable.types import sockets_t
|
|
94
105
|
import uncountable.types.api.entity.transition_entity_phase as transition_entity_phase_t
|
|
95
106
|
import uncountable.types.api.recipes.unarchive_recipes as unarchive_recipes_t
|
|
96
107
|
import uncountable.types.api.entity.unlock_entity as unlock_entity_t
|
|
@@ -110,6 +121,7 @@ class APIRequest:
|
|
|
110
121
|
method: str
|
|
111
122
|
endpoint: str
|
|
112
123
|
args: typing.Any
|
|
124
|
+
request_options: client_config_t.RequestOptions | None = None
|
|
113
125
|
|
|
114
126
|
|
|
115
127
|
class ClientMethods(ABC):
|
|
@@ -118,11 +130,39 @@ class ClientMethods(ABC):
|
|
|
118
130
|
def do_request(self, *, api_request: APIRequest, return_type: type[DT]) -> DT:
|
|
119
131
|
...
|
|
120
132
|
|
|
133
|
+
def add_notebook_content(
|
|
134
|
+
self,
|
|
135
|
+
*,
|
|
136
|
+
notebook_key: identifier_t.IdentifierKey,
|
|
137
|
+
location: add_notebook_content_t.Location,
|
|
138
|
+
contents: list[add_notebook_content_t.InputContent],
|
|
139
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
140
|
+
) -> add_notebook_content_t.Data:
|
|
141
|
+
"""Adds content to an existing notebook
|
|
142
|
+
|
|
143
|
+
:param notebook_key: Key of the notebook to add the content to
|
|
144
|
+
:param location: The location to add the content to in the notebook
|
|
145
|
+
:param contents: List of input content to add to the notebook
|
|
146
|
+
"""
|
|
147
|
+
args = add_notebook_content_t.Arguments(
|
|
148
|
+
notebook_key=notebook_key,
|
|
149
|
+
location=location,
|
|
150
|
+
contents=contents,
|
|
151
|
+
)
|
|
152
|
+
api_request = APIRequest(
|
|
153
|
+
method=add_notebook_content_t.ENDPOINT_METHOD,
|
|
154
|
+
endpoint=add_notebook_content_t.ENDPOINT_PATH,
|
|
155
|
+
args=args,
|
|
156
|
+
request_options=_request_options,
|
|
157
|
+
)
|
|
158
|
+
return self.do_request(api_request=api_request, return_type=add_notebook_content_t.Data)
|
|
159
|
+
|
|
121
160
|
def add_recipe_to_project(
|
|
122
161
|
self,
|
|
123
162
|
*,
|
|
124
163
|
recipe_key: identifier_t.IdentifierKey,
|
|
125
164
|
project_key: identifier_t.IdentifierKey,
|
|
165
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
126
166
|
) -> add_recipe_to_project_t.Data:
|
|
127
167
|
"""Adds a recipe to a project
|
|
128
168
|
|
|
@@ -137,6 +177,7 @@ class ClientMethods(ABC):
|
|
|
137
177
|
method=add_recipe_to_project_t.ENDPOINT_METHOD,
|
|
138
178
|
endpoint=add_recipe_to_project_t.ENDPOINT_PATH,
|
|
139
179
|
args=args,
|
|
180
|
+
request_options=_request_options,
|
|
140
181
|
)
|
|
141
182
|
return self.do_request(api_request=api_request, return_type=add_recipe_to_project_t.Data)
|
|
142
183
|
|
|
@@ -146,6 +187,7 @@ class ClientMethods(ABC):
|
|
|
146
187
|
time_series_segment_key: identifier_t.IdentifierKey,
|
|
147
188
|
time_series_data: list[add_time_series_data_t.TimeSeriesDatum],
|
|
148
189
|
on_conflict: add_time_series_data_t.OnTimepointConflict = add_time_series_data_t.OnTimepointConflict.ERROR,
|
|
190
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
149
191
|
) -> add_time_series_data_t.Data:
|
|
150
192
|
"""Add timepoint data to a time series segment.
|
|
151
193
|
|
|
@@ -162,6 +204,7 @@ class ClientMethods(ABC):
|
|
|
162
204
|
method=add_time_series_data_t.ENDPOINT_METHOD,
|
|
163
205
|
endpoint=add_time_series_data_t.ENDPOINT_PATH,
|
|
164
206
|
args=args,
|
|
207
|
+
request_options=_request_options,
|
|
165
208
|
)
|
|
166
209
|
return self.do_request(api_request=api_request, return_type=add_time_series_data_t.Data)
|
|
167
210
|
|
|
@@ -170,6 +213,7 @@ class ClientMethods(ABC):
|
|
|
170
213
|
*,
|
|
171
214
|
recipes: list[identifier_t.IdentifierKey],
|
|
172
215
|
reason: str | None = None,
|
|
216
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
173
217
|
) -> archive_recipes_t.Data:
|
|
174
218
|
"""Archive the provided recipes and their children
|
|
175
219
|
|
|
@@ -184,6 +228,7 @@ class ClientMethods(ABC):
|
|
|
184
228
|
method=archive_recipes_t.ENDPOINT_METHOD,
|
|
185
229
|
endpoint=archive_recipes_t.ENDPOINT_PATH,
|
|
186
230
|
args=args,
|
|
231
|
+
request_options=_request_options,
|
|
187
232
|
)
|
|
188
233
|
return self.do_request(api_request=api_request, return_type=archive_recipes_t.Data)
|
|
189
234
|
|
|
@@ -192,6 +237,7 @@ class ClientMethods(ABC):
|
|
|
192
237
|
*,
|
|
193
238
|
equipment_key: identifier_t.IdentifierKey,
|
|
194
239
|
material_family_ids: list[base_t.ObjectId],
|
|
240
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
195
241
|
) -> associate_equipment_input_t.Data:
|
|
196
242
|
"""Create or return the input association for equipment
|
|
197
243
|
|
|
@@ -206,6 +252,7 @@ class ClientMethods(ABC):
|
|
|
206
252
|
method=associate_equipment_input_t.ENDPOINT_METHOD,
|
|
207
253
|
endpoint=associate_equipment_input_t.ENDPOINT_PATH,
|
|
208
254
|
args=args,
|
|
255
|
+
request_options=_request_options,
|
|
209
256
|
)
|
|
210
257
|
return self.do_request(api_request=api_request, return_type=associate_equipment_input_t.Data)
|
|
211
258
|
|
|
@@ -215,6 +262,7 @@ class ClientMethods(ABC):
|
|
|
215
262
|
recipe_key: identifier_t.IdentifierKey,
|
|
216
263
|
input_key: identifier_t.IdentifierKey | None = None,
|
|
217
264
|
show_in_listings: bool | None = None,
|
|
265
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
218
266
|
) -> associate_recipe_as_input_t.Data:
|
|
219
267
|
"""Create or return the input association for a recipe
|
|
220
268
|
|
|
@@ -231,6 +279,7 @@ class ClientMethods(ABC):
|
|
|
231
279
|
method=associate_recipe_as_input_t.ENDPOINT_METHOD,
|
|
232
280
|
endpoint=associate_recipe_as_input_t.ENDPOINT_PATH,
|
|
233
281
|
args=args,
|
|
282
|
+
request_options=_request_options,
|
|
234
283
|
)
|
|
235
284
|
return self.do_request(api_request=api_request, return_type=associate_recipe_as_input_t.Data)
|
|
236
285
|
|
|
@@ -239,6 +288,7 @@ class ClientMethods(ABC):
|
|
|
239
288
|
*,
|
|
240
289
|
recipe_key: identifier_t.IdentifierKey,
|
|
241
290
|
ingredient_key: identifier_t.IdentifierKey,
|
|
291
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
242
292
|
) -> associate_recipe_as_lot_t.Data:
|
|
243
293
|
"""Create a new lot association for the provided recipe with the provided ingredient
|
|
244
294
|
|
|
@@ -253,6 +303,7 @@ class ClientMethods(ABC):
|
|
|
253
303
|
method=associate_recipe_as_lot_t.ENDPOINT_METHOD,
|
|
254
304
|
endpoint=associate_recipe_as_lot_t.ENDPOINT_PATH,
|
|
255
305
|
args=args,
|
|
306
|
+
request_options=_request_options,
|
|
256
307
|
)
|
|
257
308
|
return self.do_request(api_request=api_request, return_type=associate_recipe_as_lot_t.Data)
|
|
258
309
|
|
|
@@ -260,6 +311,7 @@ class ClientMethods(ABC):
|
|
|
260
311
|
self,
|
|
261
312
|
*,
|
|
262
313
|
recipe_key: identifier_t.IdentifierKey,
|
|
314
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
263
315
|
) -> clear_recipe_outputs_t.Data:
|
|
264
316
|
"""Clears all output values & output metadata for a given recipe
|
|
265
317
|
|
|
@@ -272,6 +324,7 @@ class ClientMethods(ABC):
|
|
|
272
324
|
method=clear_recipe_outputs_t.ENDPOINT_METHOD,
|
|
273
325
|
endpoint=clear_recipe_outputs_t.ENDPOINT_PATH,
|
|
274
326
|
args=args,
|
|
327
|
+
request_options=_request_options,
|
|
275
328
|
)
|
|
276
329
|
return self.do_request(api_request=api_request, return_type=clear_recipe_outputs_t.Data)
|
|
277
330
|
|
|
@@ -279,17 +332,23 @@ class ClientMethods(ABC):
|
|
|
279
332
|
self,
|
|
280
333
|
*,
|
|
281
334
|
parsed_file_data: list[uploader_t.ParsedFileData],
|
|
335
|
+
async_job_key: identifier_t.IdentifierKey,
|
|
336
|
+
upload_destination: generic_upload_t.UploadDestinationRecipe,
|
|
337
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
282
338
|
) -> complete_async_parse_t.Data:
|
|
283
339
|
"""Parses uploaded files asynchronously
|
|
284
340
|
|
|
285
341
|
"""
|
|
286
342
|
args = complete_async_parse_t.Arguments(
|
|
287
343
|
parsed_file_data=parsed_file_data,
|
|
344
|
+
async_job_key=async_job_key,
|
|
345
|
+
upload_destination=upload_destination,
|
|
288
346
|
)
|
|
289
347
|
api_request = APIRequest(
|
|
290
348
|
method=complete_async_parse_t.ENDPOINT_METHOD,
|
|
291
349
|
endpoint=complete_async_parse_t.ENDPOINT_PATH,
|
|
292
350
|
args=args,
|
|
351
|
+
request_options=_request_options,
|
|
293
352
|
)
|
|
294
353
|
return self.do_request(api_request=api_request, return_type=complete_async_parse_t.Data)
|
|
295
354
|
|
|
@@ -298,6 +357,7 @@ class ClientMethods(ABC):
|
|
|
298
357
|
*,
|
|
299
358
|
async_job_id: base_t.ObjectId,
|
|
300
359
|
file_id: base_t.ObjectId,
|
|
360
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
301
361
|
) -> complete_async_upload_t.Data:
|
|
302
362
|
"""Processes an file id with a given async job id to be uploaded asynchronously
|
|
303
363
|
|
|
@@ -310,6 +370,7 @@ class ClientMethods(ABC):
|
|
|
310
370
|
method=complete_async_upload_t.ENDPOINT_METHOD,
|
|
311
371
|
endpoint=complete_async_upload_t.ENDPOINT_PATH,
|
|
312
372
|
args=args,
|
|
373
|
+
request_options=_request_options,
|
|
313
374
|
)
|
|
314
375
|
return self.do_request(api_request=api_request, return_type=complete_async_upload_t.Data)
|
|
315
376
|
|
|
@@ -317,6 +378,7 @@ class ClientMethods(ABC):
|
|
|
317
378
|
self,
|
|
318
379
|
*,
|
|
319
380
|
source_chemical_structures: list[convert_chemical_formats_t.ChemicalStructureFile],
|
|
381
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
320
382
|
) -> convert_chemical_formats_t.Data:
|
|
321
383
|
"""Converts chemical formats, into the format used by Uncountable and usable in other APIs for eg. set_input_attribute_values
|
|
322
384
|
|
|
@@ -328,6 +390,7 @@ class ClientMethods(ABC):
|
|
|
328
390
|
method=convert_chemical_formats_t.ENDPOINT_METHOD,
|
|
329
391
|
endpoint=convert_chemical_formats_t.ENDPOINT_PATH,
|
|
330
392
|
args=args,
|
|
393
|
+
request_options=_request_options,
|
|
331
394
|
)
|
|
332
395
|
return self.do_request(api_request=api_request, return_type=convert_chemical_formats_t.Data)
|
|
333
396
|
|
|
@@ -338,6 +401,7 @@ class ClientMethods(ABC):
|
|
|
338
401
|
entities_to_create: list[create_entities_t.EntityToCreate],
|
|
339
402
|
definition_id: base_t.ObjectId | None = None,
|
|
340
403
|
definition_key: identifier_t.IdentifierKey | None = None,
|
|
404
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
341
405
|
) -> create_entities_t.Data:
|
|
342
406
|
"""Creates new Uncountable entities
|
|
343
407
|
|
|
@@ -356,6 +420,7 @@ class ClientMethods(ABC):
|
|
|
356
420
|
method=create_entities_t.ENDPOINT_METHOD,
|
|
357
421
|
endpoint=create_entities_t.ENDPOINT_PATH,
|
|
358
422
|
args=args,
|
|
423
|
+
request_options=_request_options,
|
|
359
424
|
)
|
|
360
425
|
return self.do_request(api_request=api_request, return_type=create_entities_t.Data)
|
|
361
426
|
|
|
@@ -367,6 +432,7 @@ class ClientMethods(ABC):
|
|
|
367
432
|
definition_key: identifier_t.IdentifierKey | None = None,
|
|
368
433
|
field_values: list[field_values_t.FieldRefNameValue] | None = None,
|
|
369
434
|
parent_entity: entity_t.Entity | None = None,
|
|
435
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
370
436
|
) -> create_entity_t.Data:
|
|
371
437
|
"""Creates a new Uncountable entity
|
|
372
438
|
|
|
@@ -386,6 +452,7 @@ class ClientMethods(ABC):
|
|
|
386
452
|
method=create_entity_t.ENDPOINT_METHOD,
|
|
387
453
|
endpoint=create_entity_t.ENDPOINT_PATH,
|
|
388
454
|
args=args,
|
|
455
|
+
request_options=_request_options,
|
|
389
456
|
)
|
|
390
457
|
return self.do_request(api_request=api_request, return_type=create_entity_t.Data)
|
|
391
458
|
|
|
@@ -393,6 +460,7 @@ class ClientMethods(ABC):
|
|
|
393
460
|
self,
|
|
394
461
|
*,
|
|
395
462
|
inputs_to_create: list[create_inputs_t.InputToCreate],
|
|
463
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
396
464
|
) -> create_inputs_t.Data:
|
|
397
465
|
"""Creates new inputs
|
|
398
466
|
|
|
@@ -405,6 +473,7 @@ class ClientMethods(ABC):
|
|
|
405
473
|
method=create_inputs_t.ENDPOINT_METHOD,
|
|
406
474
|
endpoint=create_inputs_t.ENDPOINT_PATH,
|
|
407
475
|
args=args,
|
|
476
|
+
request_options=_request_options,
|
|
408
477
|
)
|
|
409
478
|
return self.do_request(api_request=api_request, return_type=create_inputs_t.Data)
|
|
410
479
|
|
|
@@ -413,6 +482,7 @@ class ClientMethods(ABC):
|
|
|
413
482
|
*,
|
|
414
483
|
recipe_key: identifier_t.IdentifierKey,
|
|
415
484
|
recipe_workflow_step_identifier: recipe_workflow_steps_t.RecipeWorkflowStepIdentifier,
|
|
485
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
416
486
|
) -> create_mix_order_t.Data:
|
|
417
487
|
"""Creates mix order on a recipe workflow step
|
|
418
488
|
|
|
@@ -425,6 +495,7 @@ class ClientMethods(ABC):
|
|
|
425
495
|
method=create_mix_order_t.ENDPOINT_METHOD,
|
|
426
496
|
endpoint=create_mix_order_t.ENDPOINT_PATH,
|
|
427
497
|
args=args,
|
|
498
|
+
request_options=_request_options,
|
|
428
499
|
)
|
|
429
500
|
return self.do_request(api_request=api_request, return_type=create_mix_order_t.Data)
|
|
430
501
|
|
|
@@ -436,6 +507,7 @@ class ClientMethods(ABC):
|
|
|
436
507
|
field_values: list[field_values_t.FieldArgumentValue],
|
|
437
508
|
entity_key: identifier_t.IdentifierKey | None = None,
|
|
438
509
|
on_create_init_field_values: list[field_values_t.FieldArgumentValue] | None = None,
|
|
510
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
439
511
|
) -> create_or_update_entity_t.Data:
|
|
440
512
|
"""Creates or updates field values for an entity
|
|
441
513
|
|
|
@@ -452,6 +524,7 @@ class ClientMethods(ABC):
|
|
|
452
524
|
method=create_or_update_entity_t.ENDPOINT_METHOD,
|
|
453
525
|
endpoint=create_or_update_entity_t.ENDPOINT_PATH,
|
|
454
526
|
args=args,
|
|
527
|
+
request_options=_request_options,
|
|
455
528
|
)
|
|
456
529
|
return self.do_request(api_request=api_request, return_type=create_or_update_entity_t.Data)
|
|
457
530
|
|
|
@@ -466,6 +539,7 @@ class ClientMethods(ABC):
|
|
|
466
539
|
recipe_metadata: list[recipe_metadata_t.MetadataValue] | None = None,
|
|
467
540
|
identifiers: recipe_identifiers_t.RecipeIdentifiers | None = None,
|
|
468
541
|
definition_key: identifier_t.IdentifierKey | None = None,
|
|
542
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
469
543
|
) -> create_recipe_t.Data:
|
|
470
544
|
"""Returns the id of the recipe being created.
|
|
471
545
|
|
|
@@ -492,6 +566,7 @@ class ClientMethods(ABC):
|
|
|
492
566
|
method=create_recipe_t.ENDPOINT_METHOD,
|
|
493
567
|
endpoint=create_recipe_t.ENDPOINT_PATH,
|
|
494
568
|
args=args,
|
|
569
|
+
request_options=_request_options,
|
|
495
570
|
)
|
|
496
571
|
return self.do_request(api_request=api_request, return_type=create_recipe_t.Data)
|
|
497
572
|
|
|
@@ -502,6 +577,7 @@ class ClientMethods(ABC):
|
|
|
502
577
|
recipe_to_key: identifier_t.IdentifierKey,
|
|
503
578
|
link_type: typing.Literal[recipe_links_t.RecipeLinkType.CHILD] | typing.Literal[recipe_links_t.RecipeLinkType.CONTROL] | typing.Literal[recipe_links_t.RecipeLinkType.USER_LINK] | typing.Literal[recipe_links_t.RecipeLinkType.PREVIOUS_EXPERIMENT],
|
|
504
579
|
name: str | None = None,
|
|
580
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
505
581
|
) -> create_recipe_link_t.Data:
|
|
506
582
|
"""Create a link between two recipes. Skip if the link already exists
|
|
507
583
|
|
|
@@ -520,6 +596,7 @@ class ClientMethods(ABC):
|
|
|
520
596
|
method=create_recipe_link_t.ENDPOINT_METHOD,
|
|
521
597
|
endpoint=create_recipe_link_t.ENDPOINT_PATH,
|
|
522
598
|
args=args,
|
|
599
|
+
request_options=_request_options,
|
|
523
600
|
)
|
|
524
601
|
return self.do_request(api_request=api_request, return_type=create_recipe_link_t.Data)
|
|
525
602
|
|
|
@@ -529,8 +606,9 @@ class ClientMethods(ABC):
|
|
|
529
606
|
material_family_id: base_t.ObjectId,
|
|
530
607
|
recipe_definitions: list[create_recipes_t.CreateRecipeDefinition],
|
|
531
608
|
project_id: base_t.ObjectId | None = None,
|
|
609
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
532
610
|
) -> create_recipes_t.Data:
|
|
533
|
-
"""
|
|
611
|
+
"""Creates recipes in Uncountable, optionally with metadata values, and returns the resulting ids in corresponding order
|
|
534
612
|
|
|
535
613
|
:param material_family_id: The identifier of the material family to create the recipes in
|
|
536
614
|
:param project_id: The identifier of the project to create the recipes in
|
|
@@ -544,6 +622,7 @@ class ClientMethods(ABC):
|
|
|
544
622
|
method=create_recipes_t.ENDPOINT_METHOD,
|
|
545
623
|
endpoint=create_recipes_t.ENDPOINT_PATH,
|
|
546
624
|
args=args,
|
|
625
|
+
request_options=_request_options,
|
|
547
626
|
)
|
|
548
627
|
return self.do_request(api_request=api_request, return_type=create_recipes_t.Data)
|
|
549
628
|
|
|
@@ -551,6 +630,7 @@ class ClientMethods(ABC):
|
|
|
551
630
|
self,
|
|
552
631
|
*,
|
|
553
632
|
recipe_key: identifier_t.IdentifierKey,
|
|
633
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
554
634
|
) -> disassociate_recipe_as_input_t.Data:
|
|
555
635
|
"""Remove any association between a recipe and ingredients
|
|
556
636
|
|
|
@@ -563,6 +643,7 @@ class ClientMethods(ABC):
|
|
|
563
643
|
method=disassociate_recipe_as_input_t.ENDPOINT_METHOD,
|
|
564
644
|
endpoint=disassociate_recipe_as_input_t.ENDPOINT_PATH,
|
|
565
645
|
args=args,
|
|
646
|
+
request_options=_request_options,
|
|
566
647
|
)
|
|
567
648
|
return self.do_request(api_request=api_request, return_type=disassociate_recipe_as_input_t.Data)
|
|
568
649
|
|
|
@@ -572,6 +653,7 @@ class ClientMethods(ABC):
|
|
|
572
653
|
recipe_key: identifier_t.IdentifierKey,
|
|
573
654
|
recipe_workflow_step_identifier: recipe_workflow_steps_t.RecipeWorkflowStepIdentifier,
|
|
574
655
|
edits: list[edit_recipe_inputs_t.RecipeInputEdit],
|
|
656
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
575
657
|
) -> edit_recipe_inputs_t.Data:
|
|
576
658
|
"""Clear, update, or add inputs on a recipe
|
|
577
659
|
|
|
@@ -586,6 +668,7 @@ class ClientMethods(ABC):
|
|
|
586
668
|
method=edit_recipe_inputs_t.ENDPOINT_METHOD,
|
|
587
669
|
endpoint=edit_recipe_inputs_t.ENDPOINT_PATH,
|
|
588
670
|
args=args,
|
|
671
|
+
request_options=_request_options,
|
|
589
672
|
)
|
|
590
673
|
return self.do_request(api_request=api_request, return_type=edit_recipe_inputs_t.Data)
|
|
591
674
|
|
|
@@ -593,6 +676,7 @@ class ClientMethods(ABC):
|
|
|
593
676
|
self,
|
|
594
677
|
*,
|
|
595
678
|
requests: list[execute_batch_t.BatchRequest],
|
|
679
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
596
680
|
) -> execute_batch_t.Data:
|
|
597
681
|
"""Run multiple API calls via one request
|
|
598
682
|
|
|
@@ -604,6 +688,7 @@ class ClientMethods(ABC):
|
|
|
604
688
|
method=execute_batch_t.ENDPOINT_METHOD,
|
|
605
689
|
endpoint=execute_batch_t.ENDPOINT_PATH,
|
|
606
690
|
args=args,
|
|
691
|
+
request_options=_request_options,
|
|
607
692
|
)
|
|
608
693
|
return self.do_request(api_request=api_request, return_type=execute_batch_t.Data)
|
|
609
694
|
|
|
@@ -611,6 +696,7 @@ class ClientMethods(ABC):
|
|
|
611
696
|
self,
|
|
612
697
|
*,
|
|
613
698
|
requests: list[async_batch_t.AsyncBatchRequest],
|
|
699
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
614
700
|
) -> execute_batch_load_async_t.Data:
|
|
615
701
|
"""Run multiple API calls via one request
|
|
616
702
|
|
|
@@ -622,6 +708,7 @@ class ClientMethods(ABC):
|
|
|
622
708
|
method=execute_batch_load_async_t.ENDPOINT_METHOD,
|
|
623
709
|
endpoint=execute_batch_load_async_t.ENDPOINT_PATH,
|
|
624
710
|
args=args,
|
|
711
|
+
request_options=_request_options,
|
|
625
712
|
)
|
|
626
713
|
return self.do_request(api_request=api_request, return_type=execute_batch_load_async_t.Data)
|
|
627
714
|
|
|
@@ -633,6 +720,7 @@ class ClientMethods(ABC):
|
|
|
633
720
|
client_timezone: exports_t.ListingExportUserTimezone | None = None,
|
|
634
721
|
limit: int | None = None,
|
|
635
722
|
attributes: list[export_entities_t.ListingAttribute] | None = None,
|
|
723
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
636
724
|
) -> export_entities_t.Data:
|
|
637
725
|
"""Uses a structured loading configuration to export entities in the system. This endpoint is asynchronous, and returns the job ID that can be used to query the status of the export.
|
|
638
726
|
|
|
@@ -650,14 +738,49 @@ class ClientMethods(ABC):
|
|
|
650
738
|
method=export_entities_t.ENDPOINT_METHOD,
|
|
651
739
|
endpoint=export_entities_t.ENDPOINT_PATH,
|
|
652
740
|
args=args,
|
|
741
|
+
request_options=_request_options,
|
|
653
742
|
)
|
|
654
743
|
return self.do_request(api_request=api_request, return_type=export_entities_t.Data)
|
|
655
744
|
|
|
745
|
+
def fetch_listing(
|
|
746
|
+
self,
|
|
747
|
+
*,
|
|
748
|
+
entity_type: entity_t.EntityType,
|
|
749
|
+
columns: list[listing_t.ColumnIdentifier],
|
|
750
|
+
filters: listing_t.FilterNode | None = None,
|
|
751
|
+
limit: int | None = None,
|
|
752
|
+
offset: int | None = None,
|
|
753
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
754
|
+
) -> fetch_listing_t.Data:
|
|
755
|
+
"""External API for fetching a listing based on some structured columns and filters
|
|
756
|
+
|
|
757
|
+
:param entity_type: The entity type to fetch listing entries for
|
|
758
|
+
:param columns: The columns to include in the results
|
|
759
|
+
:param filters: Structured filters to apply to the listing, represented by a FilterNode object
|
|
760
|
+
:param limit: The number of entries to return. If not provided, defaults to 100. Note a maximum of 100 entries can be returned.
|
|
761
|
+
:param offset: The number of entries to skip for pagination
|
|
762
|
+
"""
|
|
763
|
+
args = fetch_listing_t.Arguments(
|
|
764
|
+
entity_type=entity_type,
|
|
765
|
+
columns=columns,
|
|
766
|
+
filters=filters,
|
|
767
|
+
limit=limit,
|
|
768
|
+
offset=offset,
|
|
769
|
+
)
|
|
770
|
+
api_request = APIRequest(
|
|
771
|
+
method=fetch_listing_t.ENDPOINT_METHOD,
|
|
772
|
+
endpoint=fetch_listing_t.ENDPOINT_PATH,
|
|
773
|
+
args=args,
|
|
774
|
+
request_options=_request_options,
|
|
775
|
+
)
|
|
776
|
+
return self.do_request(api_request=api_request, return_type=fetch_listing_t.Data)
|
|
777
|
+
|
|
656
778
|
def get_column_calculation_values(
|
|
657
779
|
self,
|
|
658
780
|
*,
|
|
659
781
|
recipe_keys: list[identifier_t.IdentifierKey],
|
|
660
782
|
calculation_key: identifier_t.IdentifierKey,
|
|
783
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
661
784
|
) -> get_column_calculation_values_t.Data:
|
|
662
785
|
"""Get the values for a column calculations for recipes
|
|
663
786
|
|
|
@@ -672,17 +795,24 @@ class ClientMethods(ABC):
|
|
|
672
795
|
method=get_column_calculation_values_t.ENDPOINT_METHOD,
|
|
673
796
|
endpoint=get_column_calculation_values_t.ENDPOINT_PATH,
|
|
674
797
|
args=args,
|
|
798
|
+
request_options=_request_options,
|
|
675
799
|
)
|
|
676
800
|
return self.do_request(api_request=api_request, return_type=get_column_calculation_values_t.Data)
|
|
677
801
|
|
|
678
802
|
def get_current_user_info(
|
|
679
803
|
self,
|
|
804
|
+
*,
|
|
805
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
680
806
|
) -> get_current_user_info_t.Data:
|
|
807
|
+
"""Return information about the current user
|
|
808
|
+
|
|
809
|
+
"""
|
|
681
810
|
args = get_current_user_info_t.Arguments()
|
|
682
811
|
api_request = APIRequest(
|
|
683
812
|
method=get_current_user_info_t.ENDPOINT_METHOD,
|
|
684
813
|
endpoint=get_current_user_info_t.ENDPOINT_PATH,
|
|
685
814
|
args=args,
|
|
815
|
+
request_options=_request_options,
|
|
686
816
|
)
|
|
687
817
|
return self.do_request(api_request=api_request, return_type=get_current_user_info_t.Data)
|
|
688
818
|
|
|
@@ -691,6 +821,7 @@ class ClientMethods(ABC):
|
|
|
691
821
|
*,
|
|
692
822
|
recipe_output_id: base_t.ObjectId | None = None,
|
|
693
823
|
recipe_input_id: base_t.ObjectId | None = None,
|
|
824
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
694
825
|
) -> get_curve_t.Data:
|
|
695
826
|
"""Returns an array of values for the specified curve id.
|
|
696
827
|
|
|
@@ -705,6 +836,7 @@ class ClientMethods(ABC):
|
|
|
705
836
|
method=get_curve_t.ENDPOINT_METHOD,
|
|
706
837
|
endpoint=get_curve_t.ENDPOINT_PATH,
|
|
707
838
|
args=args,
|
|
839
|
+
request_options=_request_options,
|
|
708
840
|
)
|
|
709
841
|
return self.do_request(api_request=api_request, return_type=get_curve_t.Data)
|
|
710
842
|
|
|
@@ -713,6 +845,7 @@ class ClientMethods(ABC):
|
|
|
713
845
|
*,
|
|
714
846
|
entity_ids: list[base_t.ObjectId],
|
|
715
847
|
entity_type: entity_t.EntityType,
|
|
848
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
716
849
|
) -> get_entities_data_t.Data:
|
|
717
850
|
"""Gets the details for a passed entity
|
|
718
851
|
|
|
@@ -727,6 +860,7 @@ class ClientMethods(ABC):
|
|
|
727
860
|
method=get_entities_data_t.ENDPOINT_METHOD,
|
|
728
861
|
endpoint=get_entities_data_t.ENDPOINT_PATH,
|
|
729
862
|
args=args,
|
|
863
|
+
request_options=_request_options,
|
|
730
864
|
)
|
|
731
865
|
return self.do_request(api_request=api_request, return_type=get_entities_data_t.Data)
|
|
732
866
|
|
|
@@ -738,6 +872,7 @@ class ClientMethods(ABC):
|
|
|
738
872
|
is_parameter: bool | None,
|
|
739
873
|
offset: int | None = None,
|
|
740
874
|
limit: int | None = None,
|
|
875
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
741
876
|
) -> get_input_data_t.Data:
|
|
742
877
|
"""Gets the attribute, categorization and other metadata associated with a set of inputs. An input is either an ingredient or process parameter, with metadata and calculations assigned separately
|
|
743
878
|
|
|
@@ -758,6 +893,7 @@ class ClientMethods(ABC):
|
|
|
758
893
|
method=get_input_data_t.ENDPOINT_METHOD,
|
|
759
894
|
endpoint=get_input_data_t.ENDPOINT_PATH,
|
|
760
895
|
args=args,
|
|
896
|
+
request_options=_request_options,
|
|
761
897
|
)
|
|
762
898
|
return self.do_request(api_request=api_request, return_type=get_input_data_t.Data)
|
|
763
899
|
|
|
@@ -765,6 +901,7 @@ class ClientMethods(ABC):
|
|
|
765
901
|
self,
|
|
766
902
|
*,
|
|
767
903
|
material_family_id: base_t.ObjectId,
|
|
904
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
768
905
|
) -> get_input_group_names_t.Data:
|
|
769
906
|
"""Gets the name of all input groups in a material family that either the user created, or are shared to all users.
|
|
770
907
|
|
|
@@ -777,6 +914,7 @@ class ClientMethods(ABC):
|
|
|
777
914
|
method=get_input_group_names_t.ENDPOINT_METHOD,
|
|
778
915
|
endpoint=get_input_group_names_t.ENDPOINT_PATH,
|
|
779
916
|
args=args,
|
|
917
|
+
request_options=_request_options,
|
|
780
918
|
)
|
|
781
919
|
return self.do_request(api_request=api_request, return_type=get_input_group_names_t.Data)
|
|
782
920
|
|
|
@@ -787,6 +925,7 @@ class ClientMethods(ABC):
|
|
|
787
925
|
is_parameter: bool | None,
|
|
788
926
|
offset: int | None = None,
|
|
789
927
|
limit: int | None = None,
|
|
928
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
790
929
|
) -> get_input_names_t.Data:
|
|
791
930
|
"""Gets the name of all inputs for a material family. An input is either an ingredient or process parameter, with metadata and calculations assigned separately
|
|
792
931
|
|
|
@@ -805,6 +944,7 @@ class ClientMethods(ABC):
|
|
|
805
944
|
method=get_input_names_t.ENDPOINT_METHOD,
|
|
806
945
|
endpoint=get_input_names_t.ENDPOINT_PATH,
|
|
807
946
|
args=args,
|
|
947
|
+
request_options=_request_options,
|
|
808
948
|
)
|
|
809
949
|
return self.do_request(api_request=api_request, return_type=get_input_names_t.Data)
|
|
810
950
|
|
|
@@ -812,6 +952,7 @@ class ClientMethods(ABC):
|
|
|
812
952
|
self,
|
|
813
953
|
*,
|
|
814
954
|
input_ids: list[base_t.ObjectId],
|
|
955
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
815
956
|
) -> get_inputs_data_t.Data:
|
|
816
957
|
"""Gets the details for passed input ids
|
|
817
958
|
|
|
@@ -824,6 +965,7 @@ class ClientMethods(ABC):
|
|
|
824
965
|
method=get_inputs_data_t.ENDPOINT_METHOD,
|
|
825
966
|
endpoint=get_inputs_data_t.ENDPOINT_PATH,
|
|
826
967
|
args=args,
|
|
968
|
+
request_options=_request_options,
|
|
827
969
|
)
|
|
828
970
|
return self.do_request(api_request=api_request, return_type=get_inputs_data_t.Data)
|
|
829
971
|
|
|
@@ -834,6 +976,7 @@ class ClientMethods(ABC):
|
|
|
834
976
|
output_ids: list[base_t.ObjectId] | None = None,
|
|
835
977
|
offset: int | None = None,
|
|
836
978
|
limit: int | None = None,
|
|
979
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
837
980
|
) -> get_output_data_t.Data:
|
|
838
981
|
"""Gets the attribute, categorization and other metadata associated with a set of outputs
|
|
839
982
|
|
|
@@ -852,6 +995,7 @@ class ClientMethods(ABC):
|
|
|
852
995
|
method=get_output_data_t.ENDPOINT_METHOD,
|
|
853
996
|
endpoint=get_output_data_t.ENDPOINT_PATH,
|
|
854
997
|
args=args,
|
|
998
|
+
request_options=_request_options,
|
|
855
999
|
)
|
|
856
1000
|
return self.do_request(api_request=api_request, return_type=get_output_data_t.Data)
|
|
857
1001
|
|
|
@@ -861,6 +1005,7 @@ class ClientMethods(ABC):
|
|
|
861
1005
|
material_family_id: base_t.ObjectId,
|
|
862
1006
|
offset: int | None = None,
|
|
863
1007
|
limit: int | None = None,
|
|
1008
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
864
1009
|
) -> get_output_names_t.Data:
|
|
865
1010
|
"""Gets the name of all outputs for a material family. An output represents a measurement value of any time (numeric, text, curve, etc). This includes calculations based off of other outputs, such as a calculated change over time
|
|
866
1011
|
|
|
@@ -877,14 +1022,36 @@ class ClientMethods(ABC):
|
|
|
877
1022
|
method=get_output_names_t.ENDPOINT_METHOD,
|
|
878
1023
|
endpoint=get_output_names_t.ENDPOINT_PATH,
|
|
879
1024
|
args=args,
|
|
1025
|
+
request_options=_request_options,
|
|
880
1026
|
)
|
|
881
1027
|
return self.do_request(api_request=api_request, return_type=get_output_names_t.Data)
|
|
882
1028
|
|
|
1029
|
+
def get_output_organization(
|
|
1030
|
+
self,
|
|
1031
|
+
*,
|
|
1032
|
+
request: get_output_organization_t.OutputOrganizationRequest,
|
|
1033
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1034
|
+
) -> get_output_organization_t.Data:
|
|
1035
|
+
"""Returns the output organization for the specified material family, project, or user
|
|
1036
|
+
|
|
1037
|
+
"""
|
|
1038
|
+
args = get_output_organization_t.Arguments(
|
|
1039
|
+
request=request,
|
|
1040
|
+
)
|
|
1041
|
+
api_request = APIRequest(
|
|
1042
|
+
method=get_output_organization_t.ENDPOINT_METHOD,
|
|
1043
|
+
endpoint=get_output_organization_t.ENDPOINT_PATH,
|
|
1044
|
+
args=args,
|
|
1045
|
+
request_options=_request_options,
|
|
1046
|
+
)
|
|
1047
|
+
return self.do_request(api_request=api_request, return_type=get_output_organization_t.Data)
|
|
1048
|
+
|
|
883
1049
|
def get_projects(
|
|
884
1050
|
self,
|
|
885
1051
|
*,
|
|
886
1052
|
all_material_families: bool,
|
|
887
1053
|
material_family_id: base_t.ObjectId | None,
|
|
1054
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
888
1055
|
) -> get_projects_t.Data:
|
|
889
1056
|
"""Gets either all projects created in the platform, or the projects associated with a material family ID. Projects are where experiments are placed in Uncountable, similar to folders in a directory structure
|
|
890
1057
|
|
|
@@ -899,6 +1066,7 @@ class ClientMethods(ABC):
|
|
|
899
1066
|
method=get_projects_t.ENDPOINT_METHOD,
|
|
900
1067
|
endpoint=get_projects_t.ENDPOINT_PATH,
|
|
901
1068
|
args=args,
|
|
1069
|
+
request_options=_request_options,
|
|
902
1070
|
)
|
|
903
1071
|
return self.do_request(api_request=api_request, return_type=get_projects_t.Data)
|
|
904
1072
|
|
|
@@ -908,6 +1076,7 @@ class ClientMethods(ABC):
|
|
|
908
1076
|
project_ids: list[base_t.ObjectId],
|
|
909
1077
|
offset: int | None = None,
|
|
910
1078
|
limit: int | None = None,
|
|
1079
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
911
1080
|
) -> get_projects_data_t.Data:
|
|
912
1081
|
"""Gets either all data associated with a set of projects created in the platform. Because Uncountables recipe structure is complex, various data values are exploded out to increase efficiency in parsing, and this page is paginated to prevent too large of return values
|
|
913
1082
|
|
|
@@ -924,6 +1093,7 @@ class ClientMethods(ABC):
|
|
|
924
1093
|
method=get_projects_data_t.ENDPOINT_METHOD,
|
|
925
1094
|
endpoint=get_projects_data_t.ENDPOINT_PATH,
|
|
926
1095
|
args=args,
|
|
1096
|
+
request_options=_request_options,
|
|
927
1097
|
)
|
|
928
1098
|
return self.do_request(api_request=api_request, return_type=get_projects_data_t.Data)
|
|
929
1099
|
|
|
@@ -932,6 +1102,7 @@ class ClientMethods(ABC):
|
|
|
932
1102
|
*,
|
|
933
1103
|
recipe_ids: list[base_t.ObjectId],
|
|
934
1104
|
calculation_ids: list[base_t.ObjectId] | None = None,
|
|
1105
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
935
1106
|
) -> get_recipe_calculations_t.Data:
|
|
936
1107
|
"""Gets the calculations for the passed recipes
|
|
937
1108
|
|
|
@@ -946,6 +1117,7 @@ class ClientMethods(ABC):
|
|
|
946
1117
|
method=get_recipe_calculations_t.ENDPOINT_METHOD,
|
|
947
1118
|
endpoint=get_recipe_calculations_t.ENDPOINT_PATH,
|
|
948
1119
|
args=args,
|
|
1120
|
+
request_options=_request_options,
|
|
949
1121
|
)
|
|
950
1122
|
return self.do_request(api_request=api_request, return_type=get_recipe_calculations_t.Data)
|
|
951
1123
|
|
|
@@ -955,6 +1127,7 @@ class ClientMethods(ABC):
|
|
|
955
1127
|
recipe_ids: list[base_t.ObjectId],
|
|
956
1128
|
depth: int = 1,
|
|
957
1129
|
link_types: list[recipe_links_t.RecipeLinkType] | None,
|
|
1130
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
958
1131
|
) -> get_recipe_links_t.Data:
|
|
959
1132
|
"""Gets the links for the passed recipes
|
|
960
1133
|
|
|
@@ -971,6 +1144,7 @@ class ClientMethods(ABC):
|
|
|
971
1144
|
method=get_recipe_links_t.ENDPOINT_METHOD,
|
|
972
1145
|
endpoint=get_recipe_links_t.ENDPOINT_PATH,
|
|
973
1146
|
args=args,
|
|
1147
|
+
request_options=_request_options,
|
|
974
1148
|
)
|
|
975
1149
|
return self.do_request(api_request=api_request, return_type=get_recipe_links_t.Data)
|
|
976
1150
|
|
|
@@ -981,6 +1155,7 @@ class ClientMethods(ABC):
|
|
|
981
1155
|
recipe_metadata_ids: list[base_t.ObjectId] | None,
|
|
982
1156
|
offset: int | None = None,
|
|
983
1157
|
limit: int | None = None,
|
|
1158
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
984
1159
|
) -> get_recipe_metadata_data_t.Data:
|
|
985
1160
|
"""Gets the recipe metadata. Recipe metadata is data associated with experiments that is not an input, output or calculation, such as a sample ID.
|
|
986
1161
|
|
|
@@ -999,6 +1174,7 @@ class ClientMethods(ABC):
|
|
|
999
1174
|
method=get_recipe_metadata_data_t.ENDPOINT_METHOD,
|
|
1000
1175
|
endpoint=get_recipe_metadata_data_t.ENDPOINT_PATH,
|
|
1001
1176
|
args=args,
|
|
1177
|
+
request_options=_request_options,
|
|
1002
1178
|
)
|
|
1003
1179
|
return self.do_request(api_request=api_request, return_type=get_recipe_metadata_data_t.Data)
|
|
1004
1180
|
|
|
@@ -1006,6 +1182,7 @@ class ClientMethods(ABC):
|
|
|
1006
1182
|
self,
|
|
1007
1183
|
*,
|
|
1008
1184
|
project_id: base_t.ObjectId,
|
|
1185
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1009
1186
|
) -> get_recipe_names_t.Data:
|
|
1010
1187
|
"""Gets the name of all recipes (or experiments, used as synonyms by Uncountable) for a project. The call external_get_projects can be used to find projects
|
|
1011
1188
|
|
|
@@ -1018,6 +1195,7 @@ class ClientMethods(ABC):
|
|
|
1018
1195
|
method=get_recipe_names_t.ENDPOINT_METHOD,
|
|
1019
1196
|
endpoint=get_recipe_names_t.ENDPOINT_PATH,
|
|
1020
1197
|
args=args,
|
|
1198
|
+
request_options=_request_options,
|
|
1021
1199
|
)
|
|
1022
1200
|
return self.do_request(api_request=api_request, return_type=get_recipe_names_t.Data)
|
|
1023
1201
|
|
|
@@ -1025,6 +1203,7 @@ class ClientMethods(ABC):
|
|
|
1025
1203
|
self,
|
|
1026
1204
|
*,
|
|
1027
1205
|
recipe_output_ids: list[base_t.ObjectId],
|
|
1206
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1028
1207
|
) -> get_recipe_output_metadata_t.Data:
|
|
1029
1208
|
"""Gets the metadata values for the passed recipe outputs
|
|
1030
1209
|
|
|
@@ -1037,6 +1216,7 @@ class ClientMethods(ABC):
|
|
|
1037
1216
|
method=get_recipe_output_metadata_t.ENDPOINT_METHOD,
|
|
1038
1217
|
endpoint=get_recipe_output_metadata_t.ENDPOINT_PATH,
|
|
1039
1218
|
args=args,
|
|
1219
|
+
request_options=_request_options,
|
|
1040
1220
|
)
|
|
1041
1221
|
return self.do_request(api_request=api_request, return_type=get_recipe_output_metadata_t.Data)
|
|
1042
1222
|
|
|
@@ -1047,6 +1227,8 @@ class ClientMethods(ABC):
|
|
|
1047
1227
|
project_id: base_t.ObjectId | None = None,
|
|
1048
1228
|
offset: int | None = None,
|
|
1049
1229
|
limit: int | None = None,
|
|
1230
|
+
empty_output_behavior: get_recipes_data_t.RecipeOutputInclusion | None = None,
|
|
1231
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1050
1232
|
) -> get_recipes_data_t.Data:
|
|
1051
1233
|
"""Gets all data associated with a set of recipes. Because Uncountables recipe structure is complex, various data values are exploded out to increase efficiency in parsing, and this page is paginated to prevent too large of return values
|
|
1052
1234
|
|
|
@@ -1054,17 +1236,20 @@ class ClientMethods(ABC):
|
|
|
1054
1236
|
:param project_id: The projects to get the data from. Either these or recipe_ids must be filled in
|
|
1055
1237
|
:param offset: Used for pagination. All pagination is done in order of Recipe ID. [Pagination More Info](#pagination)
|
|
1056
1238
|
:param limit: The number of data points to return. If not filled in, it will be set to 100, and cannot be set higher than 100. [Pagination More Info](#pagination)
|
|
1239
|
+
:param empty_output_behavior: Recipe output inclusion behavior for empty outputs. Empty recipe outputs are outputs added to the experiment that do not have a value associated with them.
|
|
1057
1240
|
"""
|
|
1058
1241
|
args = get_recipes_data_t.Arguments(
|
|
1059
1242
|
recipe_ids=recipe_ids,
|
|
1060
1243
|
project_id=project_id,
|
|
1061
1244
|
offset=offset,
|
|
1062
1245
|
limit=limit,
|
|
1246
|
+
empty_output_behavior=empty_output_behavior,
|
|
1063
1247
|
)
|
|
1064
1248
|
api_request = APIRequest(
|
|
1065
1249
|
method=get_recipes_data_t.ENDPOINT_METHOD,
|
|
1066
1250
|
endpoint=get_recipes_data_t.ENDPOINT_PATH,
|
|
1067
1251
|
args=args,
|
|
1252
|
+
request_options=_request_options,
|
|
1068
1253
|
)
|
|
1069
1254
|
return self.do_request(api_request=api_request, return_type=get_recipes_data_t.Data)
|
|
1070
1255
|
|
|
@@ -1077,6 +1262,7 @@ class ClientMethods(ABC):
|
|
|
1077
1262
|
user_keys: list[identifier_t.IdentifierKey] | None = None,
|
|
1078
1263
|
user_group_keys: list[identifier_t.IdentifierKey] | None = None,
|
|
1079
1264
|
all_users: bool | None = None,
|
|
1265
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1080
1266
|
) -> grant_entity_permissions_t.Data:
|
|
1081
1267
|
"""Grant entity permissions to a list of users or user groups or to all users.
|
|
1082
1268
|
|
|
@@ -1093,6 +1279,7 @@ class ClientMethods(ABC):
|
|
|
1093
1279
|
method=grant_entity_permissions_t.ENDPOINT_METHOD,
|
|
1094
1280
|
endpoint=grant_entity_permissions_t.ENDPOINT_PATH,
|
|
1095
1281
|
args=args,
|
|
1282
|
+
request_options=_request_options,
|
|
1096
1283
|
)
|
|
1097
1284
|
return self.do_request(api_request=api_request, return_type=grant_entity_permissions_t.Data)
|
|
1098
1285
|
|
|
@@ -1103,6 +1290,7 @@ class ClientMethods(ABC):
|
|
|
1103
1290
|
destination: generic_upload_t.UploadDestination,
|
|
1104
1291
|
file_id: base_t.ObjectId | None = None,
|
|
1105
1292
|
file_ids: list[base_t.ObjectId] | None = None,
|
|
1293
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1106
1294
|
) -> invoke_uploader_t.Data:
|
|
1107
1295
|
"""Runs a file through an uploader.
|
|
1108
1296
|
|
|
@@ -1118,9 +1306,40 @@ class ClientMethods(ABC):
|
|
|
1118
1306
|
method=invoke_uploader_t.ENDPOINT_METHOD,
|
|
1119
1307
|
endpoint=invoke_uploader_t.ENDPOINT_PATH,
|
|
1120
1308
|
args=args,
|
|
1309
|
+
request_options=_request_options,
|
|
1121
1310
|
)
|
|
1122
1311
|
return self.do_request(api_request=api_request, return_type=invoke_uploader_t.Data)
|
|
1123
1312
|
|
|
1313
|
+
def list_aggregate(
|
|
1314
|
+
self,
|
|
1315
|
+
*,
|
|
1316
|
+
config_reference: str,
|
|
1317
|
+
attribute_values: list[list_aggregate_t.AttributeValue] | None = None,
|
|
1318
|
+
offset: int | None = None,
|
|
1319
|
+
limit: int | None = None,
|
|
1320
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1321
|
+
) -> list_aggregate_t.Data:
|
|
1322
|
+
"""Uses a structured loading configuration to list aggregated data from the platform
|
|
1323
|
+
|
|
1324
|
+
:param config_reference: The configuration reference name for the listing config
|
|
1325
|
+
:param attribute_values: Attributes to pass to the configuration for parameterizing filters
|
|
1326
|
+
:param offset: Used for pagination. Pagination is done based on the sorting of the config. [Pagination More Info](#pagination)
|
|
1327
|
+
:param limit: The number of data points to return. If not filled in, it will be set to 100, and cannot be set higher than 100. [Pagination More Info](#pagination)
|
|
1328
|
+
"""
|
|
1329
|
+
args = list_aggregate_t.Arguments(
|
|
1330
|
+
config_reference=config_reference,
|
|
1331
|
+
attribute_values=attribute_values,
|
|
1332
|
+
offset=offset,
|
|
1333
|
+
limit=limit,
|
|
1334
|
+
)
|
|
1335
|
+
api_request = APIRequest(
|
|
1336
|
+
method=list_aggregate_t.ENDPOINT_METHOD,
|
|
1337
|
+
endpoint=list_aggregate_t.ENDPOINT_PATH,
|
|
1338
|
+
args=args,
|
|
1339
|
+
request_options=_request_options,
|
|
1340
|
+
)
|
|
1341
|
+
return self.do_request(api_request=api_request, return_type=list_aggregate_t.Data)
|
|
1342
|
+
|
|
1124
1343
|
def list_entities(
|
|
1125
1344
|
self,
|
|
1126
1345
|
*,
|
|
@@ -1129,6 +1348,8 @@ class ClientMethods(ABC):
|
|
|
1129
1348
|
attributes: dict[OpaqueKey, base_t.JsonValue] | None = None,
|
|
1130
1349
|
offset: int | None = None,
|
|
1131
1350
|
limit: int | None = None,
|
|
1351
|
+
additional_filter_configs: list[list_entities_t.AdditionalFilterConfig] | None = None,
|
|
1352
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1132
1353
|
) -> list_entities_t.Data:
|
|
1133
1354
|
"""Uses a structured loading configuration to list entities in the system
|
|
1134
1355
|
|
|
@@ -1137,6 +1358,7 @@ class ClientMethods(ABC):
|
|
|
1137
1358
|
:param attributes: Attributes to pass to the configuration for parameterizing filters
|
|
1138
1359
|
:param offset: Used for pagination. Pagination is done based on the sorting of the config. [Pagination More Info](#pagination)
|
|
1139
1360
|
:param limit: The number of data points to return. If not filled in, it will be set to 100, and cannot be set higher than 100. [Pagination More Info](#pagination)
|
|
1361
|
+
:param additional_filter_configs: Advanced property: Additional filter configurations to apply to the listing. A maximum of 10 additional filter configs are supported.
|
|
1140
1362
|
"""
|
|
1141
1363
|
args = list_entities_t.Arguments(
|
|
1142
1364
|
entity_type=entity_type,
|
|
@@ -1144,11 +1366,13 @@ class ClientMethods(ABC):
|
|
|
1144
1366
|
attributes=attributes,
|
|
1145
1367
|
offset=offset,
|
|
1146
1368
|
limit=limit,
|
|
1369
|
+
additional_filter_configs=additional_filter_configs,
|
|
1147
1370
|
)
|
|
1148
1371
|
api_request = APIRequest(
|
|
1149
1372
|
method=list_entities_t.ENDPOINT_METHOD,
|
|
1150
1373
|
endpoint=list_entities_t.ENDPOINT_PATH,
|
|
1151
1374
|
args=args,
|
|
1375
|
+
request_options=_request_options,
|
|
1152
1376
|
)
|
|
1153
1377
|
return self.do_request(api_request=api_request, return_type=list_entities_t.Data)
|
|
1154
1378
|
|
|
@@ -1159,6 +1383,7 @@ class ClientMethods(ABC):
|
|
|
1159
1383
|
search_label: str,
|
|
1160
1384
|
offset: int | None = None,
|
|
1161
1385
|
limit: int | None = None,
|
|
1386
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1162
1387
|
) -> list_id_source_t.Data:
|
|
1163
1388
|
"""Lists id and label pairs
|
|
1164
1389
|
|
|
@@ -1177,6 +1402,7 @@ class ClientMethods(ABC):
|
|
|
1177
1402
|
method=list_id_source_t.ENDPOINT_METHOD,
|
|
1178
1403
|
endpoint=list_id_source_t.ENDPOINT_PATH,
|
|
1179
1404
|
args=args,
|
|
1405
|
+
request_options=_request_options,
|
|
1180
1406
|
)
|
|
1181
1407
|
return self.do_request(api_request=api_request, return_type=list_id_source_t.Data)
|
|
1182
1408
|
|
|
@@ -1186,6 +1412,7 @@ class ClientMethods(ABC):
|
|
|
1186
1412
|
entity_key: identifier_t.IdentifierKey,
|
|
1187
1413
|
entity_type: entity_t.EntityType,
|
|
1188
1414
|
globally_removable: bool | None = None,
|
|
1415
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1189
1416
|
) -> lock_entity_t.Data:
|
|
1190
1417
|
"""Lock an entity
|
|
1191
1418
|
|
|
@@ -1201,6 +1428,7 @@ class ClientMethods(ABC):
|
|
|
1201
1428
|
method=lock_entity_t.ENDPOINT_METHOD,
|
|
1202
1429
|
endpoint=lock_entity_t.ENDPOINT_PATH,
|
|
1203
1430
|
args=args,
|
|
1431
|
+
request_options=_request_options,
|
|
1204
1432
|
)
|
|
1205
1433
|
return self.do_request(api_request=api_request, return_type=lock_entity_t.Data)
|
|
1206
1434
|
|
|
@@ -1212,6 +1440,7 @@ class ClientMethods(ABC):
|
|
|
1212
1440
|
globally_removable: bool,
|
|
1213
1441
|
lock_samples: bool | None = None,
|
|
1214
1442
|
comments: str | None = None,
|
|
1443
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1215
1444
|
) -> lock_recipes_t.Data:
|
|
1216
1445
|
"""Lock experiments. Experiments will require unlocking to be editable. Edits to the experiments are blocked while they are locked.
|
|
1217
1446
|
|
|
@@ -1235,6 +1464,7 @@ class ClientMethods(ABC):
|
|
|
1235
1464
|
method=lock_recipes_t.ENDPOINT_METHOD,
|
|
1236
1465
|
endpoint=lock_recipes_t.ENDPOINT_PATH,
|
|
1237
1466
|
args=args,
|
|
1467
|
+
request_options=_request_options,
|
|
1238
1468
|
)
|
|
1239
1469
|
return self.do_request(api_request=api_request, return_type=lock_recipes_t.Data)
|
|
1240
1470
|
|
|
@@ -1243,6 +1473,7 @@ class ClientMethods(ABC):
|
|
|
1243
1473
|
*,
|
|
1244
1474
|
entity_type: entity_t.EntityType,
|
|
1245
1475
|
query: lookup_entity_t.LookupEntityQuery,
|
|
1476
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1246
1477
|
) -> lookup_entity_t.Data:
|
|
1247
1478
|
"""Look up an entity based on an identifier or field values
|
|
1248
1479
|
|
|
@@ -1255,6 +1486,7 @@ class ClientMethods(ABC):
|
|
|
1255
1486
|
method=lookup_entity_t.ENDPOINT_METHOD,
|
|
1256
1487
|
endpoint=lookup_entity_t.ENDPOINT_PATH,
|
|
1257
1488
|
args=args,
|
|
1489
|
+
request_options=_request_options,
|
|
1258
1490
|
)
|
|
1259
1491
|
return self.do_request(api_request=api_request, return_type=lookup_entity_t.Data)
|
|
1260
1492
|
|
|
@@ -1263,6 +1495,7 @@ class ClientMethods(ABC):
|
|
|
1263
1495
|
*,
|
|
1264
1496
|
spec: id_source_t.IdSourceSpec,
|
|
1265
1497
|
names: list[str],
|
|
1498
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1266
1499
|
) -> match_id_source_t.Data:
|
|
1267
1500
|
"""Lists id and label pairs
|
|
1268
1501
|
|
|
@@ -1277,6 +1510,7 @@ class ClientMethods(ABC):
|
|
|
1277
1510
|
method=match_id_source_t.ENDPOINT_METHOD,
|
|
1278
1511
|
endpoint=match_id_source_t.ENDPOINT_PATH,
|
|
1279
1512
|
args=args,
|
|
1513
|
+
request_options=_request_options,
|
|
1280
1514
|
)
|
|
1281
1515
|
return self.do_request(api_request=api_request, return_type=match_id_source_t.Data)
|
|
1282
1516
|
|
|
@@ -1288,6 +1522,8 @@ class ClientMethods(ABC):
|
|
|
1288
1522
|
message: str,
|
|
1289
1523
|
display_notice: bool = False,
|
|
1290
1524
|
entity: entity_t.EntityIdentifier | None = None,
|
|
1525
|
+
notice_configuration: notices_t.NotificationNoticeConfiguration | None = None,
|
|
1526
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1291
1527
|
) -> push_notification_t.Data:
|
|
1292
1528
|
"""Push a notification to a user or user group
|
|
1293
1529
|
|
|
@@ -1298,19 +1534,42 @@ class ClientMethods(ABC):
|
|
|
1298
1534
|
message=message,
|
|
1299
1535
|
entity=entity,
|
|
1300
1536
|
display_notice=display_notice,
|
|
1537
|
+
notice_configuration=notice_configuration,
|
|
1301
1538
|
)
|
|
1302
1539
|
api_request = APIRequest(
|
|
1303
1540
|
method=push_notification_t.ENDPOINT_METHOD,
|
|
1304
1541
|
endpoint=push_notification_t.ENDPOINT_PATH,
|
|
1305
1542
|
args=args,
|
|
1543
|
+
request_options=_request_options,
|
|
1306
1544
|
)
|
|
1307
1545
|
return self.do_request(api_request=api_request, return_type=push_notification_t.Data)
|
|
1308
1546
|
|
|
1547
|
+
def register_sockets_token(
|
|
1548
|
+
self,
|
|
1549
|
+
*,
|
|
1550
|
+
socket_request: sockets_t.SocketTokenRequest,
|
|
1551
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1552
|
+
) -> register_sockets_token_t.Data:
|
|
1553
|
+
"""Request token for connecting to sockets server
|
|
1554
|
+
|
|
1555
|
+
"""
|
|
1556
|
+
args = register_sockets_token_t.Arguments(
|
|
1557
|
+
socket_request=socket_request,
|
|
1558
|
+
)
|
|
1559
|
+
api_request = APIRequest(
|
|
1560
|
+
method=register_sockets_token_t.ENDPOINT_METHOD,
|
|
1561
|
+
endpoint=register_sockets_token_t.ENDPOINT_PATH,
|
|
1562
|
+
args=args,
|
|
1563
|
+
request_options=_request_options,
|
|
1564
|
+
)
|
|
1565
|
+
return self.do_request(api_request=api_request, return_type=register_sockets_token_t.Data)
|
|
1566
|
+
|
|
1309
1567
|
def remove_recipe_from_project(
|
|
1310
1568
|
self,
|
|
1311
1569
|
*,
|
|
1312
1570
|
recipe_key: identifier_t.IdentifierKey,
|
|
1313
1571
|
project_key: identifier_t.IdentifierKey,
|
|
1572
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1314
1573
|
) -> remove_recipe_from_project_t.Data:
|
|
1315
1574
|
"""Removes a recipe from a project
|
|
1316
1575
|
|
|
@@ -1325,6 +1584,7 @@ class ClientMethods(ABC):
|
|
|
1325
1584
|
method=remove_recipe_from_project_t.ENDPOINT_METHOD,
|
|
1326
1585
|
endpoint=remove_recipe_from_project_t.ENDPOINT_PATH,
|
|
1327
1586
|
args=args,
|
|
1587
|
+
request_options=_request_options,
|
|
1328
1588
|
)
|
|
1329
1589
|
return self.do_request(api_request=api_request, return_type=remove_recipe_from_project_t.Data)
|
|
1330
1590
|
|
|
@@ -1334,6 +1594,7 @@ class ClientMethods(ABC):
|
|
|
1334
1594
|
recipe_from_key: identifier_t.IdentifierKey,
|
|
1335
1595
|
recipe_to_key: identifier_t.IdentifierKey,
|
|
1336
1596
|
link_type: typing.Literal[recipe_links_t.RecipeLinkType.CHILD] | typing.Literal[recipe_links_t.RecipeLinkType.CONTROL] | typing.Literal[recipe_links_t.RecipeLinkType.USER_LINK] | typing.Literal[recipe_links_t.RecipeLinkType.PREVIOUS_EXPERIMENT],
|
|
1597
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1337
1598
|
) -> remove_recipe_link_t.Data:
|
|
1338
1599
|
"""Remove a link between two recipes. Skip if the link doesn't already exist
|
|
1339
1600
|
|
|
@@ -1350,6 +1611,7 @@ class ClientMethods(ABC):
|
|
|
1350
1611
|
method=remove_recipe_link_t.ENDPOINT_METHOD,
|
|
1351
1612
|
endpoint=remove_recipe_link_t.ENDPOINT_PATH,
|
|
1352
1613
|
args=args,
|
|
1614
|
+
request_options=_request_options,
|
|
1353
1615
|
)
|
|
1354
1616
|
return self.do_request(api_request=api_request, return_type=remove_recipe_link_t.Data)
|
|
1355
1617
|
|
|
@@ -1358,6 +1620,7 @@ class ClientMethods(ABC):
|
|
|
1358
1620
|
*,
|
|
1359
1621
|
entity_ids: list[str | base_t.ObjectId],
|
|
1360
1622
|
entity_type: entity_t.EntityType,
|
|
1623
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1361
1624
|
) -> resolve_entity_ids_t.Data:
|
|
1362
1625
|
"""Gets the names for passed in ids
|
|
1363
1626
|
|
|
@@ -1372,6 +1635,7 @@ class ClientMethods(ABC):
|
|
|
1372
1635
|
method=resolve_entity_ids_t.ENDPOINT_METHOD,
|
|
1373
1636
|
endpoint=resolve_entity_ids_t.ENDPOINT_PATH,
|
|
1374
1637
|
args=args,
|
|
1638
|
+
request_options=_request_options,
|
|
1375
1639
|
)
|
|
1376
1640
|
return self.do_request(api_request=api_request, return_type=resolve_entity_ids_t.Data)
|
|
1377
1641
|
|
|
@@ -1379,6 +1643,7 @@ class ClientMethods(ABC):
|
|
|
1379
1643
|
self,
|
|
1380
1644
|
*,
|
|
1381
1645
|
requested_conditions: list[resolve_output_conditions_t.ConditionRequest],
|
|
1646
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1382
1647
|
) -> resolve_output_conditions_t.Data:
|
|
1383
1648
|
"""For the provided set of condition parameter id and values, returns the existing or newly created output condition id for that value and id pair.
|
|
1384
1649
|
|
|
@@ -1390,6 +1655,7 @@ class ClientMethods(ABC):
|
|
|
1390
1655
|
method=resolve_output_conditions_t.ENDPOINT_METHOD,
|
|
1391
1656
|
endpoint=resolve_output_conditions_t.ENDPOINT_PATH,
|
|
1392
1657
|
args=args,
|
|
1658
|
+
request_options=_request_options,
|
|
1393
1659
|
)
|
|
1394
1660
|
return self.do_request(api_request=api_request, return_type=resolve_output_conditions_t.Data)
|
|
1395
1661
|
|
|
@@ -1398,6 +1664,7 @@ class ClientMethods(ABC):
|
|
|
1398
1664
|
*,
|
|
1399
1665
|
trigger_ref_name: str,
|
|
1400
1666
|
entity: entity_t.Entity | None = None,
|
|
1667
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1401
1668
|
) -> run_trigger_t.Data:
|
|
1402
1669
|
"""Runs a trigger. Requires admin access
|
|
1403
1670
|
|
|
@@ -1410,9 +1677,32 @@ class ClientMethods(ABC):
|
|
|
1410
1677
|
method=run_trigger_t.ENDPOINT_METHOD,
|
|
1411
1678
|
endpoint=run_trigger_t.ENDPOINT_PATH,
|
|
1412
1679
|
args=args,
|
|
1680
|
+
request_options=_request_options,
|
|
1413
1681
|
)
|
|
1414
1682
|
return self.do_request(api_request=api_request, return_type=run_trigger_t.Data)
|
|
1415
1683
|
|
|
1684
|
+
def set_barcode(
|
|
1685
|
+
self,
|
|
1686
|
+
*,
|
|
1687
|
+
entity_key: entity_t.EntityIdentifier,
|
|
1688
|
+
barcode_value: str,
|
|
1689
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1690
|
+
) -> set_barcode_t.Data:
|
|
1691
|
+
"""Sets the barcode for an entity
|
|
1692
|
+
|
|
1693
|
+
"""
|
|
1694
|
+
args = set_barcode_t.Arguments(
|
|
1695
|
+
entity_key=entity_key,
|
|
1696
|
+
barcode_value=barcode_value,
|
|
1697
|
+
)
|
|
1698
|
+
api_request = APIRequest(
|
|
1699
|
+
method=set_barcode_t.ENDPOINT_METHOD,
|
|
1700
|
+
endpoint=set_barcode_t.ENDPOINT_PATH,
|
|
1701
|
+
args=args,
|
|
1702
|
+
request_options=_request_options,
|
|
1703
|
+
)
|
|
1704
|
+
return self.do_request(api_request=api_request, return_type=set_barcode_t.Data)
|
|
1705
|
+
|
|
1416
1706
|
def set_core_permissions(
|
|
1417
1707
|
self,
|
|
1418
1708
|
*,
|
|
@@ -1421,6 +1711,7 @@ class ClientMethods(ABC):
|
|
|
1421
1711
|
update_type: post_base_t.UpdateType,
|
|
1422
1712
|
user_group_ids: list[int] | None = None,
|
|
1423
1713
|
user_ids: list[int] | None = None,
|
|
1714
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1424
1715
|
) -> set_core_permissions_t.Data:
|
|
1425
1716
|
"""Sets recipe related permissions
|
|
1426
1717
|
|
|
@@ -1440,6 +1731,7 @@ class ClientMethods(ABC):
|
|
|
1440
1731
|
method=set_core_permissions_t.ENDPOINT_METHOD,
|
|
1441
1732
|
endpoint=set_core_permissions_t.ENDPOINT_PATH,
|
|
1442
1733
|
args=args,
|
|
1734
|
+
request_options=_request_options,
|
|
1443
1735
|
)
|
|
1444
1736
|
return self.do_request(api_request=api_request, return_type=set_core_permissions_t.Data)
|
|
1445
1737
|
|
|
@@ -1448,6 +1740,7 @@ class ClientMethods(ABC):
|
|
|
1448
1740
|
*,
|
|
1449
1741
|
entity_identifier: entity_t.EntityIdentifier,
|
|
1450
1742
|
field_values: list[field_values_t.FieldArgumentValue],
|
|
1743
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1451
1744
|
) -> set_entity_field_values_t.Data:
|
|
1452
1745
|
"""Sets field values for an entity
|
|
1453
1746
|
|
|
@@ -1462,6 +1755,7 @@ class ClientMethods(ABC):
|
|
|
1462
1755
|
method=set_entity_field_values_t.ENDPOINT_METHOD,
|
|
1463
1756
|
endpoint=set_entity_field_values_t.ENDPOINT_PATH,
|
|
1464
1757
|
args=args,
|
|
1758
|
+
request_options=_request_options,
|
|
1465
1759
|
)
|
|
1466
1760
|
return self.do_request(api_request=api_request, return_type=set_entity_field_values_t.Data)
|
|
1467
1761
|
|
|
@@ -1469,6 +1763,7 @@ class ClientMethods(ABC):
|
|
|
1469
1763
|
self,
|
|
1470
1764
|
*,
|
|
1471
1765
|
attribute_values: list[set_input_attribute_values_t.InputAttributeValue],
|
|
1766
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1472
1767
|
) -> set_input_attribute_values_t.Data:
|
|
1473
1768
|
"""Sets attribute values for an input
|
|
1474
1769
|
|
|
@@ -1481,6 +1776,7 @@ class ClientMethods(ABC):
|
|
|
1481
1776
|
method=set_input_attribute_values_t.ENDPOINT_METHOD,
|
|
1482
1777
|
endpoint=set_input_attribute_values_t.ENDPOINT_PATH,
|
|
1483
1778
|
args=args,
|
|
1779
|
+
request_options=_request_options,
|
|
1484
1780
|
)
|
|
1485
1781
|
return self.do_request(api_request=api_request, return_type=set_input_attribute_values_t.Data)
|
|
1486
1782
|
|
|
@@ -1490,6 +1786,7 @@ class ClientMethods(ABC):
|
|
|
1490
1786
|
input_key: identifier_t.IdentifierKey,
|
|
1491
1787
|
category_id: int | None,
|
|
1492
1788
|
material_family_ids: list[int] | None = None,
|
|
1789
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1493
1790
|
) -> set_input_category_t.Data:
|
|
1494
1791
|
"""Sets subcategories for an input
|
|
1495
1792
|
|
|
@@ -1506,6 +1803,7 @@ class ClientMethods(ABC):
|
|
|
1506
1803
|
method=set_input_category_t.ENDPOINT_METHOD,
|
|
1507
1804
|
endpoint=set_input_category_t.ENDPOINT_PATH,
|
|
1508
1805
|
args=args,
|
|
1806
|
+
request_options=_request_options,
|
|
1509
1807
|
)
|
|
1510
1808
|
return self.do_request(api_request=api_request, return_type=set_input_category_t.Data)
|
|
1511
1809
|
|
|
@@ -1515,6 +1813,7 @@ class ClientMethods(ABC):
|
|
|
1515
1813
|
input_key: identifier_t.IdentifierKey,
|
|
1516
1814
|
subcategory_ids: list[int],
|
|
1517
1815
|
update_type: post_base_t.UpdateType,
|
|
1816
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1518
1817
|
) -> set_input_subcategories_t.Data:
|
|
1519
1818
|
"""Sets subcategories for an input
|
|
1520
1819
|
|
|
@@ -1531,6 +1830,7 @@ class ClientMethods(ABC):
|
|
|
1531
1830
|
method=set_input_subcategories_t.ENDPOINT_METHOD,
|
|
1532
1831
|
endpoint=set_input_subcategories_t.ENDPOINT_PATH,
|
|
1533
1832
|
args=args,
|
|
1833
|
+
request_options=_request_options,
|
|
1534
1834
|
)
|
|
1535
1835
|
return self.do_request(api_request=api_request, return_type=set_input_subcategories_t.Data)
|
|
1536
1836
|
|
|
@@ -1539,6 +1839,7 @@ class ClientMethods(ABC):
|
|
|
1539
1839
|
*,
|
|
1540
1840
|
input_key: identifier_t.IdentifierKey,
|
|
1541
1841
|
intermediate_type: set_intermediate_type_t.IntermediateType,
|
|
1842
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1542
1843
|
) -> set_intermediate_type_t.Data:
|
|
1543
1844
|
"""Sets the type of an intermediate ingredient.
|
|
1544
1845
|
|
|
@@ -1553,6 +1854,7 @@ class ClientMethods(ABC):
|
|
|
1553
1854
|
method=set_intermediate_type_t.ENDPOINT_METHOD,
|
|
1554
1855
|
endpoint=set_intermediate_type_t.ENDPOINT_PATH,
|
|
1555
1856
|
args=args,
|
|
1857
|
+
request_options=_request_options,
|
|
1556
1858
|
)
|
|
1557
1859
|
return self.do_request(api_request=api_request, return_type=set_intermediate_type_t.Data)
|
|
1558
1860
|
|
|
@@ -1560,6 +1862,7 @@ class ClientMethods(ABC):
|
|
|
1560
1862
|
self,
|
|
1561
1863
|
*,
|
|
1562
1864
|
input_data: list[set_recipe_inputs_t.RecipeInputValue],
|
|
1865
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1563
1866
|
) -> set_recipe_inputs_t.Data:
|
|
1564
1867
|
"""Sets inputs values for an experiment. Values set can be numeric, text or categorical types in the Uncountable system
|
|
1565
1868
|
|
|
@@ -1572,6 +1875,7 @@ class ClientMethods(ABC):
|
|
|
1572
1875
|
method=set_recipe_inputs_t.ENDPOINT_METHOD,
|
|
1573
1876
|
endpoint=set_recipe_inputs_t.ENDPOINT_PATH,
|
|
1574
1877
|
args=args,
|
|
1878
|
+
request_options=_request_options,
|
|
1575
1879
|
)
|
|
1576
1880
|
return self.do_request(api_request=api_request, return_type=set_recipe_inputs_t.Data)
|
|
1577
1881
|
|
|
@@ -1580,6 +1884,7 @@ class ClientMethods(ABC):
|
|
|
1580
1884
|
*,
|
|
1581
1885
|
recipe_key: identifier_t.IdentifierKey,
|
|
1582
1886
|
recipe_metadata: list[recipe_metadata_t.MetadataValue],
|
|
1887
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1583
1888
|
) -> set_recipe_metadata_t.Data:
|
|
1584
1889
|
"""Set metadata values on a recipe
|
|
1585
1890
|
|
|
@@ -1594,6 +1899,7 @@ class ClientMethods(ABC):
|
|
|
1594
1899
|
method=set_recipe_metadata_t.ENDPOINT_METHOD,
|
|
1595
1900
|
endpoint=set_recipe_metadata_t.ENDPOINT_PATH,
|
|
1596
1901
|
args=args,
|
|
1902
|
+
request_options=_request_options,
|
|
1597
1903
|
)
|
|
1598
1904
|
return self.do_request(api_request=api_request, return_type=set_recipe_metadata_t.Data)
|
|
1599
1905
|
|
|
@@ -1601,6 +1907,7 @@ class ClientMethods(ABC):
|
|
|
1601
1907
|
self,
|
|
1602
1908
|
*,
|
|
1603
1909
|
updates: list[set_recipe_output_annotations_t.RecipeOutputUpdateAnnotations],
|
|
1910
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1604
1911
|
) -> set_recipe_output_annotations_t.Data:
|
|
1605
1912
|
"""Update annotations for an experiments outputs
|
|
1606
1913
|
|
|
@@ -1613,6 +1920,7 @@ class ClientMethods(ABC):
|
|
|
1613
1920
|
method=set_recipe_output_annotations_t.ENDPOINT_METHOD,
|
|
1614
1921
|
endpoint=set_recipe_output_annotations_t.ENDPOINT_PATH,
|
|
1615
1922
|
args=args,
|
|
1923
|
+
request_options=_request_options,
|
|
1616
1924
|
)
|
|
1617
1925
|
return self.do_request(api_request=api_request, return_type=set_recipe_output_annotations_t.Data)
|
|
1618
1926
|
|
|
@@ -1620,6 +1928,7 @@ class ClientMethods(ABC):
|
|
|
1620
1928
|
self,
|
|
1621
1929
|
*,
|
|
1622
1930
|
output_file_data: set_recipe_output_file_t.RecipeOutputFileValue,
|
|
1931
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1623
1932
|
) -> set_recipe_output_file_t.Data:
|
|
1624
1933
|
"""Sets output file value for an experiment. Include a single file as part of the FormData of the request with the filename as the key
|
|
1625
1934
|
|
|
@@ -1632,6 +1941,7 @@ class ClientMethods(ABC):
|
|
|
1632
1941
|
method=set_recipe_output_file_t.ENDPOINT_METHOD,
|
|
1633
1942
|
endpoint=set_recipe_output_file_t.ENDPOINT_PATH,
|
|
1634
1943
|
args=args,
|
|
1944
|
+
request_options=_request_options,
|
|
1635
1945
|
)
|
|
1636
1946
|
return self.do_request(api_request=api_request, return_type=set_recipe_output_file_t.Data)
|
|
1637
1947
|
|
|
@@ -1639,6 +1949,7 @@ class ClientMethods(ABC):
|
|
|
1639
1949
|
self,
|
|
1640
1950
|
*,
|
|
1641
1951
|
output_data: list[set_recipe_outputs_t.RecipeOutputValue],
|
|
1952
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1642
1953
|
) -> set_recipe_outputs_t.Data:
|
|
1643
1954
|
"""Sets output values for an experiment. Values set can be numeric, text or categorical types in the Uncountable system
|
|
1644
1955
|
|
|
@@ -1651,6 +1962,7 @@ class ClientMethods(ABC):
|
|
|
1651
1962
|
method=set_recipe_outputs_t.ENDPOINT_METHOD,
|
|
1652
1963
|
endpoint=set_recipe_outputs_t.ENDPOINT_PATH,
|
|
1653
1964
|
args=args,
|
|
1965
|
+
request_options=_request_options,
|
|
1654
1966
|
)
|
|
1655
1967
|
return self.do_request(api_request=api_request, return_type=set_recipe_outputs_t.Data)
|
|
1656
1968
|
|
|
@@ -1659,6 +1971,7 @@ class ClientMethods(ABC):
|
|
|
1659
1971
|
*,
|
|
1660
1972
|
recipe_key: identifier_t.IdentifierKey,
|
|
1661
1973
|
recipe_tag_update: set_recipe_tags_t.RecipeTagUpdate,
|
|
1974
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1662
1975
|
) -> set_recipe_tags_t.Data:
|
|
1663
1976
|
"""Modifies recipes tags for a recipe
|
|
1664
1977
|
|
|
@@ -1673,14 +1986,46 @@ class ClientMethods(ABC):
|
|
|
1673
1986
|
method=set_recipe_tags_t.ENDPOINT_METHOD,
|
|
1674
1987
|
endpoint=set_recipe_tags_t.ENDPOINT_PATH,
|
|
1675
1988
|
args=args,
|
|
1989
|
+
request_options=_request_options,
|
|
1676
1990
|
)
|
|
1677
1991
|
return self.do_request(api_request=api_request, return_type=set_recipe_tags_t.Data)
|
|
1678
1992
|
|
|
1993
|
+
def set_recipe_total(
|
|
1994
|
+
self,
|
|
1995
|
+
*,
|
|
1996
|
+
recipe_key: identifier_t.IdentifierKey,
|
|
1997
|
+
value: set_recipe_total_t.ValueNumeric,
|
|
1998
|
+
recipe_workflow_step_identifier: recipe_workflow_steps_t.RecipeWorkflowStepIdentifier | None = None,
|
|
1999
|
+
calculation_key: identifier_t.IdentifierKey | None = None,
|
|
2000
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
2001
|
+
) -> set_recipe_total_t.Data:
|
|
2002
|
+
"""Updates the Set Total value for a recipe or one of its workflow steps
|
|
2003
|
+
|
|
2004
|
+
:param recipe_key: Identifier for the recipe
|
|
2005
|
+
:param recipe_workflow_step_identifier: Identifier for the recipe workflow step
|
|
2006
|
+
:param value: The quantity in mass, volume, or moles to set for the total
|
|
2007
|
+
:param calculation_key: The linked basis calculation to set
|
|
2008
|
+
"""
|
|
2009
|
+
args = set_recipe_total_t.Arguments(
|
|
2010
|
+
recipe_key=recipe_key,
|
|
2011
|
+
recipe_workflow_step_identifier=recipe_workflow_step_identifier,
|
|
2012
|
+
value=value,
|
|
2013
|
+
calculation_key=calculation_key,
|
|
2014
|
+
)
|
|
2015
|
+
api_request = APIRequest(
|
|
2016
|
+
method=set_recipe_total_t.ENDPOINT_METHOD,
|
|
2017
|
+
endpoint=set_recipe_total_t.ENDPOINT_PATH,
|
|
2018
|
+
args=args,
|
|
2019
|
+
request_options=_request_options,
|
|
2020
|
+
)
|
|
2021
|
+
return self.do_request(api_request=api_request, return_type=set_recipe_total_t.Data)
|
|
2022
|
+
|
|
1679
2023
|
def set_values(
|
|
1680
2024
|
self,
|
|
1681
2025
|
*,
|
|
1682
2026
|
entity: entity_t.Entity,
|
|
1683
2027
|
values: list[field_values_t.ArgumentValueRefName],
|
|
2028
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1684
2029
|
) -> set_values_t.Data:
|
|
1685
2030
|
"""Sets field values for an entity
|
|
1686
2031
|
|
|
@@ -1693,26 +2038,34 @@ class ClientMethods(ABC):
|
|
|
1693
2038
|
method=set_values_t.ENDPOINT_METHOD,
|
|
1694
2039
|
endpoint=set_values_t.ENDPOINT_PATH,
|
|
1695
2040
|
args=args,
|
|
2041
|
+
request_options=_request_options,
|
|
1696
2042
|
)
|
|
1697
2043
|
return self.do_request(api_request=api_request, return_type=set_values_t.Data)
|
|
1698
2044
|
|
|
1699
2045
|
def transition_entity_phase(
|
|
1700
2046
|
self,
|
|
1701
2047
|
*,
|
|
1702
|
-
entity: entity_t.Entity,
|
|
1703
2048
|
transition: transition_entity_phase_t.TransitionIdentifier,
|
|
2049
|
+
entity: entity_t.Entity | None = None,
|
|
2050
|
+
entity_identifier: entity_t.EntityIdentifier | None = None,
|
|
2051
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1704
2052
|
) -> transition_entity_phase_t.Data:
|
|
1705
2053
|
"""Transitions an entity from one phase to another
|
|
1706
2054
|
|
|
2055
|
+
:param entity: Entity to transition. If entity_identifier is provided, this should be omitted.
|
|
2056
|
+
:param entity_identifier: Identifier of the entity to transition. If entity is provided, this should be omitted.
|
|
2057
|
+
:param transition: Identifier of the transition to perform
|
|
1707
2058
|
"""
|
|
1708
2059
|
args = transition_entity_phase_t.Arguments(
|
|
1709
2060
|
entity=entity,
|
|
2061
|
+
entity_identifier=entity_identifier,
|
|
1710
2062
|
transition=transition,
|
|
1711
2063
|
)
|
|
1712
2064
|
api_request = APIRequest(
|
|
1713
2065
|
method=transition_entity_phase_t.ENDPOINT_METHOD,
|
|
1714
2066
|
endpoint=transition_entity_phase_t.ENDPOINT_PATH,
|
|
1715
2067
|
args=args,
|
|
2068
|
+
request_options=_request_options,
|
|
1716
2069
|
)
|
|
1717
2070
|
return self.do_request(api_request=api_request, return_type=transition_entity_phase_t.Data)
|
|
1718
2071
|
|
|
@@ -1720,6 +2073,7 @@ class ClientMethods(ABC):
|
|
|
1720
2073
|
self,
|
|
1721
2074
|
*,
|
|
1722
2075
|
recipes: list[identifier_t.IdentifierKey],
|
|
2076
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1723
2077
|
) -> unarchive_recipes_t.Data:
|
|
1724
2078
|
"""Unarchive/restore the provided recipes
|
|
1725
2079
|
|
|
@@ -1732,6 +2086,7 @@ class ClientMethods(ABC):
|
|
|
1732
2086
|
method=unarchive_recipes_t.ENDPOINT_METHOD,
|
|
1733
2087
|
endpoint=unarchive_recipes_t.ENDPOINT_PATH,
|
|
1734
2088
|
args=args,
|
|
2089
|
+
request_options=_request_options,
|
|
1735
2090
|
)
|
|
1736
2091
|
return self.do_request(api_request=api_request, return_type=unarchive_recipes_t.Data)
|
|
1737
2092
|
|
|
@@ -1740,6 +2095,7 @@ class ClientMethods(ABC):
|
|
|
1740
2095
|
*,
|
|
1741
2096
|
entity_key: identifier_t.IdentifierKey,
|
|
1742
2097
|
entity_type: entity_t.EntityType,
|
|
2098
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1743
2099
|
) -> unlock_entity_t.Data:
|
|
1744
2100
|
"""Unlock an entity
|
|
1745
2101
|
|
|
@@ -1753,6 +2109,7 @@ class ClientMethods(ABC):
|
|
|
1753
2109
|
method=unlock_entity_t.ENDPOINT_METHOD,
|
|
1754
2110
|
endpoint=unlock_entity_t.ENDPOINT_PATH,
|
|
1755
2111
|
args=args,
|
|
2112
|
+
request_options=_request_options,
|
|
1756
2113
|
)
|
|
1757
2114
|
return self.do_request(api_request=api_request, return_type=unlock_entity_t.Data)
|
|
1758
2115
|
|
|
@@ -1762,6 +2119,7 @@ class ClientMethods(ABC):
|
|
|
1762
2119
|
type: unlock_recipes_t.RecipeUnlockType = unlock_recipes_t.RecipeUnlockType.STANDARD,
|
|
1763
2120
|
recipes: list[identifier_t.IdentifierKey],
|
|
1764
2121
|
unlock_samples: bool | None = None,
|
|
2122
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1765
2123
|
) -> unlock_recipes_t.Data:
|
|
1766
2124
|
"""Unlock experiments. Experiments will edtiable after unlocking if they are currently locked.
|
|
1767
2125
|
|
|
@@ -1778,6 +2136,7 @@ class ClientMethods(ABC):
|
|
|
1778
2136
|
method=unlock_recipes_t.ENDPOINT_METHOD,
|
|
1779
2137
|
endpoint=unlock_recipes_t.ENDPOINT_PATH,
|
|
1780
2138
|
args=args,
|
|
2139
|
+
request_options=_request_options,
|
|
1781
2140
|
)
|
|
1782
2141
|
return self.do_request(api_request=api_request, return_type=unlock_recipes_t.Data)
|
|
1783
2142
|
|
|
@@ -1788,6 +2147,7 @@ class ClientMethods(ABC):
|
|
|
1788
2147
|
entity_type: typing.Literal[entity_t.EntityType.RECIPE_METADATA] | typing.Literal[entity_t.EntityType.INGREDIENT] | typing.Literal[entity_t.EntityType.OUTPUT] | typing.Literal[entity_t.EntityType.CONDITION_PARAMETER] | typing.Literal[entity_t.EntityType.INGREDIENT_ATTRIBUTE] | typing.Literal[entity_t.EntityType.INGREDIENT_CATEGORY_ALL],
|
|
1789
2148
|
material_family_ids: list[base_t.ObjectId],
|
|
1790
2149
|
update_type: post_base_t.UpdateType,
|
|
2150
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1791
2151
|
) -> update_entity_material_families_t.Data:
|
|
1792
2152
|
"""Updates the material families that the entity is available in
|
|
1793
2153
|
|
|
@@ -1806,6 +2166,7 @@ class ClientMethods(ABC):
|
|
|
1806
2166
|
method=update_entity_material_families_t.ENDPOINT_METHOD,
|
|
1807
2167
|
endpoint=update_entity_material_families_t.ENDPOINT_PATH,
|
|
1808
2168
|
args=args,
|
|
2169
|
+
request_options=_request_options,
|
|
1809
2170
|
)
|
|
1810
2171
|
return self.do_request(api_request=api_request, return_type=update_entity_material_families_t.Data)
|
|
1811
2172
|
|
|
@@ -1817,6 +2178,7 @@ class ClientMethods(ABC):
|
|
|
1817
2178
|
condition_parameters: list[upsert_condition_match_t.ConditionParameter] | None = None,
|
|
1818
2179
|
output_conditions: list[identifier_t.IdentifierKey] | None = None,
|
|
1819
2180
|
existing_condition_match: identifier_t.IdentifierKey | None = None,
|
|
2181
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1820
2182
|
) -> upsert_condition_match_t.Data:
|
|
1821
2183
|
"""Creates or updates condition match
|
|
1822
2184
|
|
|
@@ -1832,6 +2194,7 @@ class ClientMethods(ABC):
|
|
|
1832
2194
|
method=upsert_condition_match_t.ENDPOINT_METHOD,
|
|
1833
2195
|
endpoint=upsert_condition_match_t.ENDPOINT_PATH,
|
|
1834
2196
|
args=args,
|
|
2197
|
+
request_options=_request_options,
|
|
1835
2198
|
)
|
|
1836
2199
|
return self.do_request(api_request=api_request, return_type=upsert_condition_match_t.Data)
|
|
1837
2200
|
|
|
@@ -1840,6 +2203,7 @@ class ClientMethods(ABC):
|
|
|
1840
2203
|
*,
|
|
1841
2204
|
option_set_key: identifier_t.IdentifierKey,
|
|
1842
2205
|
field_options: list[upsert_field_options_t.FieldOption],
|
|
2206
|
+
_request_options: client_config_t.RequestOptions | None = None,
|
|
1843
2207
|
) -> upsert_field_options_t.Data:
|
|
1844
2208
|
"""Creates or updates field options for an option set
|
|
1845
2209
|
|
|
@@ -1854,5 +2218,6 @@ class ClientMethods(ABC):
|
|
|
1854
2218
|
method=upsert_field_options_t.ENDPOINT_METHOD,
|
|
1855
2219
|
endpoint=upsert_field_options_t.ENDPOINT_PATH,
|
|
1856
2220
|
args=args,
|
|
2221
|
+
request_options=_request_options,
|
|
1857
2222
|
)
|
|
1858
2223
|
return self.do_request(api_request=api_request, return_type=upsert_field_options_t.Data)
|