A decentralized API for the Dash network
npm install
DAPI targets the latest v20 release of Node.js.
DAPI requires the latest version of dashcore with Evolution features (special branch repo).
- Install core. You can use the docker image (
dashcore:evo
) or clone code from the repository, switch to theevo
branch, and build it by yourself. Note: you need to build image with ZMQ and wallet support. You can follow the build instructions located here - Configure core. DAPI needs dashcore's ZMQ interface to be exposed and all indexes enabled. You can find the example config for dashcore here. To start dashcore process with this config, copy it somewhere to your system, and then run
./src/dashd -conf=/path/to/your/config
.
After you've installed all the dependencies, you can start DAPI by running the npm start
command inside the DAPI repo directory.
npm start
DAPI is configured via environment variables either explicitly passed or present in the .env
dotfile. For example, to change the DAPI port, execute DAPI with the following arguments: RPC_SERVER_PORT=3010 npm start
. Consult the sample environment file. You can see the full list of available options here.
DAPI uses JSON-RPC 2.0 as the main interface. If you want to confirm that DAPI is functioning and synced, you can request the best block height.
Send the following json to your DAPI instance:
{"jsonrpc": "2.0","method": "getBestBlockHeight", "id": 1}
Note that you always need to specify an id, otherwise the server will respond with an empty body, as mentioned in the spec.
A list of all available RPC commands, along with their various arguments and expected responses can be found here
Implementation of these commands can be viewed here.
Feel free to dive in! Open an issue or submit PRs.
MIT © Dash Core Group, Inc.