GET /v2/token/generate 获取业务 token。然后,在之后每个需要认证的请求中,通过 X-BH-TOKEN 请求头发送该 token。API key 本身绝不能放在 X-BH-TOKEN 中。
切勿在任何请求头或参数中发送 API secret。它只保存在你的服务器上,仅用于计算 token 请求的
signature 查询参数。
开始之前
获取 token 之前,你需要满足以下全部三个条件:- 已开通 API 访问。 VelaFi 必须为你的账户开通 API 访问权限。在开通之前,token 请求会以错误码
-5033失败。 - API key 和 API secret。 在 VelaFi 控制台的 API Management 页面创建。参见创建 API Key。
- 为 key 配置 IP 白名单。 未配置任何白名单 IP 地址的 key 无法获取 token(错误码
-1023)。请添加将要调用 API 的服务器的公网 IP 地址。
第 1 步 — 获取 Token
使用 API secret 对字符串timestamp=<ms> 进行签名(HMAC-SHA256,小写十六进制),然后在 X-BH-APIKEY 请求头中携带 API key 调用 GET /v2/token/generate:
第 2 步 — 发送 Token
在每个需要认证的请求中,将 token 放入X-BH-TOKEN 请求头:
Token 有效期
每个 token 都会过期。token 响应中的expireTime 字段是以毫秒为单位的 Unix 时间戳形式的过期时间。请在该时间之前申请新的 token。使用已过期或未知 token 的请求会以错误码 -1022 失败。
认证错误
认证失败时返回 HTTP 状态码400。响应体中的 code 字段为负数,用于标识具体问题:
沙盒环境与生产环境密钥
- 沙盒环境
- 生产环境
在开发和 QA 阶段,将沙盒密钥与测试 base URL 搭配使用:沙盒环境中的交易不会转移真实资金。你可以放心地使用它来探索 API、测试边界情况,并在上线前端到端验证你的集成。
安全最佳实践
遵循以下实践来保护你的 API key,并在发生泄露时尽量降低风险。切勿在客户端代码中暴露密钥
切勿在客户端代码中暴露密钥
API key、API secret 和 token 只能在服务端代码中使用。不要将它们嵌入浏览器 JavaScript、移动应用二进制文件、公开代码仓库或任何终端用户可访问的环境中。请使用环境变量或密钥管理服务(例如 AWS Secrets Manager、HashiCorp Vault 或 GCP Secret Manager)在运行时注入密钥。
定期轮换密钥
定期轮换密钥
制定密钥轮换策略(例如每 90 天一次),即使你没有理由怀疑密钥已泄露。在 API Management 页面创建新密钥,为其添加 IP 白名单,将系统切换到新密钥,然后删除旧密钥。
配置 IP 白名单
配置 IP 白名单
IP 白名单是必需的。未配置白名单的 key 无法获取 token(错误码
-1023)。来自不在白名单中的 IP 地址的 token 请求会以错误码 -2015 失败,来自此类地址的 API 调用会以错误码 -2019 失败。请将白名单限制为调用 API 的服务器。要进行设置,请在 VelaFi 控制台中打开 API Management,然后在对应的 key 上选择 Whitelist。每个 key 最多可添加 5 个 IPv4 或 IPv6 地址。请逐个输入地址;不支持 CIDR 网段。监控异常使用
监控异常使用
记录系统发出的每个 token 请求和 API 调用,并对非预期的调用发出告警。如果发现可疑活动,请在 API Management 页面删除该 key,创建新的 key,并联系 VelaFi 支持团队。

