用途:面向 Benchling 平台的集成开发,覆盖注册表实体、序列导入、库存容器、ELN 条目、工作流任务、Apps、事件驱动集成与仓库分析。
主要能力:通过官方 Python SDK 与 REST API 读写 Benchling 数据;支持 OAuth 应用凭证(后台集成)与委托授权(代表个人用户);支持 DNA 序列创建与列表、容器库存审计、按 schema 导出序列、工作流任务创建与更新、异步状态轮询、重试与分页处理。
使用方式:安装 uv pip install "benchling-sdk==1.25.0"。用 Benchling(url=..., auth_method=ClientCredentialsOAuth2(...)) 初始化,凭证来自环境变量 BENCHLING_TENANT_URL、BENCHLING_CLIENT_ID、BENCHLING_CLIENT_SECRET,token_url 为 {tenant_url}/oauth/token。序列化字段用 benchling_sdk.helpers.serialization_helpers,输入形如 {"field_name": {"value": value}}。DNA 更新用 dna_sequence_id,工作流更新用 workflow_task_id,任务创建需 workflow_task_group_id。条目方法为 create_entry、get_entry_by_id、list_entries、update_entry。list() 返回分页,需迭代两层;estimated_count 是属性,可能抛 NotImplementedError。移动试管用 ContainerUpdate(parent_storage_id=...),物料转移是独立操作。创建时注册需 registry_id 加 entity_registry_id 或 naming_strategy。
适用场景:FASTA 序列批量导入(需另装 biopython)、按位置审计库存、按 schema 导出序列为 CSV、工作流任务与事件集成、仓库分析查询。
限制:示例针对已发布的 benchling-sdk 1.25.0 与稳定 v2 模型;新开发推荐 V3,但 V3 仍存在端点级早期访问,迁移前需确认租户的 V3 可用性与稳定性,v2 示例不可机械改写为 V3。租户相关示例仅为说明,未执行认证请求、变更、AWS 部署或仓库连接。合法 Python 模型不代表生物学正确或满足租户必填字段。v2 无文档化的 users/me 路由或 SDK users.get_me()。空页是有效的连通性结果,但不代表可访问全部项目。ancestor_storage_id 含后代,仅取直接子级需另查。具体收费、价格与平台支持暂未提供。