Submit an order
流量控制: 5 每 秒
摘要
HTTP 方法
POST
访问路径
/api/v3/order
功能
Submit an order
API 描述
HTTP头
字段 | 类型 | 必须 | 说明 | 举例 |
---|---|---|---|---|
X-API-KEY | string | 是 | ApiKey | "HlkcGxbqBeaF76j4rvPaOasyfPwnkQ 6B6DQ6THZWbvrAGxzEdulXQvOKLrRW ZLnN" |
请求参数
字段 | 类型 | 必须 | 说明 | 举例 |
---|---|---|---|---|
exchange | string | 是 | The adderss of the exchange which has to process this order | "1" |
accountId | integer | 是 | Loopring's account ID | 1 |
storageId | integer | 是 | The unique identifier of the L2 Merkle tree storage slot where the burn made in order to exit the pool will or has been stored. | 1 |
sellToken | Token VolumeV3 |
是 | Wrapper object used to describe a token associated with a certain quantity. | "TokenVolume{ tokenId: 0, volume: 1234}" |
buyToken | Token VolumeV3 |
是 | Wrapper object used to describe a token associated with a certain quantity. | "TokenVolume{ tokenId: 0, volume: 1234}" |
allOrNone | string | 是 | Whether the order supports partial fills or not.Currently only supports false as a valid value | "false" |
fillAmountBOrS | string | 是 | Fill size by buy token or by sell token | "true" |
validUntil | integer | 是 | Order expiration time, accuracy is in seconds | 1567053142 |
maxFeeBips | integer | 是 | Maximum order fee that the user can accept, value range (in ten thousandths) 1 ~ 63 | 20 |
eddsaSignature | string | 是 | The orders EdDSA signature. The signature is a hexadecimal string obtained by signing the order itself and concatenating the resulting signature parts (Rx, Ry, and S). Used to authenticate and authorize the operation. | "133754509012 921794171549 748495717930 699115173547 203971250276 332426804700 75859" |
clientOrderId | string | 否 | An arbitrary, client-set unique order identifier, max length is 120 bytes | "1" |
orderType | string | 否 | Order types, can be AMM, LIMIT_ORDER, MAKER_ONLY, TAKER_ONLY 取值范围 : ['LIMIT_ORDER', 'TAKER_ONLY', 'MAKER_ONLY', 'AMM'] |
"LIMIT_ORDER" |
tradeChannel | string | 否 | Order channel, can be ORDER_BOOK, AMM_POOL, MIXED 取值范围 : ['ORDER_BOOK', 'AMM_POOL', 'MIXED'] |
"ORDER_BOOK" |
taker | string | 否 | Used by the P2P order which user specify the taker, so far its 0x0000000000000000000000000000000000000000 | "0x506d67A6f2 2927a2DAa20a 9510EA73D5E6 6Baf18" |
poolAddress | string | 否 | The AMM pool address if order type is AMM | "0x506d67A6f2 2927a2DAa20a 9510EA73D5E6 6Baf18" |
affiliate | string | 否 | An accountID who will recieve a share of the fee of this order | "10068" |
请求示例
HTTP
CURL
POST https://api3.loopring.io/api/v3/order HTTP/1.1
Host: api3.loopring.io
Connection: keep-alive
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: zh,en;q=0.9
X-API-KEY: sra1aavfa
Content-Type: application/json
{
"exchange" : "1",
"accountId" : 1,
"storageId" : 1,
"sellToken" : {
"tokenId" : 0,
"volume" : "1000000000000"
},
"buyToken" : {
"tokenId" : 0,
"volume" : "1000000000000"
},
"allOrNone" : "false",
"fillAmountBOrS" : "true",
"validUntil" : 1567053142,
"maxFeeBips" : 20,
"eddsaSignature" : "13375450901292179417154974849571793069911517354720397125027633242680470075859",
"clientOrderId" : "1",
"orderType" : "LIMIT_ORDER",
"tradeChannel" : "ORDER_BOOK",
"taker" : "0x506d67A6f22927a2DAa20a9510EA73D5E66Baf18",
"poolAddress" : "0x506d67A6f22927a2DAa20a9510EA73D5E66Baf18",
"affiliate" : "10068"
}
curl -X POST -H "X-API-KEY:sra1aavfa" -H "Content-Type:application/json" https://api3.loopring.io/api/v3/order -d \
'{
"exchange" : "1",
"accountId" : 1,
"storageId" : 1,
"sellToken" : {
"tokenId" : 0,
"volume" : "1000000000000"
},
"buyToken" : {
"tokenId" : 0,
"volume" : "1000000000000"
},
"allOrNone" : "false",
"fillAmountBOrS" : "true",
"validUntil" : 1567053142,
"maxFeeBips" : 20,
"eddsaSignature" : "13375450901292179417154974849571793069911517354720397125027633242680470075859",
"clientOrderId" : "1",
"orderType" : "LIMIT_ORDER",
"tradeChannel" : "ORDER_BOOK",
"taker" : "0x506d67A6f22927a2DAa20a9510EA73D5E66Baf18",
"poolAddress" : "0x506d67A6f22927a2DAa20a9510EA73D5E66Baf18",
"affiliate" : "10068"
}'
响应字段
字段 | 类型 | 必须 | 说明 | 举例 |
---|---|---|---|---|
hash | string | 是 | Order hash of submit order response | "133754509012 921794171549 748495717930 699115173547 203971250276 332426804700 75859" |
clientOrderId | string | 是 | The clientOrderId of the submitted order | "client_order _id" |
status | string | 是 | Order status of submit order response 取值范围 : ['processing', 'processed', 'cancelling', 'cancelled', 'expired', 'failed'] |
"cancelled" |
isIdempotent | boolean | 是 | Idempotent of submit order response, submit same order again when order was UNKNOWN or WAIT_FREEZE_BALANCE in relayer, idempotent will be true 取值范围 : [True, False] |
"false" |
响应示例
{
"hash" : "13375450901292179417154974849571793069911517354720397125027633242680470075859",
"clientOrderId" : "client_order_id",
"status" : "cancelled",
"isIdempotent" : false
}
状态码
状态码 | 描述 |
---|---|
100000 | Unknown error |
100001 | Invalid argument |
102001 | Exchange ID is incorrect |
102002 | Unsupported TokenId in the order |
102003 | Invalid account ID |
102004 | Invalid order ID |
102005 | Market does not support |
102006 | Illegal rate field |
102007 | Order already exists |
102008 | Order has expired |
102010 | Order is missing signature information |
102011 | Insufficient user balance |
102012 | The order amount is too small |
102014 | Failed to freeze the amount, please try again later |
102020 | Exceeded the maximum order amount |
102021 | Nonce is invalid |
102027 | Submit order failed |
102120 | Order is not valid |
104001 | Empty ApiKey |
104002 | Invalid ApiKey |
104003 | Invalid Account ID |
104004 | No signature information provided |
104005 | Wrong signature information |
模型
TokenVolumeV3
Wrapper object used to describe a token associated with a certain quantity.
字段 | 类型 | 必须 | 说明 | 举例 |
---|---|---|---|---|
tokenId | integer | 是 | The Loopring's token identifier. | 0 |
volume | string | 是 | The volume of the token | "100000000000 0" |