目录导读
- 欧易API接口申请前置准备
- 欧易API密钥生成完整步骤
- Postman环境配置与请求头设置
- 实战:用Postman测试欧易API接口
- 常见问题与问答(Q&A)
欧易API接口申请前置准备
在使用欧易交易所的API进行量化交易或数据查询前,开发者需完成以下准备工作:

- 注册欧易账户:访问欧易官网完成实名认证(KYC一级认证即可申请API)。
- 开启双重验证(2FA):API管理模块强制要求谷歌验证器绑定,确保账户安全。
- 明确API使用场景:欧易提供“读取”“交易”“提现”三类权限,建议按需授予,避免过度授权,若您只是测试行情数据,仅勾选“读取”即可。
注意:生成API密钥后,
apiKey和secretKey仅显示一次,请务必保存至安全本地环境,切勿明文上传至公开代码仓库。
欧易API密钥生成完整步骤
- 登录欧易账户,点击右上角头像 →“账户”→“API管理”。
- 点击“新建API”,输入备注名称(如“Postman测试”)。
- 权限勾选:测试阶段仅勾选“读取”(如需交易模拟,可选“交易”权限并绑定IP白名单)。
- 生成密钥:系统返回
apiKey与secretKey,此时可同时下载passphrase(访问口令),此三项为后续调用接口的核心凭证。 - IP白名单配置:为降低风险,建议将您本机公网IP或Postman所在服务器IP加入白名单,若为动态IP,可临时设置为
0.0.0/0(不推荐生产环境)。
Postman环境配置与请求头设置
Postman是测试HTTP接口的利器,以下为配置欧易API的具体操作:
新建环境变量
- 点击右上角“Environment”,创建新环境(如“OE_TEST”)。
- 添加变量:
baseUrl:https://www.okx.com(欧易主API地址)apiKey:粘贴您生成的apiKeysecretKey:粘贴secretKeypassphrase:粘贴访问口令
配置请求头(Headers)
欧易API需携带签名认证,请求头必须包含以下字段:
| 参数名 | 说明 | 示例值 |
|---|---|---|
OK-ACCESS-KEY |
API Key | {{apiKey}} |
OK-ACCESS-SIGN |
签名(需动态生成) | 见下文 |
OK-ACCESS-TIMESTAMP |
ISO8601格式UTC时间戳 | 2025-01-15T10:00:00.123Z |
OK-ACCESS-PASSPHRASE |
访问口令 | {{passphrase}} |
签名生成方法(Pre-request Script)
欧易要求对请求参数进行HMAC-SHA256加密,在Postman“Pre-request Script”中添加以下JavaScript代码:
// 获取当前时间戳
const timestamp = new Date().toISOString().slice(0, 19) + 'Z';
// 获取请求方法、路径和请求体
const method = request.method;
const path = request.url.replace(pm.environment.get('baseUrl'), '');
const body = request.data ? JSON.stringify(request.data) : '';
// 生成待签名字符串
const signString = timestamp + method + path + body;
// 使用secretKey进行HMAC-SHA256签名
const CryptoJS = require('crypto-js');
const signature = CryptoJS.HmacSHA256(signString, pm.environment.get('secretKey')).toString(CryptoJS.enc.Base64);
// 设置环境变量
pm.environment.set('timestamp', timestamp);
pm.environment.set('signature', signature);
然后在请求头中引用:OK-ACCESS-SIGN: {{signature}}、OK-ACCESS-TIMESTAMP: {{timestamp}}。
实战:用Postman测试欧易API接口
以获取BTC/USDT当前行情为例:
接口信息
- 请求方法:GET
- URL:
{{baseUrl}}/api/v5/market/ticker?instId=BTC-USDT - 权限需求:读取
操作步骤
- 在Postman中新建GET请求,粘贴上述URL。
- 确保Headers已包含所有认证字段(除
OK-ACCESS-SIGN和OK-ACCESS-TIMESTAMP由脚本自动填充)。 - 点击“Send”,若返回如下JSON数据表示成功:
{
"code": "0",
"data": [
{
"instId": "BTC-USDT",
"last": "65230.1",
"vol24h": "123456",
...
}
]
}
常见错误排查
- 401 Unauthorized:检查时间戳是否正确(要求服务器时间误差≤5秒),或签名生成算法有误。
- 403 Forbidden:IP不在白名单内,请至欧易API管理页面添加白名单。
- 400 Bad Request:检查请求参数格式,如
instId大小写或缺失必填字段。
常见问题与问答(Q&A)
Q1:为什么我生成的签名总是校验失败?
A:请确认三点:① 时间戳必须精确到毫秒且为UTC格式;② 签名使用的secretKey是否与API管理页面一致;③ 请求体若为空,则签名字符串的body部分为而非(空字符串),建议使用Postman的Pre-request Script自动生成,避免手动误差。
Q2:欧易API的接口频率限制是多少?
A:欧易对API请求有分级限制,普通用户WebSocket订阅为30次/秒,REST API为10次/秒,如需高频交易,建议申请VIP权限并将oe-okor.com.cn绑定为默认API域名,可适当提升配额。
Q3:API密钥泄露后如何紧急处理? A:立即登录欧易API管理页面,点击“删除”对应密钥,同时检查账户交易记录及API调用日志,若未开启提现权限且配置了IP白名单,风险已大幅降低,建议定期轮换密钥,并开启二次验证。
Q4:测试环境能否使用模拟盘API?
A:欧易提供模拟交易环境(Demo),需在API管理页面单独申请模拟盘密钥,模拟盘API域名与正式环境不同,请在Postman环境变量中切换baseUrl为模拟盘地址,注意,部分行情接口在模拟盘可能返回固定数据。
Q5:除了Postman,还有哪些工具适合欧易API测试?
A:常用工具包括cURL(命令行调试)、Swagger UI(可视化文档)、TradingView(绑定行情数据)等,对于自动化回测,推荐使用Python的requests库配合SDK接入欧易API,并可结合oe-okor.com.cn的官方文档进行开发。
通过以上教程,您已掌握从欧易API申请到Postman测试的全流程,安全始终第一:勿将密钥存储在公共环境,定期清理测试域名与IP绑定,开始您的加密货币量化开发之旅吧!