Dash Core

Dash Core Developer Documentation

Welcome to the Dash Core developer documentation. You'll find guides and documentation to help you start working with Dash Core as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    Guides

Configuration File

Dash Core settings

To use dashd and dash-cli, you will need to add a RPC password to your dash.conf file. Both programs will read from the same file if both run on the same system as the same user, so any long random password will work:

rpcpassword=change_this_to_a_long_random_password

You should also make the dash.conf file only readable to its owner. On Linux, Mac OSX, and other Unix-like systems, this can be accomplished by running the following command in the Dash Core application directory:

chmod 0600 dash.conf

For development, it's safer and cheaper to use Dash's test network (testnettestnet - A global testing environment in which developers can obtain and spend duffs that have no real-world value on a network that is very similar to the Dash mainnet.), regression test moderegression test mode - A local testing environment in which developers can almost instantly generate blocks on demand for testing events, and can create private duffs with no real-world value. (regtest), or a developer network (devnetdevnet - A development environment in which developers can obtain and spend duffs that have no real-world value on a network that is very similar to the Dash mainnet. Multiple independent devnets can coexist without interference. Devnets can be either public or private.) described below.

Questions about Dash use are best sent to the Dash forum and Discord channels.

Example Testnet Config

testnet=1

# RPC Settings
rpcuser=user
rpcpassword=pass
rpcallowip=127.0.0.1
#----
listen=1
server=1

# Index Settings
txindex=1
addressindex=1
timestampindex=1
spentindex=1

[test]
rpcport=19998

Configuration sections for different networks

👍

Added in Dash Core 0.16

Since Dash Core 0.16 it is possible for a single configuration file to set different options for different networks. This is done by using sections or by prefixing the option with the network as shown below:

❗️

Valid Section Names

Please note that the valid section names are [main], [test], [regtest], and [devnet].

# Enable RPC server for all networks
server=1

[main]
# Set custom mainnet ports
port=9989
rpcport=9988
# Set custom mainnet RPC auth
rpcuser=mainnetuser
rpcpassword=mainnetpass

[test]
# Set custom testnet RPC auth
rpcuser=testnetuser
rpcpassword=testnetpass

# Enabling indexing
txindex=1
addressindex=1
timestampindex=1
spentindex=1

[regtest]
mempoolsize=20

[devnet]
port=21999
rpcport=21998

With this configuration file, dashd, dash-qt, or dash-cli can be run with the -conf=<configuration file> along with the -testnet, -regtest, or -devnet=<devnet name> parameter to select the correct settings.

❗️

If the following options are not in a section, they will only apply to mainnet: addnode=, connect=, port=, bind=, rpcport=, rpcbind= and wallet=. The options to choose a network (regtest= and testnet=) must be specified outside of sections.

Updated 11 days ago


Configuration File


Dash Core settings

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.