跳到主要内容

API 密钥配置

默认情况下,初始化和使用核心服务不需要授权。但是,大多数数据提供商需要 API 密钥才能访问其数据。密钥可以存储在本地,也可以安全地保存到您的 OpenBB Hub 账户以便远程访问。

OpenBB Hub

信息

OpenBB Hub 仅可通过 Python 接口访问。对于 REST API,请将凭据和偏好设置存储在部署本地user_settings.json 文件中。

数据提供商凭据和用户偏好设置可以安全地存储在 OpenBB Hub 上,并在 Python 中使用可撤销的个人访问令牌 (PAT) 进行访问。登录到 Hub 来管理这种远程授权方法。

OpenBB Hub 是在临时 Python 环境(如 Google Colab)中访问数据的便捷解决方案(示例笔记本)。登录方式:

from openbb import obb

# 使用个人访问令牌登录
obb.account.login(pat="my_pat", remember_me=True)

# 或者,使用邮箱和密码登录
obb.account.login(email="my_email", password="my_password", remember_me=True)

# 更改凭据
obb.user.credentials.polygon_api_key = "my_api_key"

# 将账户更改保存到 Hub
obb.account.save()

# 使用最新更改刷新账户
obb.account.refresh()

# 登出
obb.account.logout()

remember_me 设置为 False 以在会话结束时丢弃所有凭据。

提示

使用 remember_me=True 时,凭据将永久存储在环境中。 在部署 API 服务器之前包装此序列是为远程访问授权数据提供商的一种(不安全)方法。

本地环境

凭据和用户偏好设置存储在本地 ~/.openbb_platform/ 目录下的 JSON 文件 user_settings.json 中。它在初始化 Python 客户端或 Fast API 授权时被读取。如果文件不存在,将在首次运行时创建。以下架构可以复制/粘贴作为模板:

{
"credentials": {
"fmp_api_key": "REPLACE",
"polygon_api_key": "REPLACE",
"benzinga_api_key": "REPLACE",
"fred_api_key": "REPLACE",
"nasdaq_api_key": "REPLACE",
"intrinio_api_key": "REPLACE",
"alpha_vantage_api_key": "REPLACE",
"biztoc_api_key": "REPLACE",
"tradier_api_key": "REPLACE",
"tradier_account_type": "sandbox OR live",
"tradingeconomics_api_key": "REPLACE",
"tiingo_token": "REPLACE"
}
}

要从 Python 客户端为当前会话设置密钥,请访问 Credentials 类:

obb.user.credentials.intrinio_api_key = "my_api_key"
信息

有关通过 user_settings.json 配置安装的更多信息,请参阅环境变量系统设置

有关当前数据提供商扩展列表,请参阅扩展