UncountablePythonSDK 0.0.136.dev0__py3-none-any.whl → 0.0.140.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.
@@ -107,6 +107,7 @@ from .api.outputs import resolve_output_conditions as resolve_output_conditions_
107
107
  from . import response_t as response_t
108
108
  from .api.triggers import run_trigger as run_trigger_t
109
109
  from . import secret_retrieval_t as secret_retrieval_t
110
+ from .api.entity import set_barcode as set_barcode_t
110
111
  from .api.permissions import set_core_permissions as set_core_permissions_t
111
112
  from .api.entity import set_entity_field_values as set_entity_field_values_t
112
113
  from .api.inputs import set_input_attribute_values as set_input_attribute_values_t
@@ -242,6 +243,7 @@ __all__: list[str] = [
242
243
  "response_t",
243
244
  "run_trigger_t",
244
245
  "secret_retrieval_t",
246
+ "set_barcode_t",
245
247
  "set_core_permissions_t",
246
248
  "set_entity_field_values_t",
247
249
  "set_input_attribute_values_t",
@@ -0,0 +1,43 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # ruff: noqa: E402 Q003
3
+ # fmt: off
4
+ # isort: skip_file
5
+ from __future__ import annotations
6
+ import typing # noqa: F401
7
+ import datetime # noqa: F401
8
+ from decimal import Decimal # noqa: F401
9
+ import dataclasses
10
+ from pkgs.serialization import serial_class
11
+ from ... import async_batch_t
12
+ from ... import base_t
13
+ from ... import entity_t
14
+
15
+ __all__: list[str] = [
16
+ "Arguments",
17
+ "Data",
18
+ "ENDPOINT_METHOD",
19
+ "ENDPOINT_PATH",
20
+ ]
21
+
22
+ ENDPOINT_METHOD = "POST"
23
+ ENDPOINT_PATH = "api/external/entity/set_barcode"
24
+
25
+
26
+ # DO NOT MODIFY -- This file is generated by type_spec
27
+ @serial_class(
28
+ named_type_path="sdk.api.entity.set_barcode.Arguments",
29
+ )
30
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
31
+ class Arguments:
32
+ entity_key: entity_t.EntityIdentifier
33
+ barcode_value: str
34
+
35
+
36
+ # DO NOT MODIFY -- This file is generated by type_spec
37
+ @serial_class(
38
+ named_type_path="sdk.api.entity.set_barcode.Data",
39
+ )
40
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
41
+ class Data(async_batch_t.AsyncBatchActionReturn):
42
+ pass
43
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -34,6 +34,7 @@ import uncountable.types.api.integrations.push_notification as push_notification
34
34
  from uncountable.types import recipe_identifiers_t
35
35
  from uncountable.types import recipe_metadata_t
36
36
  from uncountable.types import recipe_workflow_steps_t
37
+ import uncountable.types.api.entity.set_barcode as set_barcode_t
37
38
  import uncountable.types.api.entity.set_entity_field_values as set_entity_field_values_t
38
39
  import uncountable.types.api.recipes.set_recipe_metadata as set_recipe_metadata_t
39
40
  import uncountable.types.api.entity.transition_entity_phase as transition_entity_phase_t
@@ -639,6 +640,40 @@ class AsyncBatchProcessorBase(ABC):
639
640
  batch_reference=req.batch_reference,
640
641
  )
641
642
 
