This server uses yarn
to manage node.js dependencies. To install dependencies, from the root directory run
yarn
to build the workspace run
yarn build
to start the server in debug mode
DEBUG=js:* yarn start
Server configurations are managed with dotenv. A default configuration is
provided in .env.development
. The server looks for solana private keys in the file specified by the SECRETS_FILE
config. Without any further configuration to permission the server, create a file with following format, replacing
"your_bs58_private_key"
with your base58 encoded solana private key (which you can export from sollet.io).
{
"serum_private_key": "your_bs58_private_key"
}
Then store this file at a location of your choosing and set the SECRETS_FILE
config to your chosen location. Note
that dotenv
by default looks for .env
files, so you will need to rename .env.development
to .env
for the
configurtation file to take effect.
A node.js shell is provided for debugging purposes. Start the shell with
yarn shell
An example of fetching an orderbook for the BTC/USDC
pair is provided below.
[~/serum-rest-server]$ yarn shell
> sapi = await SerumApi.create()
...
> await sapi.getWsOrderbook('BTC', 'USDC')
{
bids: [...],
asks: [...],
market: Pair { coin: 'BTC', priceCurrency: 'USDC' },
validAt: ...,
receivedAt: ...
}