[ PROMPT_NODE_27462 ]
string_reference
[ SKILL_DOCUMENTATION ]
# STRING 数据库 API 参考
## 概述
STRING (用于检索相互作用基因/蛋白质的搜索工具) 是一个综合性的已知和预测蛋白质-蛋白质相互作用数据库,整合了来自 40 多个来源的数据。
**数据库统计 (v12.0+):**
- 覆盖范围: 5000+ 基因组
- 蛋白质: ~5930 万
- 相互作用: 200 亿+
- 数据类型: 物理相互作用、功能关联、共表达、共现、文本挖掘、数据库
**核心数据资源:** 由全球生物数据联盟 (Global Biodata Coalition) 和 ELIXIR 指定
## API 基础 URL
- **当前版本**: https://string-db.org/api
- **特定版本**: https://version-12-0.string-db.org/api (用于可重复性)
- **API 文档**: https://string-db.org/help/api/
## 最佳实践
1. **标识符映射**: 始终先使用 `get_string_ids` 映射标识符,以加快后续查询速度
2. **使用 STRING ID**: 优先使用 STRING 标识符(例如 `9606.ENSP00000269305`)而非基因名称
3. **指定物种**: 对于超过 10 个蛋白质的网络,务必指定 NCBI 分类 ID
4. **速率限制**: API 调用之间等待 1 秒,以避免服务器过载
5. **版本化 URL**: 使用特定版本的 URL 进行可重复研究
6. **POST 优于 GET**: 对于大型蛋白质列表,请使用 POST 请求
7. **调用者身份**: 包含 `caller_identity` 参数以进行跟踪(例如,您的应用程序名称)
## API 方法
### 1. 标识符映射 (`get_string_ids`)
**目的**: 将常用蛋白质名称、基因符号、UniProt ID 和其他标识符映射到 STRING 标识符。
**端点**: `/api/tsv/get_string_ids`
**参数**:
- `identifiers` (必需): 以换行符 (`%0d`) 分隔的蛋白质名称/ID
- `species` (必需): NCBI 分类 ID
- `limit`: 每个标识符的匹配数量(默认: 1)
- `echo_query`: 在输出中包含查询词 (1 或 0)
- `caller_identity`: 应用程序标识符
**输出格式**: TSV,包含以下列:
- `queryItem`: 原始查询
- `queryIndex`: 查询位置
- `stringId`: STRING 标识符
- `ncbiTaxonId`: 物种分类 ID
- `taxonName`: 物种名称
- `preferredName`: 首选基因名称
- `annotation`: 蛋白质描述
**示例**:
identifiers=TP53%0dBRCA1&species=9606&limit=1
**用例**:
- 将基因符号转换为 STRING ID
- 验证蛋白质标识符
- 查找规范蛋白质名称
### 2. 网络数据 (`network`)
**目的**: 以表格格式检索蛋白质-蛋白质相互作用网络数据。
**端点**: `/api/tsv/network`