643
+ def set_barcode(
644
+ self,
645
+ *,
646
+ entity_key: entity_t.EntityIdentifier,
647
+ barcode_value: str,
648
+ depends_on: list[str] | None = None,
649
+ _request_options: client_config_t.RequestOptions | None = None,
650
+ ) -> async_batch_t.QueuedAsyncBatchRequest:
651
+ """Sets the barcode for an entity
652
+
653
+ :param depends_on: A list of batch reference keys to process before processing this request
654
+ """
655
+ args = set_barcode_t.Arguments(
656
+ entity_key=entity_key,
657
+ barcode_value=barcode_value,
658
+ )
659
+ json_data = serialize_for_api(args)
660
+
661
+ batch_reference = str(uuid.uuid4())
662
+
663
+ req = async_batch_t.AsyncBatchRequest(
664
+ path=async_batch_t.AsyncBatchRequestPath.SET_BARCODE,
665
+ data=json_data,
666
+ depends_on=depends_on,
667
+ batch_reference=batch_reference,
668
+ )
669
+
670
+ self._enqueue(req)
671
+
672
+ return async_batch_t.QueuedAsyncBatchRequest(
673
+ path=req.path,
674
+ batch_reference=req.batch_reference,
675
+ )
676
+
642
677
  def set_entity_field_values(
643
678
  self,
644
679
  *,
@@ -49,6 +49,7 @@ class AsyncBatchRequestPath(StrEnum):
49
49
  COMPLETE_ASYNC_PARSE = "uploader/complete_async_parse"
50
50
  SET_RECIPE_TOTAL = "recipes/set_recipe_total"
51
51
  TRANSITION_ENTITY_PHASE = "entity/transition_entity_phase"
52
+ SET_BARCODE = "entity/set_barcode"
52
53
 
53
54
 
54
55
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -86,6 +86,7 @@ import uncountable.types.api.recipe_links.remove_recipe_link as remove_recipe_li
86
86
  import uncountable.types.api.entity.resolve_entity_ids as resolve_entity_ids_t
87
87
  import uncountable.types.api.outputs.resolve_output_conditions as resolve_output_conditions_t
88
88
  import uncountable.types.api.triggers.run_trigger as run_trigger_t
89
+ import uncountable.types.api.entity.set_barcode as set_barcode_t
89
90
  import uncountable.types.api.permissions.set_core_permissions as set_core_permissions_t
90
91
  import uncountable.types.api.entity.set_entity_field_values as set_entity_field_values_t
91
92
  import uncountable.types.api.inputs.set_input_attribute_values as set_input_attribute_values_t
@@ -1680,6 +1681,28 @@ class ClientMethods(ABC):
1680
1681
  )
1681
1682
  return self.do_request(api_request=api_request, return_type=run_trigger_t.Data)
1682
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
+
1683
1706
  def set_core_permissions(
1684
1707
  self,
1685
1708
  *,
@@ -61,7 +61,7 @@ __all__: list[str] = [
61
61
 
62
62
  # DO NOT MODIFY -- This file is generated by type_spec
63
63
  class ColumnType(StrEnum):
64
- REF_NAME = "ref_name"
64
+ ENTITY_REF_NAME = "entity_ref_name"
65
65
  TRANSITIVE = "transitive"
66
66
  TRANSITIVE_AGGREGATE = "transitive_aggregate"
67
67
 
@@ -73,9 +73,9 @@ class ColumnType(StrEnum):
73
73
  )
74
74
  @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True, frozen=True, eq=True) # type: ignore[literal-required]
75
75
  class ColumnIdentifierEntityRefName:
76
- type: typing.Literal[ColumnType.REF_NAME] = ColumnType.REF_NAME
76
+ type: typing.Literal[ColumnType.ENTITY_REF_NAME] = ColumnType.ENTITY_REF_NAME
77
77
  entity_type: entity_t.EntityType
78
- entity_ref_name: str
78
+ ref_name: str
79
79
 
80
80
 
