Orderbook
In order to indicate current pricing for Native APIs and aggregators, you have to provide price levels endpoint that will return price levels of all the supported pairs in a specified chain. Native will call the endpoint every second on every supported network to get the latest price levels. The endpoint provided must adhere to the following format:
Orderbook Endpoint
Params
Name | Description |
---|---|
chainId | Chain ID of the network. In integer. eg: 1 for Ethereum, 56 for BSC. |
Example
Response
You need to provide a response in the following format:
Type: Array of order pairs
Name | Description |
---|---|
base_symbol | The symbol of the token you are buying or selling. |
base_address | The address of the token you are buying or selling. |
quote_symbol | The symbol of the token that will exchanged for the base token. |
quote_address | The address of the token that will exchanged for the base token. |
levels | This is an array of tuples in the format of [[int, int]]. The value at index 0 is the amount of tokens and the value at index 1 is the price you are willing to transact at. |
side | "ask" or "bid". Indicates whether you are buying or selling the base token. |
minimum_in_base | The minimum amount of base tokens that you are willing to transact. |
Example response:
Note that the price levels need to be returned in a non-cumulative manner. For example, for the following price levels of WETH-USDT
pair:
if someone wanted to trade 3 WETH for USDT, the price would be: 0.001 * 1600 + 1 * 1610 + 1.999 * 1612 = 4833.988
Note: Native server is hosted in Singapore region and we require all the market makers to give response to all the endpoints in under 1 second.
Last updated