API
Last updated
Last updated
为了支持应用系统层面的集成,Safeheron 提供丰富的 API 接口。
从功能来说,通过 API,您几乎可以享有 Safeheron 提供的所有核心功能,比如:管理钱包、发起交易、交易查询等等,配合您的 API Co-Signer 还可以完成交易自动化审核、签名等。
从应用场景来说,除交易外,通过 API 还可以完成诸如 DeFi、DEX、GameFi 等合约交互、合约 Owner 权限管理、 Token Mint 权限管理、Web3 各类场景的数据签名等等业务应用场景。
具有API 管理
权限的用户登录 Safeheron Web 控制台,前往「设置」➡ 「API 账户管理」进行 API 账户(即 API Key)创建。
API 账户创建成功后,可以使用 API Key 来访问 Safeheron API,具体如下图所示。
1. 使用 OpenSSL 生成 RSA 私钥(api_private.pem
为您的 API RSA 私钥 ):
openssl genpkey -out api_private.pem -algorithm RSA -pkeyopt rsa_keygen_bits:4096
2. 使用 OpenSSL 生成 RSA 私钥对应的公钥(api_public.pem
为您的 API RSA 公钥):
openssl rsa -in api_private.pem -out api_public.pem -pubout
3. 前往 Safeheron Web 控制台,「管理」 ➡「API」,点击「创建 API Key」
提示:如何导入 RSA 公钥呢?
有 2 种方式:
1. 复制+粘贴,但需要去掉头部信息
2. 上传 RSA 公钥文件,系统自动去除头部信息
当客户需要调用 API 时, 需要把调用 API 的主机公网 IP 地址添加到白名单, 否则 Safeheron 服务网关将拒绝API请求。
当客户需要使用 API Co-Signer 时,需要把 API Co-Signer 所在的宿主机公网 IP 地址添加到白名单。
我们提供 Java/js/golang/python 四种语言的 API SDK:
Java:https://github.com/Safeheron/safeheron-api-sdk-java
JavaScript & TypeScript:https://github.com/Safeheron/safeheron-api-sdk-js
Golang:https://github.com/Safeheron/safeheron-api-sdk-go
Python: https://github.com/Safeheron/safeheron-api-sdk-python
为了保证 Safeheron API 安全,我们做了以下几点:
Safeheron 为 API 账号设计了一组权限,您在开通 API 账号时,请遵循最小权限原则。
具有API 管理
权限的团队成员方可对 API 进行配置或者变更,并且任何变更都需通过团队批准方可生效。
采用 IP 白名单机制并与 CDN 供应商集成,避免访问来源 IP 伪造,保证访问来源安全,另外,数据加密和签名方案确保数据在传输过程中不会被截获与篡改,保证数据传输安全。
Safeheron 支持针对 API 账号配置审批策略,用来控制 API 账号发起的交易将如何审批。
📝 请注意:
真正的安全需要 Safeheron 与您的共同参与,请妥善保管好 API 账号相关的敏感数据,比如:API Key、您的公私钥、Safeheron 平台公钥。