81
81
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -313,7 +313,7 @@ ColumnIdentifier = typing.Annotated[
313
313
  named_type_path="sdk.listing.ColumnIdentifier",
314
314
  discriminator="type",
315
315
  discriminator_map={
316
- "ref_name": ColumnIdentifierEntityRefName,
316
+ "entity_ref_name": ColumnIdentifierEntityRefName,
317
317
  "transitive": ColumnIdentifierTransitive,
318
318
  "transitive_aggregate": ColumnIdentifierTransitiveAggregate,
319
319
  },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: UncountablePythonSDK
3
- Version: 0.0.136.dev0
3
+ Version: 0.0.140.dev0
4
4
  Summary: Uncountable SDK
5
5
  Project-URL: Homepage, https://github.com/uncountableinc/uncountable-python-sdk
6
6
  Project-URL: Repository, https://github.com/uncountableinc/uncountable-python-sdk.git
@@ -148,10 +148,10 @@ uncountable/integration/queue_runner/datastore/model.py,sha256=YPqlULU7FxuwjmhXG
148
148
  uncountable/integration/secret_retrieval/__init__.py,sha256=3QXVj35w8rRMxVvmmsViFYDi3lcb3g70incfalOEm6o,87
149
149
  uncountable/integration/secret_retrieval/retrieve_secret.py,sha256=LBEf18KHtXZxg-ZZ80stJ1vW39AWf0CQllP6pNu3Eq8,2994
150
150
  uncountable/integration/webhook_server/entrypoint.py,sha256=RQndrVCKdaVBk-xJ592eGqeN-O0IOM7flXDGoJ2HXsc,3505
151
- uncountable/types/__init__.py,sha256=_fKrPI9sgHvzAdDD1RvoB2uhRphNauQ5K8u9CZpUfQk,11547
151
+ uncountable/types/__init__.py,sha256=nEtF9MUDWkIQBDacRwFzRBoBwpqcXwgg33Qq7To1YPA,11621
152
152
  uncountable/types/async_batch.py,sha256=yCCWrrLQfxXVqZp-KskxLBNkNmuELdz4PJjx8ULppgs,662
153
- uncountable/types/async_batch_processor.py,sha256=fuGLGFqiKcsjAuRGEXafT2y-yeJ8BcRs3NJpl7VIvUY,31445
154
- uncountable/types/async_batch_t.py,sha256=rZSm7651giUqNBZD_YBRJK70gpwulCcXxuRFVtP-5ow,4008
153
+ uncountable/types/async_batch_processor.py,sha256=40NlQIZv_sJixsvXLEBPvqSlbrfsmitzkzAsqADh4vw,32568
154
+ uncountable/types/async_batch_t.py,sha256=wpkWgXUHJLPfwK87p5X1M83DCJygOCdA09ZFec74SQ0,4047
155
155
  uncountable/types/async_jobs.py,sha256=JI0ScfawaqMRbJ2jbgW3YQLhijPnBeYdMnZJjygSxHg,322
156
156
  uncountable/types/async_jobs_t.py,sha256=u4xd3i512PZ-9592Q2ZgWh_faMiI4UMm0F_gOmZnerI,1389
157
157
  uncountable/types/auth_retrieval.py,sha256=770zjN1K9EF5zs1Xml7x6ke6Hkze7rcMT5FdDVCIl9M,549
@@ -162,7 +162,7 @@ uncountable/types/calculations.py,sha256=fApOFpgBemt_t7IVneVR0VdI3X5EOxiG6Xhzr6R
162
162
  uncountable/types/calculations_t.py,sha256=pl-lhjyDQuj11Sf9g1-0BsSkN7Ez8UxDp8-KMQ_3enM,709
163
163
  uncountable/types/chemical_structure.py,sha256=ujyragaD26-QG5jgKnWhO7TN3N1V9b_04T2WhqNYxxo,281
164
164
  uncountable/types/chemical_structure_t.py,sha256=VFFyits_vx4t5L2euu_qFiSpsGJjURkDPr3ISnr3nPc,855
165
- uncountable/types/client_base.py,sha256=1O7zG9zXRKEfjMsT2G0xcdIzrN-s4QJbyxizEYwyV6E,96666
165
+ uncountable/types/client_base.py,sha256=NRFnazDWa_FlNiI64FLvrQ8d_3abOazodPFKD22tK7Q,97436
166
166
  uncountable/types/client_config.py,sha256=xTQfTRTwnAc8ArvOuQdkKGy1uvGcXgQ_cgqsxhQLFgU,342
167
167
  uncountable/types/client_config_t.py,sha256=8JoXNcyYT26uJSs5qP3L6yaPgkn23y-o0NhLFU3ilbc,1089
168
168
  uncountable/types/curves.py,sha256=QyEyC20jsG-LGKVx6miiF-w70vKMwNkILFBDIJ5Ok9g,345
@@ -198,7 +198,7 @@ uncountable/types/integrations_t.py,sha256=ihyhuMDKtJarQ19OppS0fYpJUYd8o5-w6YCDE
198
198
  uncountable/types/job_definition.py,sha256=hYp5jPYLLYm3NKEqzQrQfXL0Ms5KgEQGTON13YWSPYk,1804
199
199
  uncountable/types/job_definition_t.py,sha256=E4IQvcYF3VDHbwRlvopy8y-HNAyEMZpwy7jkmp74fgQ,9563
200
200
  uncountable/types/listing.py,sha256=TwF1WjFZK-MxeI90xVcPPC_IJrobyEg5y5DYoLlu8T4,2764
201
- uncountable/types/listing_t.py,sha256=8NCeimtPb_3ecObw6BYGXo8q9D6y1WmidyjHadG7osA,18324
201
+ uncountable/types/listing_t.py,sha256=Gmoq43ncFm5QmMehDphTxEeptKRDl8Y0Un-QNk1vL-4,18352
202
202
  uncountable/types/notices.py,sha256=j3BWaogmbLsVSqxdk6GZEnzIj30f0KVdNTP660kMeMk,346
203
203
  uncountable/types/notices_t.py,sha256=GibfAH5Ed68PqoNFyjXR9vPgQLVwH1zjaFC8EL_Ysf8,1021
204
204
  uncountable/types/notifications.py,sha256=ZGr1ULMG3cPMED83NbMjrjmgVzCeOTS1Tc-pFTNuY4Y,600
@@ -267,6 +267,7 @@ uncountable/types/api/entity/list_entities.py,sha256=-ITJt6DZIWDd9j6vGNyX4fJbPed
267
267
  uncountable/types/api/entity/lock_entity.py,sha256=nwkjtF89ZWV6_1cLe8R47-G542b8i3FvBIjauOJlObE,1311
268
268
  uncountable/types/api/entity/lookup_entity.py,sha256=NIDdYl0iscueC68tfZ1lKp5vTq2NMDYtQ3cG6o2tBaI,3905
269
269
  uncountable/types/api/entity/resolve_entity_ids.py,sha256=2FyZxTjPHwCzCg92JjH-akcbPu2d9L14Oh6hRVkKDxA,1523
270
+ uncountable/types/api/entity/set_barcode.py,sha256=Mm-pi6214kviAyZsiOecUFmQbbNlIEoWlzqL62GG-g4,1215
270
271
  uncountable/types/api/entity/set_entity_field_values.py,sha256=oiNjAfdMvuFaLbppEaGejzr7Br6XB2D11WaXVCyx8c4,1324
271
272
  uncountable/types/api/entity/set_values.py,sha256=7pG15cAos1gem7-HtEMJ4AXisopXrzWsiuqiqh8AzQc,1249
272
273
  uncountable/types/api/entity/transition_entity_phase.py,sha256=CESVjxUyUKeHTuz07NdAjCdfqL0MZBPGMrF3vGYMybU,2669
@@ -356,7 +357,7 @@ uncountable/types/api/uploader/complete_async_parse.py,sha256=nYYBzjT_j4L7_1Ge-i
356
357
  uncountable/types/api/uploader/invoke_uploader.py,sha256=Bj7Dq4A90k00suacwk3bLA_dCb2aovS1kAbVam2AQnM,1395
357
358
  uncountable/types/api/user/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
358
359
  uncountable/types/api/user/get_current_user_info.py,sha256=Avqi_RXtRgbefrT_dwJ9MrO6eDNSSa_Nu650FSuESlg,1109
359
- uncountablepythonsdk-0.0.136.dev0.dist-info/METADATA,sha256=6dkeNueTJd5pnOFm44YQa7GX6TvX6GN4NM_EnKsiGjM,2243
360
- uncountablepythonsdk-0.0.136.dev0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
361
- uncountablepythonsdk-0.0.136.dev0.dist-info/top_level.txt,sha256=1UVGjAU-6hJY9qw2iJ7nCBeEwZ793AEN5ZfKX9A1uj4,31
362
- uncountablepythonsdk-0.0.136.dev0.dist-info/RECORD,,
360
+ uncountablepythonsdk-0.0.140.dev0.dist-info/METADATA,sha256=EZV_XMw6d-2GJ-EzlNM1haDBbqLX7YIn77CF6hjEnSY,2243
361
+ uncountablepythonsdk-0.0.140.dev0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
362
+ uncountablepythonsdk-0.0.140.dev0.dist-info/top_level.txt,sha256=1UVGjAU-6hJY9qw2iJ7nCBeEwZ793AEN5ZfKX9A1uj4,31
363
+ uncountablepythonsdk-0.0.140.dev0.dist-info/RECORD,,