# Joining Chainsafe's Public Testnet

This document outlines the steps to join the public testnet hosted by Chainsafe.

# Steps

  1. Install the Ethermint binaries (ethermintd & ethermint cli)

    Copy git clone https://github.com/cosmos/ethermint cd ethermint git checkout v0.4.1 make install
  2. Create an Ethermint account

    Copy ethermintcli keys add <keyname>
  3. Copy genesis file

    Follow this link and copy it over to the directory ~/.ethermintd/config/genesis.json

  4. Add peers

    Edit the file located in ~/.ethermintd/config/config.toml and edit line 350 (persistent_peers) to the following

    Copy "05aa6587f07a0c6a9a8213f0138c4a76d476418a@,13d4a1c16d1f427988b7c499b6d150726aaf3aa0@,a00db749fa51e485c8376276d29d599258052f3e@"
  5. Validate genesis and start the Ethermint network

    Copy ethermintd validate-genesis ethermintd start --pruning=nothing --rpc.unsafe --log_level "main:info,state:info,mempool:info" --trace

    (we recommend running the command in the background for convenience)

  6. Start the RPC server

    Copy ethermintcli rest-server --laddr "tcp://localhost:8545" --unlock-key $KEY --chain-id etherminttestnet-777 --trace --rpc-api "web3,eth,net"

    where $KEY is the key name that was used in step 2. (we recommend running the command in the background for convenience)

  7. Request funds from the faucet

    You will need to know the Ethereum hex address, and it can be found with the following command:

    Copy curl -X POST --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}' -H "Content-Type: application/json" http://localhost:8545

    Using the output of the above command, you will then send the command with your valid Ethereum address

    Copy curl --header "Content-Type: application/json" --request POST --data '{"address":"0xYourEthereumHexAddress"}'

# Public Testnet Node RPC Endpoints

  • Node0:
  • Node1:
  • Node2:


Copy curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' -H "Content-Type: application/json"