通过 API 导入业务数据
Last updated
Last updated
elven-api-key 获取到的授权 apiKey
elven-api-sign base64格式的签名, 例如 LVT5aXA9064gpgZrPXPLJB/Aq9r45yMF10sTZQTteyE=
elven-api-timestamp 以毫秒格式的时间戳, 例如 1721209655047,过期时间是30秒// crypto 采用了 https://github.com/nodejs/node/blob/v16.9.0/lib/crypto.js 库
/**
* 生成签名
* apiSecret: BjGiqCWfHGCrl065dlEBWFO5vLj7Hqiexxx,
* timestamp: 1721205912758
* method POST
* path /open/v3/businessData
*/
buildSign(apiSecret: string, timestamp: number, method: string, path: string) {
const str = `${timestamp}${method}${path}`
return crypto.createHmac('sha256', apiSecret).update(str).digest('base64')
}
[
'D7JLJ3awwrTdNXtSrPI1GlYE', // key
'BjGiqCWfHGCrl065dlEBWFO5vLj7Hqie', // secret
'POST', // method 一定是大写的
'/open/v3/businessData' // 不能带域名, 只能以 '/' 开始的的path部分
]
{
'elven-api-key': 'D7JLJ3awwrTdNXtSrPI1GlYE',
'elven-api-sign': 'LVT5aXA9064gpgZrPXPLJB/Aq9r45yMF10sTZQTteyE=',
'elven-api-timestamp': 1721209655047
}POST https://openapi.elven.com/open/v3/businessData
header
{
elven-api-key: aaaa
elven-api-sign: bbbbbbbbbbbb
elven-api-timestamp: 22222222
}
body
{
businessDataTypeName: 'Settlement', // 已经在产品中创建好了
businessDataSourceName: 'Settlement-2024-07',// 没创建或者已创建的openapi类型的
businessDataList: [
{"a": 100, "b": "buy", "c": "2024-07-01 22:33:44"},
{"a": 100, "b": "sell", "c": "2024-07-01 23:33:44"},
{"a": 100, "b": "buy", "c": "2024-07-02 06:33:44"},
]
}