benchling-sdk 1.12.0a0__py3-none-any.whl → 1.13.0__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.
@@ -8,6 +8,7 @@ from benchling_api_client.v2.stable.api.aa_sequences import (
8
8
  bulk_update_aa_sequences,
9
9
  bulk_upsert_aa_sequences,
10
10
  create_aa_sequence,
11
+ find_matching_regions_aa_sequences,
11
12
  get_aa_sequence,
12
13
  list_aa_sequences,
13
14
  unarchive_aa_sequences,
@@ -37,6 +38,7 @@ from benchling_sdk.models import (
37
38
  AaSequencesBulkCreateRequest,
38
39
  AaSequencesBulkUpdateRequest,
39
40
  AaSequencesBulkUpsertRequest,
41
+ AaSequencesFindMatchingRegion,
40
42
  AaSequencesPaginatedList,
41
43
  AaSequencesUnarchive,
42
44
  AaSequenceUpdate,
@@ -299,11 +301,28 @@ class AaSequenceService(BaseService):
299
301
  return model_from_detailed(response)
300
302
 
301
303
  @api_method
302
- def bulk_upsert(self, body: AaSequencesBulkUpsertRequest) -> AsyncTaskLink:
304
+ def bulk_upsert(
305
+ self, body: AaSequencesBulkUpsertRequest, returning: Optional[Iterable[str]] = None
306
+ ) -> AsyncTaskLink:
303
307
  """
304
308
  Bulk create or update AA sequences.
305
309
 
306
310
  See https://benchling.com/api/reference#/AA%20Sequences/bulkUpsertAASequences
307
311
  """
308
- response = bulk_upsert_aa_sequences.sync_detailed(client=self.client, json_body=body)
312
+ returning_string = optional_array_query_param(returning)
313
+ response = bulk_upsert_aa_sequences.sync_detailed(
314
+ client=self.client, json_body=body, returning=none_as_unset(returning_string)
315
+ )
316
+ return model_from_detailed(response)
317
+
318
+ @api_method
319
+ def find_matching_regions(self, find_matching_region: AaSequencesFindMatchingRegion) -> AsyncTaskLink:
320
+ """
321
+ Find matching regions for AA sequences.
322
+
323
+ See https://benchling.com/api/v2/reference#/AA%20Sequences/findMatchingRegionsAaSequences
324
+ """
325
+ response = find_matching_regions_aa_sequences.sync_detailed(
326
+ client=self.client, json_body=find_matching_region
327
+ )
309
328
  return model_from_detailed(response)
@@ -261,11 +261,16 @@ class DnaOligoService(BaseService):
261
261
  return model_from_detailed(response)
262
262
 
263
263
  @api_method
264
- def bulk_upsert(self, body: DnaOligosBulkUpsertRequest) -> AsyncTaskLink:
264
+ def bulk_upsert(
265
+ self, body: DnaOligosBulkUpsertRequest, returning: Optional[Iterable[str]] = None
266
+ ) -> AsyncTaskLink:
265
267
  """
266
268
  Bulk create or update DNA Oligos.
267
269
 
268
270
  See https://benchling.com/api/reference#/DNA%20Oligos/bulkUpsertDnaOligos
269
271
  """
270
- response = bulk_upsert_dna_oligos.sync_detailed(client=self.client, json_body=body)
272
+ returning_string = optional_array_query_param(returning)
273
+ response = bulk_upsert_dna_oligos.sync_detailed(
274
+ client=self.client, json_body=body, returning=none_as_unset(returning_string)
275
+ )
271
276
  return model_from_detailed(response)
@@ -4,14 +4,18 @@ from benchling_api_client.v2.stable.api.dna_sequences import (
4
4
  archive_dna_sequences,
5
5
  auto_annotate_dna_sequences,
6
6
  autofill_dna_sequence_parts,
7
+ autofill_dna_sequence_transcriptions,
7
8
  autofill_dna_sequence_translations,
8
9
  bulk_create_dna_sequences,
9
10
  bulk_get_dna_sequences,
10
11
  bulk_update_dna_sequences,
11
12
  bulk_upsert_dna_sequences,
12
13
  create_dna_sequence,
14
+ find_matching_regions_dna_sequences,
13
15
  get_dna_sequence,
14
16
  list_dna_sequences,
17
+ match_bases_dna_sequences,
18
+ search_dna_sequences,
15
19
  unarchive_dna_sequences,
16
20
  update_dna_sequence,
17
21
  upsert_dna_sequence,
@@ -42,12 +46,15 @@ from benchling_sdk.models import (
42
46
  DnaSequencesBulkCreateRequest,
43
47
  DnaSequencesBulkUpdateRequest,
44
48
  DnaSequencesBulkUpsertRequest,
49
+ DnaSequencesFindMatchingRegion,
45
50
  DnaSequencesPaginatedList,
46
51
  DnaSequencesUnarchive,
47
52
  DnaSequenceUpdate,
48
53
  DnaSequenceUpsertRequest,
49
54
  EntityArchiveReason,
50
55
  ListDNASequencesSort,
56
+ MatchBasesRequest,
57
+ SearchBasesRequest,
51
58
  )
52
59
  from benchling_sdk.services.v2.base_service import BaseService
53
60
 
@@ -290,6 +297,17 @@ class DnaSequenceService(BaseService):
290
297
  response = autofill_dna_sequence_parts.sync_detailed(client=self.client, json_body=body)
291
298
  return model_from_detailed(response)
292
299
 
300
+ @api_method
301
+ def autofill_transcriptions(self, dna_sequence_ids: Iterable[str]) -> AsyncTaskLink:
302
+ """
303
+ Autofill DNA sequence transcriptions.
304
+
305
+ See https://benchling.com/api/reference#/DNA%20Sequences/autofillDNASequenceTranscriptions
306
+ """
307
+ body = AutofillSequences(dna_sequence_ids=list(dna_sequence_ids))
308
+ response = autofill_dna_sequence_transcriptions.sync_detailed(client=self.client, json_body=body)
309
+ return model_from_detailed(response)
310
+
293
311
  @api_method
294
312
  def autofill_translations(self, dna_sequence_ids: Iterable[str]) -> AsyncTaskLink:
295
313
  """
@@ -324,11 +342,59 @@ class DnaSequenceService(BaseService):
324
342
  return model_from_detailed(response)
325
343
 
326
344
  @api_method
327
- def bulk_upsert(self, body: DnaSequencesBulkUpsertRequest) -> AsyncTaskLink:
345
+ def bulk_upsert(
346
+ self, body: DnaSequencesBulkUpsertRequest, returning: Optional[Iterable[str]] = None
347
+ ) -> AsyncTaskLink:
328
348
  """
329
349
  Bulk create or update DNA sequences.
330
350
 
331
351
  See https://benchling.com/api/reference#/DNA%20Sequences/bulkUpsertDnaSequences
332
352
  """
333
- response = bulk_upsert_dna_sequences.sync_detailed(client=self.client, json_body=body)
353
+ returning_string = optional_array_query_param(returning)
354
+ response = bulk_upsert_dna_sequences.sync_detailed(
355
+ client=self.client, json_body=body, returning=none_as_unset(returning_string)
356
+ )
357
+ return model_from_detailed(response)
358
+
359
+ @api_method
360
+ def match_bases(self, match_bases_request: MatchBasesRequest) -> DnaSequencesPaginatedList:
361
+ """
362
+ Match bases.
363
+
364
+ Returns DNA Sequences that exactly match the provided bases.
365
+
366
+ See https://benchling.com/api/reference#/DNA%20Sequences/matchBasesDnaSequences
367
+ """
368
+ response = match_bases_dna_sequences.sync_detailed(
369
+ client=self.client,
370
+ json_body=match_bases_request,
371
+ )
372
+ return model_from_detailed(response)
373
+
374
+ @api_method
375
+ def search_bases(self, search_bases_request: SearchBasesRequest) -> DnaSequencesPaginatedList:
376
+ """
377
+ Search bases.
378
+
379
+ Returns DNA Sequences that contain the provided bases.
380
+ Search indexing is asynchronous, so results may be not be available immediately after creation.
381
+
382
+ See https://benchling.com/api/reference#/DNA%20Sequences/searchDnaSequences
383
+ """
384
+ response = search_dna_sequences.sync_detailed(
385
+ client=self.client,
386
+ json_body=search_bases_request,
387
+ )
388
+ return model_from_detailed(response)
389
+
390
+ @api_method
391
+ def find_matching_regions(self, find_matching_region: DnaSequencesFindMatchingRegion) -> AsyncTaskLink:
392
+ """
393
+ Find matching regions for DNA sequences.
394
+
395
+ See https://benchling.com/api/v2/reference#/DNA%20Sequences/findMatchingRegionsDnaSequences
396
+ """
397
+ response = find_matching_regions_dna_sequences.sync_detailed(
398
+ client=self.client, json_body=find_matching_region
399
+ )
334
400
  return model_from_detailed(response)
@@ -1,7 +1,10 @@
1
+ from typing import Iterable, Optional
2
+
1
3
  from benchling_api_client.v2.stable.api.entities import bulk_upsert_entities
2
4
 
3
5
  from benchling_sdk.helpers.decorators import api_method
4
6
  from benchling_sdk.helpers.response_helpers import model_from_detailed
7
+ from benchling_sdk.helpers.serialization_helpers import none_as_unset, optional_array_query_param
5
8
  from benchling_sdk.models import AsyncTaskLink, EntitiesBulkUpsertRequest
6
9
  from benchling_sdk.services.v2.base_service import BaseService
7
10
 
@@ -18,7 +21,9 @@ class EntityService(BaseService):
18
21
  """
19
22
 
20
23
  @api_method
21
- def bulk_upsert(self, bulk_upsert: EntitiesBulkUpsertRequest) -> AsyncTaskLink:
24
+ def bulk_upsert(
25
+ self, bulk_upsert: EntitiesBulkUpsertRequest, returning: Optional[Iterable[str]] = None
26
+ ) -> AsyncTaskLink:
22
27
  """
23
28
  Upsert many entities at once.
24
29
 
@@ -34,5 +39,8 @@ class EntityService(BaseService):
34
39
  If any action fails, the whole operation is canceled and no objects are created or updated.
35
40
  See https://benchling.com/api/reference#/Entities/bulkUpsertEntities
36
41
  """
37
- response = bulk_upsert_entities.sync_detailed(client=self.client, json_body=bulk_upsert)
42
+ returning_string = optional_array_query_param(returning)
43
+ response = bulk_upsert_entities.sync_detailed(
44
+ client=self.client, json_body=bulk_upsert, returning=none_as_unset(returning_string)
45
+ )
38
46
  return model_from_detailed(response)
@@ -11,6 +11,7 @@ from benchling_api_client.v2.stable.api.entries import (
11
11
  list_entry_templates,
12
12
  unarchive_entries,
13
13
  update_entry,
14
+ update_entry_template,
14
15
  )
15
16
  from benchling_api_client.v2.types import Response
16
17
 
@@ -31,6 +32,7 @@ from benchling_sdk.models import (
31
32
  EntryExternalFile,
32
33
  EntryTemplate,
33
34
  EntryTemplatesPaginatedList,
35
+ EntryTemplateUpdate,
34
36
  EntryUpdate,
35
37
  ListEntriesReviewStatus,
36
38
  ListEntriesSort,
@@ -332,3 +334,24 @@ class EntryService(BaseService):
332
334
  client=self.client, entry_template_id=entry_template_id, returning=none_as_unset(returning_string)
333
335
  )
334
336
  return model_from_detailed(response)
337
+
338
+ @api_method
339
+ def update_entry_template(
340
+ self,
341
+ entry_template_id: str,
342
+ entry_template: EntryTemplateUpdate,
343
+ returning: Optional[Iterable[str]] = None,
344
+ ) -> EntryTemplate:
345
+ """
346
+ Update a notebook entry template's metadata.
347
+
348
+ See https://benchling.com/api/reference#/Entries/updateEntryTemplate
349
+ """
350
+ returning_string = optional_array_query_param(returning)
351
+ response = update_entry_template.sync_detailed(
352
+ client=self.client,
353
+ entry_template_id=entry_template_id,
354
+ json_body=entry_template,
355
+ returning=none_as_unset(returning_string),
356
+ )
357
+ return model_from_detailed(response)
@@ -253,11 +253,16 @@ class MoleculeService(BaseService):
253
253
  return model_from_detailed(response)
254
254
 
255
255
  @api_method
256
- def bulk_upsert(self, body: MoleculesBulkUpsertRequest) -> AsyncTaskLink:
256
+ def bulk_upsert(
257
+ self, body: MoleculesBulkUpsertRequest, returning: Optional[Iterable[str]] = None
258
+ ) -> AsyncTaskLink:
257
259
  """
258
260
  Bulk create or update Molecules.
259
261
 
260
262
  See https://benchling.com/api/reference#/Molecules/bulkUpsertMolecules
261
263
  """
262
- response = bulk_upsert_molecules.sync_detailed(client=self.client, json_body=body)
264
+ returning_string = optional_array_query_param(returning)
265
+ response = bulk_upsert_molecules.sync_detailed(
266
+ client=self.client, json_body=body, returning=none_as_unset(returning_string)
267
+ )
263
268
  return model_from_detailed(response)
@@ -90,6 +90,16 @@ class PlateService(BaseService):
90
90
  creator_ids: Optional[Iterable[str]] = None,
91
91
  archive_reason: Optional[str] = None,
92
92
  schema_fields: Optional[Dict[str, Any]] = None,
93
+ empty_containers: Optional[int] = None,
94
+ empty_containers_gt: Optional[int] = None,
95
+ empty_containers_gte: Optional[int] = None,
96
+ empty_containers_lt: Optional[int] = None,
97
+ empty_containers_lte: Optional[int] = None,
98
+ empty_positions: Optional[int] = None,
99
+ empty_positions_gt: Optional[int] = None,
100
+ empty_positions_gte: Optional[int] = None,
101
+ empty_positions_lt: Optional[int] = None,
102
+ empty_positions_lte: Optional[int] = None,
93
103
  timeout_seconds: Optional[float] = None,
94
104
  returning: Optional[Iterable[str]] = None
95
105
  ) -> Response[PlatesPaginatedList]:
@@ -111,6 +121,16 @@ class PlateService(BaseService):
111
121
  namesany_ofcase_sensitive=none_as_unset(optional_array_query_param(names_any_of_case_sensitive)),
112
122
  creator_ids=none_as_unset(optional_array_query_param(creator_ids)),
113
123
  schema_fields=none_as_unset(schema_fields_query_param(schema_fields)),
124
+ empty_containers=none_as_unset(empty_containers),
125
+ empty_containersgt=none_as_unset(empty_containers_gt),
126
+ empty_containersgte=none_as_unset(empty_containers_gte),
127
+ empty_containerslt=none_as_unset(empty_containers_lt),
128
+ empty_containerslte=none_as_unset(empty_containers_lte),
129
+ empty_positions=none_as_unset(empty_positions),
130
+ empty_positionsgt=none_as_unset(empty_positions_gt),
131
+ empty_positionsgte=none_as_unset(empty_positions_gte),
132
+ empty_positionslt=none_as_unset(empty_positions_lt),
133
+ empty_positionslte=none_as_unset(empty_positions_lte),
114
134
  next_token=none_as_unset(next_token),
115
135
  page_size=none_as_unset(page_size),
116
136
  returning=none_as_unset(optional_array_query_param(returning)),
@@ -136,6 +156,16 @@ class PlateService(BaseService):
136
156
  creator_ids: Optional[Iterable[str]] = None,
137
157
  archive_reason: Optional[str] = None,
138
158
  schema_fields: Optional[Dict[str, Any]] = None,
159
+ empty_containers: Optional[int] = None,
160
+ empty_containers_gt: Optional[int] = None,
161
+ empty_containers_gte: Optional[int] = None,
162
+ empty_containers_lt: Optional[int] = None,
163
+ empty_containers_lte: Optional[int] = None,
164
+ empty_positions: Optional[int] = None,
165
+ empty_positions_gt: Optional[int] = None,
166
+ empty_positions_gte: Optional[int] = None,
167
+ empty_positions_lt: Optional[int] = None,
168
+ empty_positions_lte: Optional[int] = None,
139
169
  page_size: Optional[int] = None,
140
170
  timeout_seconds: Optional[float] = DEFAULT_PLATE_HTTP_TIMEOUT,
141
171
  returning: Optional[Iterable[str]] = None
@@ -170,6 +200,16 @@ class PlateService(BaseService):
170
200
  names_any_of_case_sensitive=names_any_of_case_sensitive,
171
201
  creator_ids=creator_ids,
172
202
  schema_fields=schema_fields,
203
+ empty_containers=empty_containers,
204
+ empty_containers_gt=empty_containers_gt,
205
+ empty_containers_gte=empty_containers_gte,
206
+ empty_containers_lt=empty_containers_lt,
207
+ empty_containers_lte=empty_containers_lte,
208
+ empty_positions=empty_positions,
209
+ empty_positions_gt=empty_positions_gt,
210
+ empty_positions_gte=empty_positions_gte,
211
+ empty_positions_lt=empty_positions_lt,
212
+ empty_positions_lte=empty_positions_lte,
173
213
  next_token=next_token,
174
214
  page_size=page_size,
175
215
  timeout_seconds=timeout_seconds,
@@ -270,11 +270,16 @@ class RnaOligoService(BaseService):
270
270
  return model_from_detailed(response)
271
271
 
272
272
  @api_method
273
- def bulk_upsert(self, body: RnaOligosBulkUpsertRequest) -> AsyncTaskLink:
273
+ def bulk_upsert(
274
+ self, body: RnaOligosBulkUpsertRequest, returning: Optional[Iterable[str]] = None
275
+ ) -> AsyncTaskLink:
274
276
  """
275
277
  Bulk create or update RNA Oligos.
276
278
 
277
279
  See https://benchling.com/api/reference#/RNA%20Oligos/bulkUpsertRnaOligos
278
280
  """
279
- response = bulk_upsert_rna_oligos.sync_detailed(client=self.client, json_body=body)
281
+ returning_string = optional_array_query_param(returning)
282
+ response = bulk_upsert_rna_oligos.sync_detailed(
283
+ client=self.client, json_body=body, returning=none_as_unset(returning_string)
284
+ )
280
285
  return model_from_detailed(response)
@@ -11,6 +11,8 @@ from benchling_api_client.v2.stable.api.rna_sequences import (
11
11
  create_rna_sequence,
12
12
  get_rna_sequence,
13
13
  list_rna_sequences,
14
+ match_bases_rna_sequences,
15
+ search_rna_sequences,
14
16
  unarchive_rna_sequences,
15
17
  update_rna_sequence,
16
18
  )
@@ -31,6 +33,7 @@ from benchling_sdk.models import (
31
33
  AutoAnnotateRnaSequences,
32
34
  EntityArchiveReason,
33
35
  ListRNASequencesSort,
36
+ MatchBasesRequest,
34
37
  RnaSequence,
35
38
  RnaSequenceBulkCreate,
36
39
  RnaSequenceBulkUpdate,
@@ -42,6 +45,7 @@ from benchling_sdk.models import (
42
45
  RnaSequencesPaginatedList,
43
46
  RnaSequencesUnarchive,
44
47
  RnaSequenceUpdate,
48
+ SearchBasesRequest,
45
49
  )
46
50
  from benchling_sdk.services.v2.base_service import BaseService
47
51
 
@@ -315,3 +319,34 @@ class RnaSequenceService(BaseService):
315
319
  """
316
320
  response = auto_annotate_rna_sequences.sync_detailed(client=self.client, json_body=auto_annotate)
317
321
  return model_from_detailed(response)
322
+
323
+ @api_method
324
+ def match_bases(self, match_bases_request: MatchBasesRequest) -> RnaSequencesPaginatedList:
325
+ """
326
+ Match bases.
327
+
328
+ Returns RNA Sequences that exactly match the provided bases.
329
+
330
+ See https://benchling.com/api/reference#/RNA%20Sequences/matchBasesRnaSequences
331
+ """
332
+ response = match_bases_rna_sequences.sync_detailed(
333
+ client=self.client,
334
+ json_body=match_bases_request,
335
+ )
336
+ return model_from_detailed(response)
337
+
338
+ @api_method
339
+ def search_bases(self, search_bases_request: SearchBasesRequest) -> RnaSequencesPaginatedList:
340
+ """
341
+ Search bases.
342
+
343
+ Returns RNA Sequences that contain the provided bases.
344
+ Search indexing is asynchronous, so results may be not be available immediately after creation.
345
+
346
+ See https://benchling.com/api/reference#/RNA%20Sequences/searchRnaSequences
347
+ """
348
+ response = search_rna_sequences.sync_detailed(
349
+ client=self.client,
350
+ json_body=search_bases_request,
351
+ )
352
+ return model_from_detailed(response)
@@ -6,6 +6,7 @@ from benchling_api_client.v2.stable.api.users import (
6
6
  create_user,
7
7
  get_user,
8
8
  get_user_activity,
9
+ get_user_warehouse_logins,
9
10
  list_users,
10
11
  update_user,
11
12
  )
@@ -19,6 +20,7 @@ from benchling_sdk.helpers.response_helpers import model_from_detailed
19
20
  from benchling_sdk.helpers.serialization_helpers import none_as_unset, optional_array_query_param
20
21
  from benchling_sdk.models import (
21
22
  AsyncTaskLink,
23
+ GetUserWarehouseLoginsResponse_200,
22
24
  ListUsersSort,
23
25
  User,
24
26
  UserActivity,
@@ -193,3 +195,13 @@ class UserService(BaseService):
193
195
  """
194
196
  response = get_user_activity.sync_detailed(client=self.client, user_id=user_id)
195
197
  return model_from_detailed(response)
198
+
199
+ @api_method
200
+ def get_warehouse_logins(self, user_id: str) -> GetUserWarehouseLoginsResponse_200:
201
+ """
202
+ Return the list of warehouse credential summaries for this user.
203
+
204
+ See https://benchling.com/api/reference#/Users/getUserWarehouseLogins
205
+ """
206
+ response = get_user_warehouse_logins.sync_detailed(client=self.client, user_id=user_id)
207
+ return model_from_detailed(response)
@@ -9,7 +9,6 @@ from benchling_sdk.helpers.retry_helpers import RetryStrategy
9
9
 
10
10
  if TYPE_CHECKING:
11
11
  from benchling_sdk.services.v2.alpha.v2_alpha_app_service import V2AlphaAppService
12
- from benchling_sdk.services.v2.alpha.v2_alpha_dna_sequence_service import V2AlphaDnaSequenceService
13
12
 
14
13
  from benchling_sdk.services.v2.base_service import BaseService
15
14
 
@@ -24,7 +23,6 @@ class V2AlphaService(BaseService):
24
23
  """
25
24
 
26
25
  _app_service: Optional[V2AlphaAppService]
27
- _dna_sequence_service: Optional[V2AlphaDnaSequenceService]
28
26
  _alpha_client: Client
29
27
 
30
28
  def __init__(self, client: Client, retry_strategy: RetryStrategy = RetryStrategy()):
@@ -53,21 +51,3 @@ class V2AlphaService(BaseService):
53
51
 
54
52
  self._app_service = V2AlphaAppService(self._alpha_client, self._retry_strategy)
55
53
  return self._app_service
56
-
57
- @property
58
- def dna_sequences(self) -> V2AlphaDnaSequenceService:
59
- """
60
- V2-Alpha DNA Sequences.
61
-
62
- DNA sequences are the bread and butter of the Benchling Molecular Biology suite. On Benchling, these are
63
- comprised of a string of nucleotides and collections of other attributes, such as annotations and primers.
64
-
65
- See https://benchling.com/api/v2-alpha/reference#/DNA%20Sequences
66
- """
67
- if self._dna_sequence_service is None:
68
- from benchling_sdk.services.v2.alpha.v2_alpha_dna_sequence_service import (
69
- V2AlphaDnaSequenceService,
70
- )
71
-
72
- self._dna_sequence_service = V2AlphaDnaSequenceService(self._alpha_client, self._retry_strategy)
73
- return self._dna_sequence_service
@@ -10,7 +10,6 @@ from benchling_sdk.services.v2.base_service import BaseService
10
10
  from benchling_sdk.services.v2.beta.v2_beta_data_frame_service import V2BetaDataFrameService
11
11
 
12
12
  if TYPE_CHECKING:
13
- from benchling_sdk.services.v2.beta.v2_beta_aa_sequence_service import V2BetaAaSequenceService
14
13
  from benchling_sdk.services.v2.beta.v2_beta_app_service import V2BetaAppService
15
14
  from benchling_sdk.services.v2.beta.v2_beta_collaboration_service import V2BetaCollaborationService
16
15
  from benchling_sdk.services.v2.beta.v2_beta_entry_service import V2BetaEntryService
@@ -28,7 +27,6 @@ class V2BetaService(BaseService):
28
27
  See https://benchling.com/api/v2-beta/reference
29
28
  """
30
29
 
31
- _aa_sequence_service: Optional[V2BetaAaSequenceService]
32
30
  _app_service: Optional[V2BetaAppService]
33
31
  _collaboration_service: Optional[V2BetaCollaborationService]
34
32
  _data_frame_service: Optional[V2BetaDataFrameService]
@@ -56,23 +54,6 @@ class V2BetaService(BaseService):
56
54
  self._project_service = None
57
55
  self._worklist_service = None
58
56
 
59
- @property
60
- def aa_sequences(self) -> V2BetaAaSequenceService:
61
- """
62
- V2-Beta AA Sequences.
63
-
64
- AA Sequences are the working units of cells that make everything run (they help make structures, catalyze
65
- reactions and allow for signaling - a kind of internal cell communication). On Benchling, these are comprised
66
- of a string of amino acids and collections of other attributes, such as annotations.
67
-
68
- See https://benchling.com/api/v2-beta/reference#/AA%20Sequences
69
- """
70
- if self._aa_sequence_service is None:
71
- from benchling_sdk.services.v2.beta.v2_beta_aa_sequence_service import V2BetaAaSequenceService
72
-
73
- self._aa_sequence_service = V2BetaAaSequenceService(self._beta_client, self.retry_strategy)
74
- return self._aa_sequence_service
75
-
76
57
  @property
77
58
  def apps(self) -> V2BetaAppService:
78
59
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: benchling-sdk
3
- Version: 1.12.0a0
3
+ Version: 1.13.0
4
4
  Summary: SDK for interacting with the Benchling Platform.
5
5
  License: Apache-2.0
6
6
  Author: Benchling Support
@@ -17,7 +17,7 @@ Provides-Extra: python-jose
17
17
  Requires-Dist: PyYAML (>=6.0,<7.0)
18
18
  Requires-Dist: attrs (>=20.1.0,<23)
19
19
  Requires-Dist: backoff (>=1.10.0,<2.0.0)
20
- Requires-Dist: benchling-api-client (==2.0.287)
20
+ Requires-Dist: benchling-api-client (==2.0.305)
21
21
  Requires-Dist: certifi (>=2022.12.7)
22
22
  Requires-Dist: cryptography (>=42.0.0) ; extra == "cryptography"
23
23
  Requires-Dist: dataclasses-json (>=0.5.2,<0.6.0)
@@ -43,18 +43,16 @@ benchling_sdk/helpers/response_helpers.py,sha256=vtmb9lEEKy3dRFre3Q0R4XaLBEaS_rr
43
43
  benchling_sdk/helpers/retry_helpers.py,sha256=SeKOPjnJIes6UsD7kVqlYKBYmwH_DCHdllnG3jys3N8,2740
44
44
  benchling_sdk/helpers/serialization_helpers.py,sha256=IUS0uGU_EiZvb8O-bTViUaROmxKcvdX3JeR9iKsWAG8,3662
45
45
  benchling_sdk/helpers/transaction_manager.py,sha256=HcSDsgGK7Rb93bgv6fpb4HvQUT-tqP0lXgVa_bWCDh4,3663
46
- benchling_sdk/models/__init__.py,sha256=nOv638Xm2k1mMXNfFDKcY9oLbXjfgzjxyfdMGlZjZ9A,345337
46
+ benchling_sdk/models/__init__.py,sha256=V7obyEeyaj8miIgnsu22nGUijWRsc7vL4XgtyKnhfJA,353074
47
47
  benchling_sdk/models/webhooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
- benchling_sdk/models/webhooks/v0/__init__.py,sha256=4n1NDjsKwvdQTGTpNjvzCBq4ZMwv4wtImkETMCX-TdM,6836
48
+ benchling_sdk/models/webhooks/v0/__init__.py,sha256=tEHA5YxF_WPBjvOIT8UxQjxFAnX--fQmReATINpTz7Y,48834
49
49
  benchling_sdk/py.typed,sha256=8ZJUsxZiuOy1oJeVhsTWQhTG_6pTVHVXk5hJL79ebTk,25
50
50
  benchling_sdk/services/__init__.py,sha256=K7N-sxMKhIsFroLe_tJIRcKJJuoShTCxiD_bfUz9958,85
51
51
  benchling_sdk/services/v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
52
  benchling_sdk/services/v2/alpha/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
53
  benchling_sdk/services/v2/alpha/v2_alpha_app_service.py,sha256=cR3nk6oxV2B-ewcUooQ4iqMZJQaj_wvwGyON2eL08Hc,1443
54
- benchling_sdk/services/v2/alpha/v2_alpha_dna_sequence_service.py,sha256=XzpaPWbdxbwE_LJ5RheKHNAwdjPNfr7-o3IXmJsQ6UI,1347
55
54
  benchling_sdk/services/v2/base_service.py,sha256=g4Qn001slCJTvqDvRmbImJNBJ8lPJgMVL1H4Xxc8D2o,951
56
55
  benchling_sdk/services/v2/beta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
- benchling_sdk/services/v2/beta/v2_beta_aa_sequence_service.py,sha256=ED5jOL1N5JzuikpVPZNj0Wi5czwTfA9HChQca1fwA3I,1410
58
56
  benchling_sdk/services/v2/beta/v2_beta_app_service.py,sha256=nVOEQ3ESkUo2e4p_MYMq-VUpEx2wNpJIY7ZZ8UuHnuQ,1385
59
57
  benchling_sdk/services/v2/beta/v2_beta_collaboration_service.py,sha256=epLHLdDRfj8ni2-45WWFSpOgQG-kTmbxTffRP1mnim0,5753
60
58
  benchling_sdk/services/v2/beta/v2_beta_data_frame_service.py,sha256=oqCVyYBK7YECXYIDWJ5VIaiAO-W7GXC7xd0Wy1swTmU,14853
@@ -63,7 +61,7 @@ benchling_sdk/services/v2/beta/v2_beta_folder_service.py,sha256=b6-D_eDTF1e2l2YL
63
61
  benchling_sdk/services/v2/beta/v2_beta_project_service.py,sha256=8Wk0u6dtiewytfuJ2RaybMOfqih7YF74cJF_wsetJpM,4926
64
62
  benchling_sdk/services/v2/beta/v2_beta_worklist_service.py,sha256=tFMe-7Wbw3qISe-T5EsnYVsmcd1P8Aw1NoWmNA5MroU,5544
65
63
  benchling_sdk/services/v2/stable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
- benchling_sdk/services/v2/stable/aa_sequence_service.py,sha256=PoHlu_OrUTAccP34_-3OqEaeSpwZj2GYf2wj3Sts43k,12748
64
+ benchling_sdk/services/v2/stable/aa_sequence_service.py,sha256=75l2QsE6WZ5EJvSDmImZhGi-kc6TPYCFnVpojOKpB1c,13492
67
65
  benchling_sdk/services/v2/stable/api_service.py,sha256=e0RNp4Jne9UTaHOYMOxxXJpsyUO3WMSFPzN7hB8iliU,12371
68
66
  benchling_sdk/services/v2/stable/app_service.py,sha256=dy9FMVvMiJrkYbxZswKuB37EB9K_jCqQr9FfAa0BMgE,23126
69
67
  benchling_sdk/services/v2/stable/assay_result_service.py,sha256=_qtSpMznVrGHlB2VnHI87IPjVQHCX1pZbLPJ_LYuW7U,13362
@@ -74,11 +72,11 @@ benchling_sdk/services/v2/stable/container_service.py,sha256=8g3gwcI5fSuSbEQCtrk
74
72
  benchling_sdk/services/v2/stable/custom_entity_service.py,sha256=LOATrTh7Vv6dXWlUqyH8Eet3bwBm0BNoVbCZYiqWu80,12188
75
73
  benchling_sdk/services/v2/stable/custom_notation_service.py,sha256=LCnt8hoCkkSRbz-bXUaYbuMaE-1XdYmXB0MgeQ30POc,2141
76
74
  benchling_sdk/services/v2/stable/dna_alignments_service.py,sha256=leJaPt7Uk1PyxfO9LXTVi2DjLyqcXgeMselftJaGJA4,7445
77
- benchling_sdk/services/v2/stable/dna_oligo_service.py,sha256=O10x_NF-8e5ypAXG6TrxrDQaFJYyql6qa0zccjOSFrI,10941
78
- benchling_sdk/services/v2/stable/dna_sequence_service.py,sha256=ByTkFv1bbE7yMfOCRrOW7tP0w96yoy3rLv9--HhyB9s,13804
75
+ benchling_sdk/services/v2/stable/dna_oligo_service.py,sha256=0D3X98UxWWolkCG_IxiPE3oiFMwyqC7vJlJCyEbNDt4,11128
76
+ benchling_sdk/services/v2/stable/dna_sequence_service.py,sha256=8s4Lgitf4k-Ma0XuXhvG-68A1v4YXZzvtqt9VgukOUQ,16310
79
77
  benchling_sdk/services/v2/stable/dropdown_service.py,sha256=AcnATXU_TChhSm9NX8dx9wnbxeBwACzThw5zM3yPYmk,4919
80
- benchling_sdk/services/v2/stable/entity_service.py,sha256=WE672JG35FU6UJlnwGekXTxkogQR3uXqFw2Y0yOXJ34,1866
81
- benchling_sdk/services/v2/stable/entry_service.py,sha256=nGK8bctxpaeyHFNj-aY53TbTOwGvqbd8xqQgs-nncKI,12935
78
+ benchling_sdk/services/v2/stable/entity_service.py,sha256=NGDjng4rwiL6EeDCEs5oy9ciKV6CPv71S1l7A8zM0Uk,2190
79
+ benchling_sdk/services/v2/stable/entry_service.py,sha256=7HypcoX0vWDi5hFMtqFO6RpKc6IclO3HMQaWdvKNXyQ,13706
82
80
  benchling_sdk/services/v2/stable/event_service.py,sha256=--j-oqKR-Ld5d4QiJ6aofOr9LTBCM7maqwRvo2goSPA,2538
83
81
  benchling_sdk/services/v2/stable/export_service.py,sha256=T8ir9yRyA8rMUXagLAWYR4cYtOzxt6JxjlnQwExk_HU,1080
84
82
  benchling_sdk/services/v2/stable/feature_library_service.py,sha256=h3vdttbJzWWG-297FedtmDXSFEUP0KVGU5Y2D_VW-KA,9767
@@ -88,30 +86,30 @@ benchling_sdk/services/v2/stable/lab_automation_service.py,sha256=vfKLrH6eZn9v2u
88
86
  benchling_sdk/services/v2/stable/label_template_service.py,sha256=VS25LUpUsJnkU_AFTTKjwMruVgE5-izLoc-_wrqr4Pk,1300
89
87
  benchling_sdk/services/v2/stable/location_service.py,sha256=4RVFEBRQZnNOm2AXdJcBYHVVPEtDsvihlKskbtez_d0,8026
90
88
  benchling_sdk/services/v2/stable/mixture_service.py,sha256=nNwh67Or1BQYZxcatcg-OEEw82Jr6UnxsYVRB9Y18GY,9952
91
- benchling_sdk/services/v2/stable/molecule_service.py,sha256=Pjme9B1NiCfiwHVCvrEwZrGeTFlPq99Ec0vM0wLaNDU,10343
89
+ benchling_sdk/services/v2/stable/molecule_service.py,sha256=7BiurkHuS1ufMeZdRQ7UDb9Z7iTpcVeUIs2i9afHIdQ,10530
92
90
  benchling_sdk/services/v2/stable/nucleotide_alignments_service.py,sha256=ab52E-PVeBF693QA8R8OxwtsppyDiehvrkveNPIhjTI,6100
93
91
  benchling_sdk/services/v2/stable/oligo_service.py,sha256=0cmQIpsijY-X2-6Bd33NVk5JRdS0OSoLjgTrZHIOra8,12173
94
92
  benchling_sdk/services/v2/stable/organization_service.py,sha256=j9B2cUCgPPTMjtFW70-dMUFQJAqpUXNTh8LJ7gvcOGo,4927
95
- benchling_sdk/services/v2/stable/plate_service.py,sha256=P5k_PMTRcWlbwDbEI0S159gJdzlSxpmBRH1qsOYOGfw,11006
93
+ benchling_sdk/services/v2/stable/plate_service.py,sha256=2KU9sZ7x3niQQQHlhQ_yFKy4GoddJQ5v-kxG808T1mE,13226
96
94
  benchling_sdk/services/v2/stable/printer_service.py,sha256=XhXCwbNAamndWLuHn9UE2ehkkl6vCN5hhxBUvr93Uzk,1181
97
95
  benchling_sdk/services/v2/stable/project_service.py,sha256=Mb3ibiOQJ3uRnJLoDLYgPgrFE80N1bdYQz9LwpbrMtg,4140
98
96
  benchling_sdk/services/v2/stable/registry_service.py,sha256=DtftbhKoxruV9H8ksvQRUYXakv1nQ92uu17iKVOlZnY,4627
99
97
  benchling_sdk/services/v2/stable/request_service.py,sha256=EzXuIXE4mnGtEXiLYKqUApDbXp8ODq35FP-egVEXZC8,9500
100
- benchling_sdk/services/v2/stable/rna_oligo_service.py,sha256=_0gByXKN5wVlCSv4Hx_vWYfKpdus762g0G-N2GEElp8,11171
101
- benchling_sdk/services/v2/stable/rna_sequence_service.py,sha256=IC5YTc76oaThtFHsMAd0C6qPLgUiQ4q1WTa2LaNMrqE,12951
98
+ benchling_sdk/services/v2/stable/rna_oligo_service.py,sha256=16Q2ijthmpbkDm6_9EeXZ_QfVDOb5vgAWum33QKQ8Kw,11358
99
+ benchling_sdk/services/v2/stable/rna_sequence_service.py,sha256=F1_wx7t4SOsb_yswH-X4cLeqhqZTQe1oE6D7dg52Fcw,14163
102
100
  benchling_sdk/services/v2/stable/schema_service.py,sha256=W64obUUqBcDbMbBOtDVb_bl-VUQGARoeb2u4I96k9Tk,23509
103
101
  benchling_sdk/services/v2/stable/task_service.py,sha256=61vimlvZf2R93SitGyd883Yk5pmStavnPDkxuwFvzfU,4983
104
102
  benchling_sdk/services/v2/stable/team_service.py,sha256=SYwI2Bv3rWDYnoEKb-MX_yhe39fErewJ4Sx0aon-ej0,4723
105
- benchling_sdk/services/v2/stable/user_service.py,sha256=7rIcB7Bf_lSr0TSVch08DXQED90ElAd1-N8pAgtgsh4,7035
103
+ benchling_sdk/services/v2/stable/user_service.py,sha256=NkMPz2rPaF6iXNWTBAOWSiXVif2rHYGbYAzaHg4Fhig,7528
106
104
  benchling_sdk/services/v2/stable/warehouse_service.py,sha256=_gVTwJZ5BcaNBG0k8I0a4MRahajkV7TNtREfuQGwR74,1286
107
105
  benchling_sdk/services/v2/stable/workflow_output_service.py,sha256=VD0RvOBCkgX_YwUoQYQPR_PyGJXuIau5beq9bK75VXM,9993
108
106
  benchling_sdk/services/v2/stable/workflow_task_group_service.py,sha256=SSfHDH-Eniz09HG_qSPSfSVHU3BpvTbgGhOQS4iWcAw,8848
109
107
  benchling_sdk/services/v2/stable/workflow_task_service.py,sha256=pOhwFmWVk1jh3A9C70LpLhYjlgk2DcGCfjO8Uup9ScQ,12819
110
- benchling_sdk/services/v2/v2_alpha_service.py,sha256=vNfYK0Dheml9ozR_0tzTlA3blPDTdfTQR8ppaQ6xuu4,2609
111
- benchling_sdk/services/v2/v2_beta_service.py,sha256=URRSAdNuoSg322Ej18st0Z4SPBw7-y0udOeBpw2Lomg,7149
108
+ benchling_sdk/services/v2/v2_alpha_service.py,sha256=tlGZTudMaMIgzwHGDJiHB5YVPDOwuQ8PxWYgnc2wfeI,1665
109
+ benchling_sdk/services/v2/v2_beta_service.py,sha256=B68EANGivafp67dWuXO1Rcl_mqmIX6-rSjd62t6mniI,6168
112
110
  benchling_sdk/services/v2/v2_stable_service.py,sha256=zZ9Mrx0TkDwPG62uNAzz79wI2hUwcaSO3qAJX29Fij0,36051
113
111
  benchling_sdk/services/v2_service.py,sha256=3eoIjYEmGLPdWCpBN0pl7q7_HNWCsUvfvTn3Hcz0wSM,2860
114
- benchling_sdk-1.12.0a0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
115
- benchling_sdk-1.12.0a0.dist-info/METADATA,sha256=M0x-gU7sPgvqIkEBnuLYL8vx43akNJV4bS87HiuWpQ4,2118
116
- benchling_sdk-1.12.0a0.dist-info/WHEEL,sha256=d2fvjOD7sXsVzChCqf0Ty0JbHKBaLYwDbGQDwQTnJ50,88
117
- benchling_sdk-1.12.0a0.dist-info/RECORD,,
112
+ benchling_sdk-1.13.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
113
+ benchling_sdk-1.13.0.dist-info/METADATA,sha256=OVxnnAFjrFEyqHkB7kQMkip4_mK3-T3AwDg26_5lxmU,2116
114
+ benchling_sdk-1.13.0.dist-info/WHEEL,sha256=d2fvjOD7sXsVzChCqf0Ty0JbHKBaLYwDbGQDwQTnJ50,88
115
+ benchling_sdk-1.13.0.dist-info/RECORD,,