Submit Order

Place an order

EndPoint

POST api/v3/order

Field
Description
Example

X-API-KEY

ApiKey

"HlkcGxbqBeaF76j4rvPaOasyfPwnkQ6B6DQ6THZWbvrAGxzEdulXQvOKLrRWZLnN"

Request

Query Param
Description
Example

exchange

accountId

account ID

sellToken

buyToken

storageId

2

validUntil

Timestamp for order to become invalid, seconds

normally current time + 2 months

maxFeeBips

Maximum order fee that the user can accept, value range (in ten thousandths) 1 ~ 5000

10(means 0.1%)

eddsaSignature

fillAmountBOrS

(Optional) Fill size by buy token or by sell token

false

clientOrderId

(Optional) An arbitrary, client-set unique order identifier, max length is 120 bytes

orderType

(Optional) Order types, can be AMM, LIMIT_ORDER, MAKER_ONLY or TAKER_ONLY default is LIMIT_ORDER. If it's AMM, orderType will set to TAKER_ONLY and tradeChannel will set to MIXED

"LIMIT_ORDER"

tradeChannel

(Optional) Order channel, can be ORDER_BOOK, AMM_POOL or MIXED, default is MIXED. If it's AMM_POOL, orderType will set to TAKER_ONLY and tradeChannel will set to MIXED

"MIXED"

poolAddress

(Optional) The AMM pool address if order type is AMM

affiliate

(Optional) An accountID who will receive a share of the fee of this order at the end of monthly distribution. Need contact us to add the accountId in whitelist.

10110

extraOrderType

(Optional) extra type, default is "TRADITIONAL_ORDER", can be "STOP_LIMIT"

STOP_LIMIT

stopPrice

(Optional) stop price

"0.36"

stopSide

(Optional) can be "GREAT_THAN_AND_EQUAL", "LESS_THAN_AND_EQUAL"

"GREAT_THAN_AND_EQUAL"

Response

Field
Description
Example

hash

The hash identifier set by the user at the time of submission, can use this hash to get the order info

"0x1d923ca7834dc90484fa2eb611f0f0bc7e741bb107007ebea19ba8caeab4f9d3"

clientOrderId

The clientOrderId of the submitted order

status

Order status of submit order response Allowable : ['processing', 'processed', 'cancelling', 'cancelled', 'expired', 'failed']

"processing"

isIdempotent

Idempotent of submit transfer response, submit same transfer again idempotent will be true

"false"

Model

TokenVolume

Wrapper object used to describe a token associated with a certain quantity.

Field
Description
Example

tokenId

The Loopring's token identifier.

0

volume

The volume of the token

"100000000000 0"

Compute EdDSA hash

const inputs = [
      orderRequest.exchange,
      orderRequest.storageId,
      orderRequest.accountId,
      orderRequest.sellToken.tokenId,
      orderRequest.buyToken.tokenId,
      orderRequest.sellToken.volume,
      orderRequest.buyToken.volume,
      orderRequest.validUntil,
      orderRequest.maxFeeBips,
      orderRequest.fillAmountBOrS ? 1 : 0,
      orderRequest.taker,
    ];
const hasher = Poseidon.createHash(inputs.length + 1, 6, 53);
const hash = hasher(inputs).toString(10);

Last updated