Kava Rosetta API
Kava implementation of the Coinbase Rosetta API.
Written in Golang with the Rosetta Go SDK.
Features
- Tracking of all native token balance changes for all transaction types
- Stateless, offline transaction construction
- Historical balance lookup and reconciliation
Prerequisites
To run rosetta-kava
, docker is required.
System Requirements
rosetta-kava
has been tested on an AWS c5.2xlarge instance. We recommend 8 vCPU, 16GB of RAM, and at least 2TB of storage for running a dockerized rosetta-kava
node.
Usage
As specified in the Rosetta API, the rosetta-kava
implementation is deployable via Docker and supports running via either an online
or offline
mode.
Install
Mainnet
The following commands will build a docker container named rosetta-kava
and configure the container for running on the kava-9
mainnet.
docker build . -t rosetta-kava
docker run -it -e "MODE=online" -e "NETWORK=kava-9" -e "PORT=8000" -v "$PWD/kava-data:/data" -p 8000:8000 -p 26656:26656 rosetta-kava
To run in offline mode:
docker run -it -e "MODE=offline" -e "NETWORK=kava-9" -e "PORT=8000" -p 8000:8000 rosetta-kava
Snapshots
Weekly archive node snapshots and instructions for quicker syncing are available at https://kava.quicksync.io/.
Testnet
The following commands will build a docker container named rosetta-kava
and configure the container for running on the kava-testnet-14000
testnet.
docker build . -t rosetta-kava
docker run -it -e "MODE=online" -e "NETWORK=kava-testnet-14000" -e "PORT=8000" -v "$PWD/kava-data:/data" -p 8000:8000 -p 26656:26656 rosetta-kava
To run in offline mode:
docker run -it -e "MODE=offline" -e "NETWORK=kava-testnet-14000" -e "PORT=8000" -p 8000:8000 rosetta-kava
Swagger
Swagger requires a running rosetta-kava service on port 8000.
make run-swagger
Navigate to http://localhost:8080.