[ PROMPT_NODE_26236 ]
benchling-integration
[ SKILL_DOCUMENTATION ]
# Benchling 集成
## 概述
Benchling 是一个用于生命科学研发的云平台。通过 Python SDK 和 REST API 以编程方式访问注册表实体(DNA、蛋白质)、库存、电子实验记录本和工作流。
## 何时使用此技能
当需要执行以下操作时使用此技能:
- 使用 Benchling 的 Python SDK 或 REST API
- 管理生物序列(DNA、RNA、蛋白质)和注册表实体
- 自动化库存操作(样本、容器、位置、转移)
- 创建或查询电子实验记录本条目
- 构建工作流自动化或 Benchling 应用
- 在 Benchling 与外部系统之间同步数据
- 查询 Benchling 数据仓库进行分析
- 设置基于 AWS EventBridge 的事件驱动集成
## 核心能力
### 1. 认证与设置
**Python SDK 安装:**
python
# 稳定版本
uv pip install benchling-sdk
# 或使用 Poetry
poetry add benchling-sdk
**认证方法:**
API 密钥认证(推荐用于脚本):
python
from benchling_sdk.benchling import Benchling
from benchling_sdk.auth.api_key_auth import ApiKeyAuth
benchling = Benchling(
url="https://your-tenant.benchling.com",
auth_method=ApiKeyAuth("your_api_key")
)
OAuth 客户端凭据(用于应用):
python
from benchling_sdk.auth.client_credentials_oauth2 import ClientCredentialsOAuth2
auth_method = ClientCredentialsOAuth2(
client_id="your_client_id",
client_secret="your_client_secret"
)
benchling = Benchling(
url="https://your-tenant.benchling.com",
auth_method=auth_method
)
**关键点:**
- API 密钥可从 Benchling 的个人资料设置中获取
- 安全存储凭据(使用环境变量或密码管理器)
- 所有 API 请求均需使用 HTTPS
- 认证权限与用户在 UI 中的权限一致
有关包括 OIDC 和安全最佳实践在内的详细认证信息,请参考 `references/authentication.md`。
### 2. 注册表与实体管理
注册表实体包括 DNA 序列、RNA 序列、氨基酸序列、自定义实体和混合物。SDK 提供了用于创建和管理这些实体的类型化类。
**创建 DNA 序列:**
python
from benchling_sdk.models import DnaSequenceCreate
sequence = benchling.dna_sequences.create(
DnaSequenceCreate(
name="My Plasmid",
bases="ATCGATCG",
is_circular=True,
folder_id="fld_abc123",
schema_id="ts_abc123", # option