目录导读
- 欧易API接口申请前置准备
- 欧易交易所官网API密钥创建全流程
- Postman环境配置与请求构建
- 实战案例:用Postman测试欧易API密钥
- 常见错误排查与问答集锦
- 安全须知与最佳实践
欧易API接口申请前置准备
在开始申请欧易(OKX)API接口之前,你需要完成以下基础工作:

- 注册欧易交易所账户:若尚未注册,请前往欧易交易所下载完成注册并完成身份认证(KYC)。
- 确保账户安全:建议开启二次验证(2FA),并提前绑定手机和邮箱。
- 明确API用途:是用于量化交易、行情监控,还是个人数据同步?不同用途对应不同权限设置。
小贴士:欧易API接口分为“公共接口”和“私有接口”,公共接口无需密钥即可获取行情数据;私有接口(如交易、提币)必须使用API密钥。
欧易交易所官网API密钥创建全流程
1 登录并进入API管理页面
2 设置权限与IP白名单
- 权限选择:根据需求勾选“读取权限”“交易权限”“提币权限”。
- 注意:提币权限需谨慎授予,仅建议在可信环境使用。
- IP白名单:强烈建议绑定固定的服务器IP,若使用动态IP(如家用网络),可暂时留空,但后续需及时更新。
- 备注名称:建议填写用途标记,如“test-postman”。
3 完成安全验证
输入资金密码、短信/邮箱验证码或谷歌验证码后,即可生成API密钥,系统会一次显示:
- API Key(公钥,用于标识身份)
- Secret Key(私钥,请立即复制保存,关闭页面后无法再次查看)
- Passphrase(密码短语,签名请求时必填)
警告:切勿将Secret Key和Passphrase以明文形式存储于公开代码库或截图中。
Postman环境配置与请求构建
1 安装并启动Postman
从官网下载Postman桌面版,注册后进入工作区。
2 设置环境变量(推荐)
创建变量提高开发效率:
- 新建环境,添加变量:
api_key、secret_key、passphrase、base_url(默认值为https://www.okx.com)。 - 为后续请求自动填充参数。
3 构建签名请求(关键步骤)
欧易API采用HMAC-SHA256签名验证,在Postman的“Pre-request Script”中输入以下JavaScript代码:
const timestamp = new Date().toISOString().slice(0, 19) + 'Z';
const method = request.method.toUpperCase();
const path = request.url.replace(pm.variables.get('base_url'), '');
const body = request.data ? JSON.stringify(request.data) : '';
const signString = timestamp + method + path + body;
const signature = CryptoJS.HmacSHA256(signString, pm.variables.get('secret_key')).toString(CryptoJS.enc.Base64);
pm.variables.set('timestamp', timestamp);
pm.variables.set('signature', signature);
注意:需在Postman中预先安装CryptoJS库(通过“Manage Libraries”导入)。
4 配置Header请求头
在请求头中添加:
OK-ACCESS-KEY:{{api_key}}OK-ACCESS-SIGN:{{signature}}OK-ACCESS-TIMESTAMP:{{timestamp}}OK-ACCESS-PASSPHRASE:{{passphrase}}
实战案例:用Postman测试欧易API密钥
案例1:获取账户余额(GET请求)
- URL:
{{base_url}}/api/v5/account/balance - 方法:GET
- 脚本:自动生成签名后,发送请求。
- 预期结果:返回JSON格式的账户余额数据(如BTC、ETH等持仓)。
案例2:查询历史订单(带参数)
- URL:
{{base_url}}/api/v5/trade/orders-history - 参数(Params):
instId:BTC-USDT(交易对)state:filled(已完成订单)
- 方法:GET
案例3:市价买入(POST请求)
使用Postman的Body → “raw” → JSON格式:
{
"instId": "BTC-USDT",
"tdMode": "cash",
"side": "buy",
"ordType": "market",
"sz": "100" // 买入数量(USDT计)
}
安全提示:测试时建议使用模拟交易接口(若欧易提供Sandbox环境)或极小金额。
常见错误排查与问答集锦
Q1:返回“signature mismatch”如何处理?
- 原因:签名顺序错误或Secret Key未正确使用。
- 解决:检查Pre-request Script中的时间戳格式、请求体是否为空,以及Base64编码方式。
Q2:提示“IP not allowed”怎么办?
- 原因:API密钥绑定了IP白名单,而当前请求IP不在列表内。
- 解决:登录欧易官网,在API管理页面更新IP白名单,添加当前公网IP。
Q3:Postman报错“Could not get any response”?
- 检查网络代理设置;
- 确保URL路径正确(如使用
/api/v5而非旧版/api/v1)。
Q4:如何批量测试多个API端点?
- 创建Postman集合(Collection),编写对应的请求并添加参数化变量。
Q5:测试时是否需要使用Sandbox环境?
- 若欧易提供测试网(Testnet),强烈建议先在其中测试,正式API操作具有真实资金风险。
安全须知与最佳实践
- 密钥加密存储:建议使用密码管理器(如1Password、Bitwarden)保管Secret Key。
- 最小权限原则:仅开通当前业务必需权限,仅需行情数据则只开启“读取”权限。
- 定期轮换:每3-6个月重新生成API密钥,并删除旧密钥。
- 审计日志:定期检查欧易官网的API使用日志,留意异常请求。
- 避免硬编码:若在代码中使用API,建议通过环境变量或配置文件加载。
通过本教程,你已掌握从申请欧易API密钥到使用Postman进行测试的全流程,如需进一步研究,可结合欧易官方API文档(https://www.okx.com/docs-v5)深入学习。