[ PROMPT_NODE_26670 ]
Gwas Database API 参考
[ SKILL_DOCUMENTATION ]
# GWAS 目录 API 参考
GWAS 目录 REST API 的综合参考,包括端点规范、查询参数、响应格式和高级使用模式。
## 目录
- [API 概述](#api-概述)
- [身份验证和速率限制](#身份验证和速率限制)
- [GWAS 目录 REST API](#gwas-目录-rest-api)
- [汇总统计 API](#汇总-统计-api)
- [响应格式](#响应格式)
- [错误处理](#错误处理)
- [高级查询模式](#高级-查询模式)
- [集成示例](#集成-示例)
## API 概述
GWAS 目录提供两个互补的 REST API:
1. **GWAS 目录 REST API**:访问精选的 SNP-性状关联、研究和元数据
2. **汇总统计 API**:访问完整的 GWAS 汇总统计数据(所有测试的变异)
两个 API 都使用 RESTful 设计原则,并以 HAL(超文本应用语言)格式返回 JSON 响应,其中包含用于资源导航的 `_links`。
### 基础 URL
GWAS 目录 API: https://www.ebi.ac.uk/gwas/rest/api
汇总统计 API: https://www.ebi.ac.uk/gwas/summary-statistics/api
### 版本信息
GWAS 目录 REST API v2.0 于 2024 年发布,具有重大改进:
- 新端点(出版物、基因、基因组背景、祖先)
- 增强的数据暴露(队列、背景性状、许可证)
- 改进的查询能力
- 更好的性能和文档
旧版 API 将保留至 2026 年 5 月以实现向后兼容。
## 身份验证和速率限制
### 身份验证
**无需身份验证** - 两个 API 均为开放访问,不需要 API 密钥或注册。
### 速率限制
虽然没有记录明确的速率限制,但请遵循最佳实践:
- 在连续请求之间实施延迟(例如 0.1-0.5 秒)
- 对大型结果集使用分页
- 在本地缓存响应
- 对全基因组数据使用批量下载 (FTP)
- 避免使用快速连续的请求轰炸 API
**带速率限制的示例:**
python
import requests
from time import sleep
def query_with_rate_limit(url, delay=0.1):
response = requests.get(url)
sleep(delay)
return response.json()
## GWAS 目录 REST API
主 API 提供对精选 GWAS 关联、研究、变异和性状的访问。
### 核心端点
#### 1. 研究 (Studies)
**获取所有研究:**
GET /studies
**获取特定研究:**
GET