BGE 开放平台 SDK - Python 版
____ ____________ ______ __________ ______ _ __ _____ ____ __ __ / __ )/ ____/ ____/ / __ \ \/ /_ __/ / / / __ \/ | / / / ___// __ \/ //_/ / __ / / __/ __/ / /_/ /\ / / / / /_/ / / / / |/ / \__ \/ / / / ,< / /_/ / /_/ / /___ / ____/ / / / / / __ / /_/ / /| / ___/ / /_/ / /| | /_____/\____/_____/ /_/ /_/ /_/ /_/ /_/\____/_/ |_/ /____/_____/_/ |_|
BGE 开放平台 是一个跨越多级数据的(多)组学数据平台,开发者在获得用户授权后,将可以通过开放平台提供的 API 访问关联用户的(多)组学数据,甚至写入数据。
基于开放平台 API,开发者可避免重复开发采样、提取、测序和生信分析等繁复的流程,直接使用清洁的结构化数据。
开发者可以通过开放平台提供的 API 创建极具创意性的(多)组学应用,如:
- 包含药物代谢或药物服用建议的应用
- 包含体检数据和营养代谢基因的餐饮应用
- 包含肠道菌群数据和痛风相关基因的痛风管理应用
- 基于祖源成分的社交网络应用,等等
BGE 开放平台 API 基于 OAuth 2.0 开发,并使用 SSL/TLS 加密传输,确保用户数据正确无误地授权,并安全地传输到第三方应用,确保用户数据不会被未经授权的应用获得。
安装
推荐使用 pip 进行安装。
$ pip install -U bge-python-sdk
或者
$ make install
再或者
$ pip install .
SDK 文档
更加详细的 SDK 文档请查看 SDK Documents。
快速开始
BGE 开放平台支持 OAuth2 的两种模式,分别是用户授权模式、客户端模式。
详情请参考开放平台文档 https://api.bge.genomics.cn/doc 。
ENDPOINTS
BGE 开放平台提供了如下可用的 endpoint。
| endpoint | 解释 |
|---|---|
| https://api.bge.genomics.cn | 线上环境 主域名地址 |
| https://api.bge.omgut.com | 线上环境 副域名地址,主域名地址不可用时可替换此域名地址 |
授权码模式
from bgesdk import OAuth2, API
code = '???????' # 用户确认授权后平台返回的授权码
client_id = 'demo'
client_secret = 'demo'
redirect_uri = 'http://test.cn'
oauth2 = OAuth2(
client_id, client_secret,
endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
verbose=False)
token = oauth2.exchange_authorization_code(code, redirect_uri)
api = oauth2.get_api(token.access_token)
print(api.get_user())
api = API(token.access_token)
print(api.get_user())
客户端模式
from bgesdk import OAuth2, API
client_id = 'demo'
client_secret = 'demo'
oauth2 = OAuth2(
client_id, client_secret,
endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
verbose=False)
token = oauth2.get_credentials_token()
api = oauth2.get_api(token.access_token)
print(api.get_variants('E-B1243433', 'rs333'))
api = API(token.access_token)
print(api.get_variants('E-B1243433', 'rs333'))
Contributors
- xiangji1204's github
- leafcoder(leafcoder@gmail.com)'s github
Metadata
Release files for bge-python-sdk 2.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| bge_python_sdk-2.0.0.tar.gz | 101.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bge_python_sdk-2.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 245.3 kB
Release files / bge_python_sdk-2.0.0.tar.gz
| Download URL | bge_python_sdk-2.0.0.tar.gz |
|---|---|
| Size | 101.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8e4d31cdef743da2d502ae728f468a8d7db732497b0af71d6c7851970b5d9d7a
|
|
BLAKE2b-256 checksum How to use checksums |
5a996ebde8a2d60a3dc6e537876bc48486fc7c94d7ebbfdc36502be9bcc6d94c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.12
|
Release files / bge_python_sdk-2.0.0-py3-none-any.whl
| Download URL | bge_python_sdk-2.0.0-py3-none-any.whl |
|---|---|
| Size | 144.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2f8e081fea7648e922cbec6ba0bc7f83b07bcabe679881ded1ac34601b3c7bca
|
|
BLAKE2b-256 checksum How to use checksums |
b6599ea4d126906144c4afc9e14af1f223040cc1af0f0549a1d8c7b333e1f995
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.12
|
Security for bge-python-sdk 2.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.