bisq/restapi
Steven Barclay 66d6530652
Optimise/simplify some stream filtering for the REST API
Replace the streaming of Map entry sets to pick out a single entry by
key equality, and instead do a lookup into the map. Also, optimise the
date range filtering in 'TradeStatisticsManager::getTradeStatisticsList'
by using 'RangeUtils::subSet' to avoid scanning the entire collection.
(This method is applicable, as the trade statistics set is navigable and
naturally sorted by date.)
2024-07-28 22:05:29 +02:00
..
src/main Optimise/simplify some stream filtering for the REST API 2024-07-28 22:05:29 +02:00
build.gradle Add dependency to bitcoinj 2024-07-21 15:16:26 +07:00
README.md Add run instructions to readme 2024-06-07 22:53:36 +07:00

Rest API node

Simple headless node with a Rest API to provide access to Bisq network data as well as Bisq DAO data. It is used for Bisq 2 to request data about the DAO state as well as account age and account witness data for reputation use cases.

To run 'RestApiMain' you need to have Bitcoin node running and have 'blocknotify' in the bitcoin.conf set up.

Run Rest API node

Run the Gradle task:

./gradlew restapi:run

Or create a run scrip by:

./gradlew restapi:startBisqApp

And then run:

./bisq-restapi

Customize with program arguments

Example program arguments for running at localhost with Regtest:

./bisq-restapi \
    --baseCurrencyNetwork=BTC_REGTEST \
    --useDevPrivilegeKeys=true \
    --useLocalhostForP2P=true \
    --nodePort=3333 \
    --appName=bisq-BTC_REGTEST_restapi \
    --fullDaoNode=true \
    --rpcUser=[RPC USER] \
    --rpcPassword=[RPC PW] \
    --rpcPort=18443 \
    --rpcBlockNotificationPort=5123