dex.blue API Documentation
dex.blue is a hybrid-decentralized exchange for ERC20 tokens on the Ethereum blockchain. It combines the efficiency and user experience of a centralized exchange with the security guarantees of a decentralized solution.
Clients will use the smart contract for deposits and withdrawals and with the web APIs for market data and order management.
In most cases, the Websocket API should be used for all queries, as the protocol is much more lightweight. We would suggest using the REST API only in cases where you want to query market data every now and then.
Account and Signature Principles
Your account on dex.blue is your Ethereum public and private key pair. If you want to perform actions on the marketplace you firstly have to prove ownership of your private key by signing a message.
Each request containing an Ethereum signature has to be sent with a nonce parameter, an ever-increasing unsigned integer, which ensures a new signature when the same command is signed several times (a common practice is to use your systems millisecond timestamp).
Delegated Signing keys
Delegated Signing Keys can be used like API-Keys on centralized exchanges. This feature which allows you to sign orders for your wallet from another address which you registered on the blockchain. This enables you, for example, to manage funds from a cold wallet with a hot wallet address.
Order matching rules
Orders are matched after first-in-first-out and price-time-priority principles. The order which was entered earliest at the most beneficial price for the counterparty gets executed first.
If you try to match your own order, the resting order will be canceled. If a fill-or-kill order would match your own order, it will get rejected.