bge-python-sdk 0.7.0__tar.gz → 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. bge-python-sdk-1.0.0/PKG-INFO +185 -0
  2. bge-python-sdk-1.0.0/bge_python_sdk.egg-info/PKG-INFO +185 -0
  3. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bge_python_sdk.egg-info/SOURCES.txt +2 -1
  4. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bge_python_sdk.egg-info/entry_points.txt +0 -1
  5. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/client.py +352 -330
  6. bge-python-sdk-1.0.0/bgesdk/constants.py +48 -0
  7. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/error.py +5 -1
  8. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/http.py +1 -1
  9. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/models.py +71 -7
  10. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/utils.py +19 -0
  11. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/version.py +1 -1
  12. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/setup.cfg +1 -1
  13. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_abundance.py +1 -1
  14. bge-python-sdk-1.0.0/tests/test_wgs.py +60 -0
  15. bge-python-sdk-0.7.0/PKG-INFO +0 -170
  16. bge-python-sdk-0.7.0/bge_python_sdk.egg-info/PKG-INFO +0 -170
  17. bge-python-sdk-0.7.0/bgesdk/constants.py +0 -28
  18. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/LICENSE +0 -0
  19. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/MANIFEST.in +0 -0
  20. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/README.md +0 -0
  21. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bge_python_sdk.egg-info/dependency_links.txt +0 -0
  22. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bge_python_sdk.egg-info/requires.txt +0 -0
  23. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bge_python_sdk.egg-info/top_level.txt +0 -0
  24. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/__init__.py +0 -0
  25. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/__main__.py +0 -0
  26. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/fs.py +0 -0
  27. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/__init__.py +0 -0
  28. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/command.py +0 -0
  29. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/__init__.py +0 -0
  30. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/__init__.py +0 -0
  31. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/__init__.py +0 -0
  32. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/aggregate_omics_data.py +0 -0
  33. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/applet_url.py +0 -0
  34. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/download.py +0 -0
  35. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/ferry_to_oss.py +0 -0
  36. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_data_items.py +0 -0
  37. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_externals.py +0 -0
  38. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_func_abundance.py +0 -0
  39. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_gene_abundance.py +0 -0
  40. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_overview.py +0 -0
  41. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_range_stream.py +0 -0
  42. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_samples.py +0 -0
  43. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_taxon_abundance.py +0 -0
  44. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_user.py +0 -0
  45. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/get_variants.py +0 -0
  46. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/id_meta.py +0 -0
  47. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/task.py +0 -0
  48. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/upload.py +0 -0
  49. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/api/commands/upload_dir.py +0 -0
  50. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/config.py +0 -0
  51. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/login.py +0 -0
  52. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/model.py +0 -0
  53. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/model_doc.py +0 -0
  54. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/token.py +0 -0
  55. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/commands/workon.py +0 -0
  56. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/constants.py +0 -0
  57. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/utils.py +0 -0
  58. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/bgesdk/management/validate.py +0 -0
  59. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/pytest.ini +0 -0
  60. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/requirements.txt +0 -0
  61. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/setup.py +0 -0
  62. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/__init__.py +0 -0
  63. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/conftest.py +0 -0
  64. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_fs.py +0 -0
  65. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_model.py +0 -0
  66. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_models.py +0 -0
  67. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_oauth2.py +0 -0
  68. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_phenotype.py +0 -0
  69. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_samples.py +0 -0
  70. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_user.py +0 -0
  71. {bge-python-sdk-0.7.0 → bge-python-sdk-1.0.0}/tests/test_variants.py +0 -0
