Here is the list of RPC methods made available with ethereumjs-testrpc:
- eth_accounts
- eth_blockNumber
- eth_call
- eth_coinbase
- eth_compileSolidity
- eth_estimateGas
- eth_gasPrice
- eth_getBalance
- eth_getBlockByNumber
- eth_getBlockByHash
- eth_getBlockTransactionCountByHash
- eth_getBlockTransactionCountByNumber
- eth_getCode (only supports block number "latest")
- eth_getCompilers
- eth_getFilterChanges
- eth_getFilterLogs
- eth_getLogs
- eth_getStorageAt
- eth_getTransactionByHash
- eth_getTransactionByBlockHashAndIndex
- eth_getTransactionByBlockNumberAndIndex
- eth_getTransactionCount
- eth_getTransactionReceipt
- eth_hashrate
- eth_mining
- eth_newBlockFilter
- eth_newFilter (includes log/event filters)
- eth_sendTransaction
- eth_sendRawTransaction
- eth_sign
- eth_syncing
- eth_uninstallFilter
- net_listening
- net_peerCount
- net_version
- miner_start
- miner_stop
- rpc_modules
- web3_clientVersion
- web3_sha3
There are also special nonstandard methods that aren't included within the original RPC specification:
- evm_snapshot: Snapshots the state of the blockchain at the current block. Takes no parameters. Returns the integer ID of the snapshot created.
- evm_revert: Reverts the state of the blockchain to a previous snapshot. Takes a single parameter, which is the snapshot ID to revert to. If no snapshot ID is passed, it will revert to the latest snapshot. Returns true.
- evm_increaseTime: Jumps forward in time. Takes one parameter, which is the amount of time to increase in seconds. Returns the total time adjustment in seconds.
- evm_mine: Forces a block to be mined. Takes no parameters. Mines a block independent of whether or not mining is started or stopped.