improved

SDK Version 1.22.0 Release Notes

Version 1.22.0 of the integration adds service coverage with some breaking changes for the SDK including beta endpoints and connectors and new fields on several existing models. Notably, the App Canvas now includes the option to upload files via the fileUploadUiBlock and there is now a benchling.connect service. Archival and unarchival are supported for files and datasets. Also, there is added support for new python versions.

What's changing?

Added

  • New benchling_sdk.models.fileUploadUiBlock is supported in benchling_sdk.models.AppCanvas. See full memo.
  • New service benchling.connect. See API Reference.
    • New service benchling.connect.convert_to_asm.
    • New service benchling.connect.convert_to_csv.
    • New service benchling.connect.list_allotropy_vendors.

Promoted to stable

  • Service benchling.data_frames was promoted to stable. See API Reference.
    • In benchling.data_frames.get_by_id(row_data_format)` there is now a Parquet format.
  • Service benchling.datasets was promoted to stable. See API Reference.
    • Added benchling.datasets.archive_datasets function
    • Added benchling.datasets.unarchive function
  • Service benchling.files was promoted to stable. See API Reference.
    • Added benchling.files.archive_files function
    • Added benchling.files.unarchive function
  • Service benchling.audit was promoted to stable. See API Reference.
  • Webhook benchling_sdk.models.webhooks.v0.CanvasCreatedWebhookV2 was promoted to stable. See Webhook Reference.
    • Note: Apps should subscribe to v2.canvas.created and not v2-beta.canvas.created from now on.

Changed

  • In benchling_sdk.models.webhooks.v0.CanvasCreatedWebhookV2Beta model there is now a user_id . See Webhook Reference.
  • In benchling_sdk.models.webhooks.v0.CanvasInitializeWebhookV2 model there is now a user_id . See Webhook Reference.
  • In Canvas blocks- benchling_sdk.models.DropdownUiBlock, benchling_sdk.models.DropdownMultiValueUiBlock, benchling_sdk.models.SearchInputUiBlock, benchling_sdk.models.SearchInputMultiValueUiBlock, benchling_sdk.models.SelectorInputUiBlock, benchling_sdk.models.SelectorInputMultiValueUiBlock to there is now a placeholder field. See API Reference for App Canvas.
  • In benchling.aa_sequences.list, benchling.boxes.list, benchling.containers.list, benchling.custom_entities.list, benchling.dna_oligos.list, benchling.dna_sequences.list, benchling.locations.list, benchling.mixtures.list, benchling.molecules.list, benchling.nucleotide_alignments.list, benchling.plates.list, benchling.rna_oligos.list, benchling.rna_sequences.list there is now the option to filter by the created_at parameter.
  • In benchling.custom_notation.get there are now aliases. See API Reference.
  • In benchling_sdk.models.Molecule folder_id can now be None.
  • In benchling_sdk.modles.Entry there is now a day field that can be populated by benchling_sdk.model.EntryDay
  • In benchling_sdk.models.EntryTemplate there is now a day field that can be populated by benchling_sdk.model.EntryTemplateDay.

Removed

  • Requests have now been deprecated to benchling.legacy_requests. See API Reference.

Fixed

AsyncTask errors are now modeled correctly. Our public API specs were incorrectly specifying the payload shape returned from the GET /tasks endpoint. Specifically, in the case of a failed bulk task, the errors property on the payload will be a list of dicts. Previously, the spec claimed that the errors property would just be a single flat object. The spec now has a oneOf the old shape (dict) and the new (list of dicts).

General enhancements

  • Added support for Python 3.12 and 3.13
  • CSV file size limit increased from 15MB to 150MB
  • Automation output processors now work with file ID
  • Automation file transforms now work with File ID