@@ -0,0 +1,185 @@
1
+ Metadata-Version: 2.1
2
+ Name: bge-python-sdk
3
+ Version: 1.0.0
4
+ Summary: 可用于调用 BGE 开放平台的相关接口。
5
+ Home-page: https://github.com/teambge/bge-python-sdk
6
+ Author: leafcoder,xiangji1204
7
+ Author-email: leafcoder@gmail.com,xiangji1204@genomics.cn
8
+ Maintainer: leafcoder
9
+ Maintainer-email: leafcoder@gmail.com
10
+ License: MIT
11
+ Keywords: bge-python-sdk bge bgesdk sdk
12
+ Classifier: Development Status :: 5 - Production/Stable
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Natural Language :: Chinese (Simplified)
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Operating System :: Microsoft :: Windows :: Windows 10
18
+ Classifier: Operating System :: POSIX :: Linux
19
+ Classifier: Programming Language :: Python
20
+ Classifier: Programming Language :: Python :: 3
21
+ Classifier: Programming Language :: Python :: 3.6
22
+ Classifier: Programming Language :: Python :: 3.7
23
+ Classifier: Programming Language :: Python :: 3.8
24
+ Classifier: Programming Language :: Python :: 3.9
25
+ Classifier: Programming Language :: Python :: 3.10
26
+ Classifier: Programming Language :: Python :: 3.11
27
+ Classifier: Programming Language :: Python :: 3.12
28
+ Classifier: Programming Language :: Python :: 3.13
29
+ Classifier: Topic :: Software Development :: Libraries
30
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
31
+ Classifier: Topic :: Utilities
32
+ Requires-Python: >=3.6.3
33
+ Description-Content-Type: text/markdown
34
+ License-File: LICENSE
35
+ Requires-Dist: aliyun-python-sdk-core
36
+ Requires-Dist: six
37
+ Requires-Dist: certifi
38
+ Requires-Dist: chardet
39
+ Requires-Dist: idna
40
+ Requires-Dist: requests
41
+ Requires-Dist: urllib3
42
+ Requires-Dist: oss2
43
+ Requires-Dist: docker
44
+ Requires-Dist: pimento
45
+ Requires-Dist: qprompt
46
+ Requires-Dist: requests_toolbelt
47
+ Requires-Dist: validator.py
48
+ Requires-Dist: python-minifier
49
+ Requires-Dist: rich
50
+
51
+
52
+ <div align="center">
53
+
54
+ # BGE 开放平台 SDK - Python 版
55
+
56
+
57
+ <p>
58
+ <!-- Place this tag where you want the button to render. -->
59
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk/subscription" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Watch teambge/bge-python-sdk on GitHub">
60
+ <img alt="GitHub forks" src="https://img.shields.io/github/watchers/teambge/bge-python-sdk?style=social">
61
+ </a>
62
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Star teambge/bge-python-sdk on GitHub">
63
+ <img alt="GitHub forks" src="https://img.shields.io/github/stars/teambge/bge-python-sdk?style=social">
64
+ </a>
65
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk/fork" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Fork teambge/bge-python-sdk on GitHub">
66
+ <img alt="GitHub forks" src="https://img.shields.io/github/forks/teambge/bge-python-sdk?style=social">
67
+ </a>
68
+ </p>
69
+
70
+ <p>
71
+ <img src="https://img.shields.io/github/v/release/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/v/release/teambge/bge-python-sdk" alt="GitHub release (latest by date)">
72
+ <img src="https://img.shields.io/github/languages/top/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/languages/top/teambge/bge-python-sdk" alt="GitHub top language">
73
+ <img src="https://img.shields.io/github/languages/code-size/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/languages/code-size/teambge/bge-python-sdk" alt="GitHub code size in bytes">
74
+ <img src="https://img.shields.io/github/commit-activity/w/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/commit-activity/w/teambge/bge-python-sdk" alt="GitHub commit activity">
75
+ <img src="https://static.pepy.tech/personalized-badge/bge-python-sdk?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads" data-origin="https://static.pepy.tech/personalized-badge/bge-python-sdk?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads" alt="PyPI - Downloads">
76
+ </p>
77
+
78
+ <pre>
79
+ ____ ____________ ______ __________ ______ _ __ _____ ____ __ __
80
+ / __ )/ ____/ ____/ / __ \ \/ /_ __/ / / / __ \/ | / / / ___// __ \/ //_/
81
+ / __ / / __/ __/ / /_/ /\ / / / / /_/ / / / / |/ / \__ \/ / / / ,<
82
+ / /_/ / /_/ / /___ / ____/ / / / / / __ / /_/ / /| / ___/ / /_/ / /| |
83
+ /_____/\____/_____/ /_/ /_/ /_/ /_/ /_/\____/_/ |_/ /____/_____/_/ |_|
84
+ </pre>
85
+
86
+ </div>
87
+
88
+ BGE 开放平台 是一个跨越多级数据的(多)组学数据平台,开发者在获得用户授权后,将可以通过开放平台提供的 API 访问关联用户的(多)组学数据,甚至写入数据。
89
+
90
+ 基于开放平台 API,开发者可避免重复开发采样、提取、测序和生信分析等繁复的流程,直接使用清洁的结构化数据。
91
+
92
+ 开发者可以通过开放平台提供的 API 创建极具创意性的(多)组学应用,如:
93
+
94
+ * 包含药物代谢或药物服用建议的应用
95
+ * 包含体检数据和营养代谢基因的餐饮应用
96
+ * 包含肠道菌群数据和痛风相关基因的痛风管理应用
97
+ * 基于祖源成分的社交网络应用,等等
98
+
99
+ BGE 开放平台 API 基于 OAuth 2.0 开发,并使用 SSL/TLS 加密传输,确保用户数据正确无误地授权,并安全地传输到第三方应用,确保用户数据不会被未经授权的应用获得。
100
+
101
+ # 安装
102
+
103
+ 推荐使用 pip 进行安装。
104
+
105
+ ```shell
106
+ $ pip install -U bge-python-sdk
107
+ ```
108
+
109
+ 或者
110
+
111
+ ```shell
112
+ $ make install
113
+ ```
114
+
115
+ 再或者
116
+
117
+ ```shell
118
+ $ python setup.py install
119
+ ```
120
+
121
+ # SDK 文档
122
+
123
+ 更加详细的 SDK 文档请查看 [SDK Documents](https://api.bge.genomics.cn/doc/#/sdk/README)。
124
+
125
+ # 快速开始
126
+
127
+ BGE 开放平台支持 OAuth2 的两种模式,分别是用户授权模式、客户端模式。
128
+
129
+ 详情请参考开放平台文档 [https://api.bge.genomics.cn/doc](https://api.bge.genomics.cn/doc) 。
130
+
131
+ ## ENDPOINTS
132
+
133
+ BGE 开放平台提供了如下可用的 `endpoint`。
134
+
135
+ | endpoint | 解释 |
136
+ | --------------------------- | ----------------------------------------------------------- |
137
+ | https://api.bge.genomics.cn | **线上环境** 主域名地址 |
138
+ | https://api.bge.omgut.com | **线上环境** 副域名地址,主域名地址不可用时可替换此域名地址 |
139
+
140
+ ## 授权码模式
141
+
142
+ ```python
143
+ from bgesdk import OAuth2, API
144
+
145
+ code = '???????' # 用户确认授权后平台返回的授权码
146
+ client_id = 'demo'
147
+ client_secret = 'demo'
148
+ redirect_uri = 'http://test.cn'
149
+ oauth2 = OAuth2(
150
+ client_id, client_secret,
151
+ endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
152
+ verbose=False)
153
+ token = oauth2.exchange_authorization_code(code, redirect_uri)
154
+
155
+ api = oauth2.get_api(token.access_token)
156
+ print(api.get_user())
157
+
158
+ api = API(token.access_token)
159
+ print(api.get_user())
160
+ ```
161
+
162
+ ## 客户端模式
163
+
164
+ ```python
165
+ from bgesdk import OAuth2, API
166
+
167
+ client_id = 'demo'
168
+ client_secret = 'demo'
169
+ oauth2 = OAuth2(
170
+ client_id, client_secret,
171
+ endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
172
+ verbose=False)
173
+ token = oauth2.get_credentials_token()
174
+
175
+ api = oauth2.get_api(token.access_token)
176
+ print(api.get_variants('E-B1243433', 'rs333'))
177
+
178
+ api = API(token.access_token)
179
+ print(api.get_variants('E-B1243433', 'rs333'))
180
+ ```
181
+
182
+ # Contributors
183
+
184
+ * xiangji1204's [github](https://github.com/xiangji1204)
185
+ * leafcoder(leafcoder@gmail.com)'s [github](https://github.com/leafcoder)
@@ -0,0 +1,185 @@
1
+ Metadata-Version: 2.1
2
+ Name: bge-python-sdk
3
+ Version: 1.0.0
4
+ Summary: 可用于调用 BGE 开放平台的相关接口。
5
+ Home-page: https://github.com/teambge/bge-python-sdk
6
+ Author: leafcoder,xiangji1204
7
+ Author-email: leafcoder@gmail.com,xiangji1204@genomics.cn
8
+ Maintainer: leafcoder
9
+ Maintainer-email: leafcoder@gmail.com
10
+ License: MIT
11
+ Keywords: bge-python-sdk bge bgesdk sdk
12
+ Classifier: Development Status :: 5 - Production/Stable
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Natural Language :: Chinese (Simplified)
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Operating System :: Microsoft :: Windows :: Windows 10
18
+ Classifier: Operating System :: POSIX :: Linux
19
+ Classifier: Programming Language :: Python
20
+ Classifier: Programming Language :: Python :: 3
21
+ Classifier: Programming Language :: Python :: 3.6
22
+ Classifier: Programming Language :: Python :: 3.7
23
+ Classifier: Programming Language :: Python :: 3.8
24
+ Classifier: Programming Language :: Python :: 3.9
25
+ Classifier: Programming Language :: Python :: 3.10
26
+ Classifier: Programming Language :: Python :: 3.11
27
+ Classifier: Programming Language :: Python :: 3.12
28
+ Classifier: Programming Language :: Python :: 3.13
29
+ Classifier: Topic :: Software Development :: Libraries
30
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
31
+ Classifier: Topic :: Utilities
32
+ Requires-Python: >=3.6.3
33
+ Description-Content-Type: text/markdown
34
+ License-File: LICENSE
35
+ Requires-Dist: aliyun-python-sdk-core
36
+ Requires-Dist: six
37
+ Requires-Dist: certifi
38
+ Requires-Dist: chardet
39
+ Requires-Dist: idna
40
+ Requires-Dist: requests
41
+ Requires-Dist: urllib3
42
+ Requires-Dist: oss2
43
+ Requires-Dist: docker
44
+ Requires-Dist: pimento
45
+ Requires-Dist: qprompt
46
+ Requires-Dist: requests_toolbelt
47
+ Requires-Dist: validator.py
48
+ Requires-Dist: python-minifier
49
+ Requires-Dist: rich
50
+
51
+
52
+ <div align="center">
53
+
54
+ # BGE 开放平台 SDK - Python 版
55
+
56
+
57
+ <p>
58
+ <!-- Place this tag where you want the button to render. -->
59
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk/subscription" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Watch teambge/bge-python-sdk on GitHub">
60
+ <img alt="GitHub forks" src="https://img.shields.io/github/watchers/teambge/bge-python-sdk?style=social">
61
+ </a>
62
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Star teambge/bge-python-sdk on GitHub">
63
+ <img alt="GitHub forks" src="https://img.shields.io/github/stars/teambge/bge-python-sdk?style=social">
64
+ </a>
65
+ <a class="github-button" href="https://github.com/teambge/bge-python-sdk/fork" data-color-scheme="no-preference: light; light: light; dark: dark;" data-show-count="true" aria-label="Fork teambge/bge-python-sdk on GitHub">
66
+ <img alt="GitHub forks" src="https://img.shields.io/github/forks/teambge/bge-python-sdk?style=social">
67
+ </a>
68
+ </p>
69
+
70
+ <p>
71
+ <img src="https://img.shields.io/github/v/release/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/v/release/teambge/bge-python-sdk" alt="GitHub release (latest by date)">
72
+ <img src="https://img.shields.io/github/languages/top/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/languages/top/teambge/bge-python-sdk" alt="GitHub top language">
73
+ <img src="https://img.shields.io/github/languages/code-size/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/languages/code-size/teambge/bge-python-sdk" alt="GitHub code size in bytes">
74
+ <img src="https://img.shields.io/github/commit-activity/w/teambge/bge-python-sdk" data-origin="https://img.shields.io/github/commit-activity/w/teambge/bge-python-sdk" alt="GitHub commit activity">
75
+ <img src="https://static.pepy.tech/personalized-badge/bge-python-sdk?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads" data-origin="https://static.pepy.tech/personalized-badge/bge-python-sdk?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads" alt="PyPI - Downloads">
76
+ </p>
77
+
78
+ <pre>
79
+ ____ ____________ ______ __________ ______ _ __ _____ ____ __ __
80
+ / __ )/ ____/ ____/ / __ \ \/ /_ __/ / / / __ \/ | / / / ___// __ \/ //_/
81
+ / __ / / __/ __/ / /_/ /\ / / / / /_/ / / / / |/ / \__ \/ / / / ,<
82
+ / /_/ / /_/ / /___ / ____/ / / / / / __ / /_/ / /| / ___/ / /_/ / /| |
83
+ /_____/\____/_____/ /_/ /_/ /_/ /_/ /_/\____/_/ |_/ /____/_____/_/ |_|
84
+ </pre>
85
+
86
+ </div>
87
+
88
+ BGE 开放平台 是一个跨越多级数据的(多)组学数据平台,开发者在获得用户授权后,将可以通过开放平台提供的 API 访问关联用户的(多)组学数据,甚至写入数据。
89
+
90
+ 基于开放平台 API,开发者可避免重复开发采样、提取、测序和生信分析等繁复的流程,直接使用清洁的结构化数据。
91
+
92
+ 开发者可以通过开放平台提供的 API 创建极具创意性的(多)组学应用,如:
93
+
94
+ * 包含药物代谢或药物服用建议的应用
95
+ * 包含体检数据和营养代谢基因的餐饮应用
96
+ * 包含肠道菌群数据和痛风相关基因的痛风管理应用
97
+ * 基于祖源成分的社交网络应用,等等
98
+
99
+ BGE 开放平台 API 基于 OAuth 2.0 开发,并使用 SSL/TLS 加密传输,确保用户数据正确无误地授权,并安全地传输到第三方应用,确保用户数据不会被未经授权的应用获得。
100
+
101
+ # 安装
102
+
103
+ 推荐使用 pip 进行安装。
104
+
105
+ ```shell
106
+ $ pip install -U bge-python-sdk
107
+ ```
108
+
109
+ 或者
110
+
111
+ ```shell
112
+ $ make install
113
+ ```
114
+
115
+ 再或者
116
+
117
+ ```shell
118
+ $ python setup.py install
119
+ ```
120
+
121
+ # SDK 文档
122
+
123
+ 更加详细的 SDK 文档请查看 [SDK Documents](https://api.bge.genomics.cn/doc/#/sdk/README)。
124
+
125
+ # 快速开始
126
+
127
+ BGE 开放平台支持 OAuth2 的两种模式,分别是用户授权模式、客户端模式。
128
+
129
+ 详情请参考开放平台文档 [https://api.bge.genomics.cn/doc](https://api.bge.genomics.cn/doc) 。
130
+
131
+ ## ENDPOINTS
132
+
133
+ BGE 开放平台提供了如下可用的 `endpoint`。
134
+
135
+ | endpoint | 解释 |
136
+ | --------------------------- | ----------------------------------------------------------- |
137
+ | https://api.bge.genomics.cn | **线上环境** 主域名地址 |
138
+ | https://api.bge.omgut.com | **线上环境** 副域名地址,主域名地址不可用时可替换此域名地址 |
139
+
140
+ ## 授权码模式
141
+
142
+ ```python
143
+ from bgesdk import OAuth2, API
144
+
145
+ code = '???????' # 用户确认授权后平台返回的授权码
146
+ client_id = 'demo'
147
+ client_secret = 'demo'
148
+ redirect_uri = 'http://test.cn'
149
+ oauth2 = OAuth2(
150
+ client_id, client_secret,
151
+ endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
152
+ verbose=False)
153
+ token = oauth2.exchange_authorization_code(code, redirect_uri)
154
+
155
+ api = oauth2.get_api(token.access_token)
156
+ print(api.get_user())
157
+
158
+ api = API(token.access_token)
159
+ print(api.get_user())
160
+ ```
161
+
162
+ ## 客户端模式
163
+
164
+ ```python
165
+ from bgesdk import OAuth2, API
166
+
167
+ client_id = 'demo'
168
+ client_secret = 'demo'
169
+ oauth2 = OAuth2(
170
+ client_id, client_secret,
171
+ endpoint='https://api.bge.genomics.cn', max_retries=3, timeout=16,
172
+ verbose=False)
173
+ token = oauth2.get_credentials_token()
174
+
175
+ api = oauth2.get_api(token.access_token)
176
+ print(api.get_variants('E-B1243433', 'rs333'))
177
+
178
+ api = API(token.access_token)
179
+ print(api.get_variants('E-B1243433', 'rs333'))
180
+ ```
181
+
182
+ # Contributors
183
+
184
+ * xiangji1204's [github](https://github.com/xiangji1204)
185
+ * leafcoder(leafcoder@gmail.com)'s [github](https://github.com/leafcoder)
@@ -63,4 +63,5 @@ tests/test_oauth2.py
63
63
  tests/test_phenotype.py
64
64
  tests/test_samples.py
65
65
  tests/test_user.py
66
- tests/test_variants.py
66
+ tests/test_variants.py
67
+ tests/test_wgs.py
@@ -1,3 +1,2 @@
1
1
  [console_scripts]
2
2
  bge = bgesdk.__main__:main
3
-