JSON-RPC
The following sections contain RPC methods that are Remote Calls available by default and allow you to interact with the actual node, query, and submit.
author#
hasKey(publicKey: Bytes, keyType: Text): bool#
- interface: api.rpc.author.hasKey
- jsonrpc: author_hasKey
- summary: Returns true if the keystore has private keys for the given public key and key type.
hasSessionKeys(sessionKeys: Bytes): bool#
- interface: api.rpc.author.hasSessionKeys
- jsonrpc: author_hasSessionKeys
- summary: Returns true if the keystore has private keys for the given session public keys.
insertKey(keyType: Text, suri: Text, publicKey: Bytes): Bytes#
- interface: api.rpc.author.insertKey
- jsonrpc: author_insertKey
- summary: Insert a key into the keystore.
pendingExtrinsics(): Vec<Extrinsic>#
- interface: api.rpc.author.pendingExtrinsics
- jsonrpc: author_pendingExtrinsics
- summary: Returns all pending extrinsics, potentially grouped by sender
removeExtrinsic(bytesOrHash: Vec<ExtrinsicOrHash>): Vec<Hash>#
- interface: api.rpc.author.removeExtrinsic
- jsonrpc: author_removeExtrinsic
- summary: Remove given extrinsic from the pool and temporarily ban it to prevent reimporting
rotateKeys(): Bytes#
- interface: api.rpc.author.rotateKeys
- jsonrpc: author_rotateKeys
- summary: Generate new session keys and returns the corresponding public keys
submitAndWatchExtrinsic(extrinsic: Extrinsic): ExtrinsicStatus#
- interface: api.rpc.author.submitAndWatchExtrinsic
- jsonrpc: author_submitAndWatchExtrinsic
- summary: Submit and subscribe to watch an extrinsic until unsubscribed
submitExtrinsic(extrinsic: Extrinsic): Hash#
- interface: api.rpc.author.submitExtrinsic
- jsonrpc: author_submitExtrinsic
- summary: Submit a fully formatted extrinsic for block inclusion
babe#
epochAuthorship(): HashMap<AuthorityId, EpochAuthorship>#
- interface: api.rpc.babe.epochAuthorship
- jsonrpc: babe_epochAuthorship
- summary: Returns data about which slots (primary or secondary) can be claimed in the current epoch with the keys in the keystore
beefy#
subscribeJustifications(): BeefySignedCommitment#
- interface: api.rpc.beefy.subscribeJustifications
- jsonrpc: beefy_subscribeJustifications
- summary: Returns the block most recently finalized by BEEFY, alongside side its justification.
chain#
getBlock(hash?: BlockHash): SignedBlock#
- interface: api.rpc.chain.getBlock
- jsonrpc: chain_getBlock
- summary: Get header and body of a relay chain block
getBlockHash(blockNumber?: BlockNumber): BlockHash#
- interface: api.rpc.chain.getBlockHash
- jsonrpc: chain_getBlockHash
- summary: Get the block hash for a specific block
getFinalizedHead(): BlockHash#
- interface: api.rpc.chain.getFinalizedHead
- jsonrpc: chain_getFinalizedHead
- summary: Get hash of the last finalized block in the canon chain
getHeader(hash?: BlockHash): Header#
- interface: api.rpc.chain.getHeader
- jsonrpc: chain_getHeader
- summary: Retrieves the header for a specific block
subscribeAllHeads(): Header#
- interface: api.rpc.chain.subscribeAllHeads
- jsonrpc: chain_subscribeAllHeads
- summary: Retrieves the newest header via subscription
subscribeFinalizedHeads(): Header#
- interface: api.rpc.chain.subscribeFinalizedHeads
- jsonrpc: chain_subscribeFinalizedHeads
- summary: Retrieves the best finalized header via subscription
subscribeNewHeads(): Header#
- interface: api.rpc.chain.subscribeNewHeads
- jsonrpc: chain_subscribeNewHeads
- summary: Retrieves the best header via subscription
childstate#
getKeys(childKey: PrefixedStorageKey, prefix: StorageKey, at?: Hash): Vec<StorageKey>#
- interface: api.rpc.childstate.getKeys
- jsonrpc: childstate_getKeys
- summary: Returns the keys with prefix from a child storage, leave empty to get all the keys
getStorage(childKey: PrefixedStorageKey, key: StorageKey, at?: Hash): Option<StorageData>#
- interface: api.rpc.childstate.getStorage
- jsonrpc: childstate_getStorage
- summary: Returns a child storage entry at a specific block state
getStorageHash(childKey: PrefixedStorageKey, key: StorageKey, at?: Hash): Option<Hash>#
- interface: api.rpc.childstate.getStorageHash
- jsonrpc: childstate_getStorageHash
- summary: Returns the hash of a child storage entry at a block state
getStorageSize(childKey: PrefixedStorageKey, key: StorageKey, at?: Hash): Option<u64>#
- interface: api.rpc.childstate.getStorageSize
- jsonrpc: childstate_getStorageSize
- summary: Returns the size of a child storage entry at a block state
contracts#
call(callRequest: ContractCallRequest, at?: BlockHash): ContractExecResult#
- interface: api.rpc.contracts.call
- jsonrpc: contracts_call
- summary: Executes a call to a contract
getStorage(address: AccountId, key: H256, at?: BlockHash): Option<Bytes>#
- interface: api.rpc.contracts.getStorage
- jsonrpc: contracts_getStorage
- summary: Returns the value under a specified storage key in a contract
rentProjection(address: AccountId, at?: BlockHash): Option<BlockNumber>#
- interface: api.rpc.contracts.rentProjection
- jsonrpc: contracts_rentProjection
- summary: Returns the projected time a given contract will be able to sustain paying its rent
engine#
createBlock(createEmpty: bool, finalize: bool, parentHash?: BlockHash): CreatedBlock#
- interface: api.rpc.engine.createBlock
- jsonrpc: engine_createBlock
- summary: Instructs the manual-seal authorship task to create a new block
finalizeBlock(hash: BlockHash, justification?: Justification): bool#
- interface: api.rpc.engine.finalizeBlock
- jsonrpc: engine_finalizeBlock
- summary: Instructs the manual-seal authorship task to finalize a block
eth#
accounts(): Vec<H160>#
- interface: api.rpc.eth.accounts
- jsonrpc: eth_accounts
- summary: Returns accounts list.
blockNumber(): U256#
- interface: api.rpc.eth.blockNumber
- jsonrpc: eth_blockNumber
- summary: Returns balance of the given account.
call(request: EthCallRequest, number?: BlockNumber): Bytes#
- interface: api.rpc.eth.call
- jsonrpc: eth_call
- summary: Call contract, returning the output data.
chainId(): U64#
- interface: api.rpc.eth.chainId
- jsonrpc: eth_chainId
- summary: Returns the chain ID used for transaction signing at the current best block. None is returned if not available.
coinbase(): H160#
- interface: api.rpc.eth.coinbase
- jsonrpc: eth_coinbase
- summary: Returns block author.
estimateGas(request: EthCallRequest, number?: BlockNumber): U256#
- interface: api.rpc.eth.estimateGas
- jsonrpc: eth_estimateGas
- summary: Estimate gas needed for execution of given contract.
gasPrice(): U256#
- interface: api.rpc.eth.gasPrice
- jsonrpc: eth_gasPrice
- summary: Returns current gas price.
getBalance(address: H160, number?: BlockNumber): U256#
- interface: api.rpc.eth.getBalance
- jsonrpc: eth_getBalance
- summary: Returns balance of the given account.
getBlockByHash(hash: H256, full: bool): Option<EthRichBlock>#
- interface: api.rpc.eth.getBlockByHash
- jsonrpc: eth_getBlockByHash
- summary: Returns block with given hash.
getBlockByNumber(block: BlockNumber, full: bool): Option<EthRichBlock>#
- interface: api.rpc.eth.getBlockByNumber
- jsonrpc: eth_getBlockByNumber
- summary: Returns block with given number.
getBlockTransactionCountByHash(hash: H256): U256#
- interface: api.rpc.eth.getBlockTransactionCountByHash
- jsonrpc: eth_getBlockTransactionCountByHash
- summary: Returns the number of transactions in a block with given hash.
getBlockTransactionCountByNumber(block: BlockNumber): U256#
- interface: api.rpc.eth.getBlockTransactionCountByNumber
- jsonrpc: eth_getBlockTransactionCountByNumber
- summary: Returns the number of transactions in a block with given block number.
getCode(address: H160, number?: BlockNumber): Bytes#
- interface: api.rpc.eth.getCode
- jsonrpc: eth_getCode
- summary: Returns the code at given address at given time (block number).
getFilterChanges(index: U256): EthFilterChanges#
- interface: api.rpc.eth.getFilterChanges
- jsonrpc: eth_getFilterChanges
- summary: Returns filter changes since last poll.
getFilterLogs(index: U256): Vec<EthLog>#
- interface: api.rpc.eth.getFilterLogs
- jsonrpc: eth_getFilterLogs
- summary: Returns all logs matching given filter (in a range 'from' - 'to').
getLogs(filter: EthFilter): Vec<EthLog>#
- interface: api.rpc.eth.getLogs
- jsonrpc: eth_getLogs
- summary: Returns logs matching given filter object.
getProof(address: H160, storageKeys: Vec<H256>, number: BlockNumber): EthAccount#
- interface: api.rpc.eth.getProof
- jsonrpc: eth_getProof
- summary: Returns proof for account and storage.
getStorageAt(address: H160, index: U256, number?: BlockNumber): H256#
- interface: api.rpc.eth.getStorageAt
- jsonrpc: eth_getStorageAt
- summary: Returns content of the storage at given address.
getTransactionByBlockHashAndIndex(hash: H256, index: U256): EthTransaction#
- interface: api.rpc.eth.getTransactionByBlockHashAndIndex
- jsonrpc: eth_getTransactionByBlockHashAndIndex
- summary: Returns transaction at given block hash and index.
getTransactionByBlockNumberAndIndex(number: BlockNumber, index: U256): EthTransaction#
- interface: api.rpc.eth.getTransactionByBlockNumberAndIndex
- jsonrpc: eth_getTransactionByBlockNumberAndIndex
- summary: Returns transaction by given block number and index.
getTransactionByHash(hash: H256): EthTransaction#
- interface: api.rpc.eth.getTransactionByHash
- jsonrpc: eth_getTransactionByHash
- summary: Get transaction by its hash.
getTransactionCount(hash: H256, number?: BlockNumber): U256#
- interface: api.rpc.eth.getTransactionCount
- jsonrpc: eth_getTransactionCount
- summary: Returns the number of transactions sent from given address at given time (block number).
getTransactionReceipt(hash: H256): EthReceipt#
- interface: api.rpc.eth.getTransactionReceipt
- jsonrpc: eth_getTransactionReceipt
- summary: Returns transaction receipt by transaction hash.
getUncleByBlockHashAndIndex(hash: H256, index: U256): EthRichBlock#
- interface: api.rpc.eth.getUncleByBlockHashAndIndex
- jsonrpc: eth_getUncleByBlockHashAndIndex
- summary: Returns an uncles at given block and index.
getUncleByBlockNumberAndIndex(number: BlockNumber, index: U256): EthRichBlock#
- interface: api.rpc.eth.getUncleByBlockNumberAndIndex
- jsonrpc: eth_getUncleByBlockNumberAndIndex
- summary: Returns an uncles at given block and index.
getUncleCountByBlockHash(hash: H256): U256#
- interface: api.rpc.eth.getUncleCountByBlockHash
- jsonrpc: eth_getUncleCountByBlockHash
- summary: Returns the number of uncles in a block with given hash.
getUncleCountByBlockNumber(number: BlockNumber): U256#
- interface: api.rpc.eth.getUncleCountByBlockNumber
- jsonrpc: eth_getUncleCountByBlockNumber
- summary: Returns the number of uncles in a block with given block number.
getWork(): EthWork#
- interface: api.rpc.eth.getWork
- jsonrpc: eth_getWork
- summary: Returns the hash of the current block, the seedHash, and the boundary condition to be met.
hashrate(): U256#
- interface: api.rpc.eth.hashrate
- jsonrpc: eth_hashrate
- summary: Returns the number of hashes per second that the node is mining with.
mining(): bool#
- interface: api.rpc.eth.mining
- jsonrpc: eth_mining
- summary: Returns true if client is actively mining new blocks.
newBlockFilter(): U256#
- interface: api.rpc.eth.newBlockFilter
- jsonrpc: eth_newBlockFilter
- summary: Returns id of new block filter.
newFilter(filter: EthFilter): U256#
- interface: api.rpc.eth.newFilter
- jsonrpc: eth_newFilter
- summary: Returns id of new filter.
newPendingTransactionFilter(): U256#
- interface: api.rpc.eth.newPendingTransactionFilter
- jsonrpc: eth_newPendingTransactionFilter
- summary: Returns id of new block filter.
protocolVersion(): u64#
- interface: api.rpc.eth.protocolVersion
- jsonrpc: eth_protocolVersion
- summary: Returns protocol version encoded as a string (quotes are necessary).
sendRawTransaction(bytes: Bytes): H256#
- interface: api.rpc.eth.sendRawTransaction
- jsonrpc: eth_sendRawTransaction
- summary: Sends signed transaction, returning its hash.
sendTransaction(tx: EthTransactionRequest): H256#
- interface: api.rpc.eth.sendTransaction
- jsonrpc: eth_sendTransaction
- summary: Sends transaction; will block waiting for signer to return the transaction hash
submitHashrate(index: U256, hash: H256): bool#
- interface: api.rpc.eth.submitHashrate
- jsonrpc: eth_submitHashrate
- summary: Used for submitting mining hashrate.
submitWork(nonce: H64, headerHash: H256, mixDigest: H256): bool#
- interface: api.rpc.eth.submitWork
- jsonrpc: eth_submitWork
- summary: Used for submitting a proof-of-work solution.
subscribe(kind: EthSubKind, params?: EthSubParams): Null#
- interface: api.rpc.eth.subscribe
- jsonrpc: eth_subscribe
- summary: Subscribe to Eth subscription.
syncing(): EthSyncStatus#
- interface: api.rpc.eth.syncing
- jsonrpc: eth_syncing
- summary: Returns an object with data about the sync status or false.
uninstallFilter(index: U256): bool#
- interface: api.rpc.eth.uninstallFilter
- jsonrpc: eth_uninstallFilter
- summary: Uninstalls filter.
eth/net#
listening(): bool#
- interface: api.rpc.net.listening
- jsonrpc: net_listening
- summary: Returns true if client is actively listening for network connections. Otherwise false.
peerCount(): String#
- interface: api.rpc.net.peerCount
- jsonrpc: net_peerCount
- summary: Returns number of peers connected to node.
version(): String#
- interface: api.rpc.net.version
- jsonrpc: net_version
- summary: Returns protocol version.
eth/web3#
clientVersion(): String#
- interface: api.rpc.web3.clientVersion
- jsonrpc: web3_clientVersion
- summary: Returns current client version.
sha3(data: Bytes): H256#
- interface: api.rpc.web3.sha3
- jsonrpc: web3_sha3
- summary: Returns sha3 of the given data
grandpa#
proveFinality(begin: BlockHash, end: BlockHash, authoritiesSetId?: u64): Option<EncodedFinalityProofs>#
- interface: api.rpc.grandpa.proveFinality
- jsonrpc: grandpa_proveFinality
- summary: Prove finality for the range (begin; end] hash.
roundState(): ReportedRoundStates#
- interface: api.rpc.grandpa.roundState
- jsonrpc: grandpa_roundState
- summary: Returns the state of the current best round state as well as the ongoing background rounds
subscribeJustifications(): JustificationNotification#
- interface: api.rpc.grandpa.subscribeJustifications
- jsonrpc: grandpa_subscribeJustifications
- summary: Subscribes to grandpa justifications
mmr#
generateProof(leafIndex: u64, at?: BlockHash): MmrLeafProof#
- interface: api.rpc.mmr.generateProof
- jsonrpc: mmr_generateProof
- summary: Generate MMR proof for given leaf index.
offchain#
localStorageGet(kind: StorageKind, key: Bytes): Option<Bytes>#
- interface: api.rpc.offchain.localStorageGet
- jsonrpc: offchain_localStorageGet
- summary: Get offchain local storage under given key and prefix
localStorageSet(kind: StorageKind, key: Bytes, value: Bytes): Null#
- interface: api.rpc.offchain.localStorageSet
- jsonrpc: offchain_localStorageSet
- summary: Set offchain local storage under given key and prefix
payment#
queryFeeDetails(extrinsic: Bytes, at?: BlockHash): FeeDetails#
- interface: api.rpc.payment.queryFeeDetails
- jsonrpc: payment_queryFeeDetails
- summary: Query the detailed fee of a given encoded extrinsic
queryInfo(extrinsic: Bytes, at?: BlockHash): RuntimeDispatchInfo#
- interface: api.rpc.payment.queryInfo
- jsonrpc: payment_queryInfo
- summary: Retrieves the fee information for an encoded extrinsic
rpc#
methods(): RpcMethods#
- interface: api.rpc.rpc.methods
- jsonrpc: rpc_methods
- summary: Retrieves the list of RPC methods that are exposed by the node
state#
call(method: Text, data: Bytes, at?: BlockHash): Bytes#
- interface: api.rpc.state.call
- jsonrpc: state_call
- summary: Perform a call to a builtin on the chain
getChildKeys(childStorageKey: StorageKey, childDefinition: StorageKey, childType: u32, key: StorageKey, at?: BlockHash): Vec<StorageKey>#
- interface: api.rpc.state.getChildKeys
- jsonrpc: state_getChildKeys
- summary: Retrieves the keys with prefix of a specific child storage
getChildStorage(childStorageKey: StorageKey, childDefinition: StorageKey, childType: u32, key: StorageKey, at?: BlockHash): StorageData#
- interface: api.rpc.state.getChildStorage
- jsonrpc: state_getChildStorage
- summary: Retrieves the child storage for a key
getChildStorageHash(childStorageKey: StorageKey, childDefinition: StorageKey, childType: u32, key: StorageKey, at?: BlockHash): Hash#
- interface: api.rpc.state.getChildStorageHash
- jsonrpc: state_getChildStorageHash
- summary: Retrieves the child storage hash
getChildStorageSize(childStorageKey: StorageKey, childDefinition: StorageKey, childType: u32, key: StorageKey, at?: BlockHash): u64#
- interface: api.rpc.state.getChildStorageSize
- jsonrpc: state_getChildStorageSize
- summary: Retrieves the child storage size
getKeys(key: StorageKey, at?: BlockHash): Vec<StorageKey>#
- interface: api.rpc.state.getKeys
- jsonrpc: state_getKeys
- summary: Retrieves the keys with a certain prefix
getKeysPaged(key: StorageKey, count: u32, startKey?: StorageKey, at?: BlockHash): Vec<StorageKey>#
- interface: api.rpc.state.getKeysPaged
- jsonrpc: state_getKeysPaged
- summary: Returns the keys with prefix with pagination support.
getMetadata(at?: BlockHash): Metadata#
- interface: api.rpc.state.getMetadata
- jsonrpc: state_getMetadata
- summary: Returns the runtime metadata
getPairs(prefix: StorageKey, at?: BlockHash): Vec<KeyValue>#
- interface: api.rpc.state.getPairs
- jsonrpc: state_getPairs
- summary: Returns the keys with prefix, leave empty to get all the keys (deprecated: Use getKeysPaged)
getReadProof(keys: Vec<StorageKey>, at?: BlockHash): ReadProof#
- interface: api.rpc.state.getReadProof
- jsonrpc: state_getReadProof
- summary: Returns proof of storage entries at a specific block state
getRuntimeVersion(at?: BlockHash): RuntimeVersion#
- interface: api.rpc.state.getRuntimeVersion
- jsonrpc: state_getRuntimeVersion
- summary: Get the runtime version
getStorage(key: StorageKey, at?: BlockHash): StorageData#
- interface: api.rpc.state.getStorage
- jsonrpc: state_getStorage
- summary: Retrieves the storage for a key
getStorageHash(key: StorageKey, at?: BlockHash): Hash#
- interface: api.rpc.state.getStorageHash
- jsonrpc: state_getStorageHash
- summary: Retrieves the storage hash
getStorageSize(key: StorageKey, at?: BlockHash): u64#
- interface: api.rpc.state.getStorageSize
- jsonrpc: state_getStorageSize
- summary: Retrieves the storage size
queryStorage(keys: Vec<StorageKey>, fromBlock: Hash, toBlock?: BlockHash): Vec<StorageChangeSet>#
- interface: api.rpc.state.queryStorage
- jsonrpc: state_queryStorage
- summary: Query historical storage entries (by key) starting from a start block
queryStorageAt(keys: Vec<StorageKey>, at?: BlockHash): Vec<StorageChangeSet>#
- interface: api.rpc.state.queryStorageAt
- jsonrpc: state_queryStorageAt
- summary: Query storage entries (by key) starting at block hash given as the second parameter
subscribeRuntimeVersion(): RuntimeVersion#
- interface: api.rpc.state.subscribeRuntimeVersion
- jsonrpc: state_subscribeRuntimeVersion
- summary: Retrieves the runtime version via subscription
subscribeStorage(keys?: Vec<StorageKey>): StorageChangeSet#
- interface: api.rpc.state.subscribeStorage
- jsonrpc: state_subscribeStorage
- summary: Subscribes to storage changes for the provided keys
syncstate#
genSyncSpec(raw: bool): Json#
- interface: api.rpc.syncstate.genSyncSpec
- jsonrpc: sync_state_genSyncSpec
- summary: Returns the json-serialized chainspec running the node, with a sync state.
system#
accountNextIndex(accountId: AccountId): Index#
- interface: api.rpc.system.accountNextIndex
- jsonrpc: system_accountNextIndex
- summary: Retrieves the next accountIndex as available on the node
addLogFilter(directives: Text): Null#
- interface: api.rpc.system.addLogFilter
- jsonrpc: system_addLogFilter
- summary: Adds the supplied directives to the current log filter
addReservedPeer(peer: Text): Text#
- interface: api.rpc.system.addReservedPeer
- jsonrpc: system_addReservedPeer
- summary: Adds a reserved peer
chain(): Text#
- interface: api.rpc.system.chain
- jsonrpc: system_chain
- summary: Retrieves the chain
chainType(): ChainType#
- interface: api.rpc.system.chainType
- jsonrpc: system_chainType
- summary: Retrieves the chain type
dryRun(extrinsic: Bytes, at?: BlockHash): ApplyExtrinsicResult#
- interface: api.rpc.system.dryRun
- jsonrpc: system_dryRun
- summary: Dry run an extrinsic at a given block
health(): Health#
- interface: api.rpc.system.health
- jsonrpc: system_health
- summary: Return health status of the node
localListenAddresses(): Vec<Text>#
- interface: api.rpc.system.localListenAddresses
- jsonrpc: system_localListenAddresses
- summary: The addresses include a trailing /p2p/ with the local PeerId, and are thus suitable to be passed to addReservedPeer or as a bootnode address for example
localPeerId(): Text#
- interface: api.rpc.system.localPeerId
- jsonrpc: system_localPeerId
- summary: Returns the base58-encoded PeerId of the node
name(): Text#
- interface: api.rpc.system.name
- jsonrpc: system_name
- summary: Retrieves the node name
networkState(): NetworkState#
- interface: api.rpc.system.networkState
- jsonrpc: system_networkState
- summary: Returns current state of the network
nodeRoles(): Vec<NodeRole>#
- interface: api.rpc.system.nodeRoles
- jsonrpc: system_nodeRoles
- summary: Returns the roles the node is running as
peers(): Vec<PeerInfo>#
- interface: api.rpc.system.peers
- jsonrpc: system_peers
- summary: Returns the currently connected peers
properties(): ChainProperties#
- interface: api.rpc.system.properties
- jsonrpc: system_properties
- summary: Get a custom set of properties as a JSON object, defined in the chain spec
removeReservedPeer(peerId: Text): Text#
- interface: api.rpc.system.removeReservedPeer
- jsonrpc: system_removeReservedPeer
- summary: Remove a reserved peer
resetLogFilter(): Null#
- interface: api.rpc.system.resetLogFilter
- jsonrpc: system_resetLogFilter
- summary: Resets the log filter to Substrate defaults
syncState(): SyncState#
- interface: api.rpc.system.syncState
- jsonrpc: system_syncState
- summary: Returns the state of the syncing of the node
version(): Text#
- interface: api.rpc.system.version
- jsonrpc: system_version
- summary: Retrieves the version of the node