Supported on COMBO (mainnet&testnet) only.
API Endpoint
The format of a COMBO Mainnet API endpoint is
https://combo-mainnet.nodereal.io/v1/{{api_key}}
Here is an example:
https://combo-mainnet.nodereal.io/v1/4c0a1c23661a4e26bcbcwed461e34ea9
The format of a COMBO Testnet API endpoint is
https://combo-testnet.nodereal.io/v1/{{api_key}}
Here is an example:
https://combo-testnet.nodereal.io/v1/4c0a1c23661a4e26bcbcwed461e34ea9
Ethereum JSON-RPC API
eth_accounts
Returns an array of addresses owned by the client.
Parameters
- N/A
Returns
- An array of addresses owned by the client
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_accounts","id":1,"jsonrpc":"2.0"}'
eth_blockNumber
Returns the latest block number of the blockchain.
Parameters
- N/A
Returns
- An integer value of the latest block number encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}'
eth_call
Executes a new message call immediately without creating a transaction on the blockchain.
Parameters
transaction
- object - The transaction call object which contains the following fields:from
- string - (optional) The address from which the transaction is sentto
- string - The address to which the transaction is addressedgas
- integer - (optional) The integer of gas provided for the transaction executiongasPrice
- integer - (optional) The integer of gasPrice used for each paid gas encoded as hexadecimalvalue
- integer - (optional) The integer of value sent with this transaction encoded as hexadecimaldata
- string - (optional) The hash of the method signature and encoded parameters. For more information, see the Contract ABI description in the Solidity documentation
blockNumber/tag
- string - The block number in hexadecimal format or the string latest, earliest, pending, safe or finalized
Returns
data
- The return value of the executed contract method
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_call","params":[{"from":null,"to":"0x6b175474e89094c44da98b954eedeac495271d0f","data":"0x70a082310000000000000000000000006E0d01A76C3Cf4288372a29124A26D4353EE51BE"}, "latest"],"id":1,"jsonrpc":"2.0"}'
eth_chainId
Returns the current network/chain ID, used to sign replay-protected transaction introduced in EIP-155.
Parameters
- N/A
Returns
- It returns a hexadecimal value in string format which represents an integer of the chain ID
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_chainId","params":[],"id":1,"jsonrpc":"2.0"}'
eth_estimateGas
Returns an estimation of gas for a given transaction.
Parameters
transaction
- object - The transaction call object:from
- string - (optional) The address from which the transaction is sentto
- string - The address to which the transaction is addressedgas
- integer - (optional) The integer of gas provided for the transaction executiongasPrice
- integer - (optional) The integer of gasPrice used for each paid gas encoded as hexadecimalvalue
- integer - (optional) The integer of value sent with this transaction encoded as hexadecimaldata
- string - (optional) The hash of the method signature and encoded parameters.
Returns
quantity
- The estimated amount of gas used
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_estimateGas","params":[{"from":"0x8D97689C9818892B700e27F316cc3E41e17fBeb9","to":"0xd3CdA913deB6f67967B99D67aCDFa1712C293601","value":"0x186a0"}],"id":1,"jsonrpc":"2.0"}'
eth_feeHistory
Returns the collection of historical gas information.
Parameters
blockCount
- string/integer - The number of blocks in the requested range. Between 1 and 1024 blocks can be requested in a single query. It will return less than the requested range if not all blocks are availablenewestBlock
- string - The highest number block of the requested range in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chainrewardPercentiles
- integer - A list of percentile values with a monotonic increase in value. The transactions will be ranked by effective tip per gas for each block in the requested range, and the corresponding effective tip for the percentile will be calculated while taking gas consumption into consideration
Returns
oldestBlock
- The lowest number block of the returned range encoded in hexadecimal formatbaseFeePerGas
- An array of block base fees per gas. This includes the next block after the newest of the returned range, because this value can be derived from the newest block. Zeroes are returned for pre-EIP-1559 blocksgasUsedRatio
- An array of block gas used ratios. These are calculated as the ratio of gasUsed and gasLimitreward
- (Optional) An array of effective priority fees per gas data points from a single block. All zeroes are returned if the block is empty
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_feeHistory","params":[4, "latest", [25, 75]],"id":1,"jsonrpc":"2.0"}'
eth_gasPrice
Returns the current gas price on the network in wei.
Parameters
- N/A
Returns
- The hexadecimal value of the current gas price in wei
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_gasPrice","params":[],"id":1,"jsonrpc":"2.0"}'
eth_getBalance
Returns the balance of given account address in wei.
Parameters
address
- string - The address (20 bytes) to check for balanceblockNumber/tag
- string - The block number in hexadecimal format or the string latest, earliest, pending, safe or finalized
Returns
result
- The ETH balance of the specified address in hexadecimal value, measured in wei
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBalance","params":["0x622Fbe99b3A378FAC736bf29d7e23B85E18816eB", "latest"],"id":1,"jsonrpc":"2.0"}'
eth_getBlockByHash
Returns information of the block matching the given block hash.
Parameters
hash
- string - The hash (32 bytes) of the blocktransaction detail flag
- boolean - (default: false) It returns the full transaction objects when it is true otherwise it returns only the hashes of the transactions
Returns
object
- A block object, or null when no block was foundbaseFeePerGas
- A string of the base fee encoded in hexadecimal format. Please note that this response field will not be included in a block requested before the EIP-1559 upgradedifficulty
-The integer of the difficulty for this block encoded as a hexadecimalextraData
- The “extra data” field of this blockgasLimit
- The maximum gas allowed in this block encoded as a hexadecimalgasUsed
- The total used gas by all transactions in this block encoded as a hexadecimalhash
- The block hash of the requested block. null if pendingl1BatchNumber
- The L1 batch number of the blockl1BatchTimestamp
- The L1 batch timestamp of the blocklogsBloom
- The bloom filter for the logs of the block. null if pendingminer
- The address of the beneficiary to whom the mining rewards were givenmixHash
- A string of a 256-bit hash encoded as a hexadecimalnonce
- The hash of the generated proof-of-work. null if pendingnumber
- The block number of the requested block encoded as a hexadecimal. null if pendingparentHash
- The hash of the parent blockreceiptsRoot
- The root of the receipts trie of the blocksha3Uncles
- The SHA3 of the uncles data in the blocksize
- The size of this block in bytes as an Integer value encoded as hexadecimalstateRoot
- The root of the final state trie of the blocktimestamp
- The unix timestamp for when the block was collatedtotalDifficulty
- The integer of the total difficulty of the chain until this block encoded as a hexadecimaltransactions
- An array of transaction objects - please see eth_getTransactionByHash for exact shapetransactionsRoot
- The root of the transaction trie of the blockuncles
- An array of uncle hashes
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockByHash","params":["0x8125d2cdb126d1eb9c40bd3a3a1c00633d5698c0af4dfa90ef2ad32ba81b6f52",false],"id":1,"jsonrpc":"2.0"}'
eth_getBlockByNumber
Returns information of the block matching the given block number.
Parameters
blockNumber/tag
- string - The block number in hexadecimal format or the string latest, earliest, pending, safe or finalizedtransaction detail flag
- boolean - (default: false) The method returns the full transaction objects when this value is true otherwise, it returns only the hashes of the transactions
Returns
object
- A block object, or null when no block was foundbaseFeePerGas
- A string of the base fee encoded in hexadecimal format. Please note that this response field will not be included in a block requested before the EIP-1559 upgradedifficulty
-The integer of the difficulty for this block encoded as a hexadecimalextraData
- The “extra data” field of this blockgasLimit
- The maximum gas allowed in this block encoded as a hexadecimalgasUsed
- The total used gas by all transactions in this block encoded as a hexadecimalhash
- The block hash of the requested block. null if pendingl1BatchNumber
- The L1 batch number of the blockl1BatchTimestamp
- The L1 batch timestamp of the blocklogsBloom
- The bloom filter for the logs of the block. null if pendingminer
- The address of the beneficiary to whom the mining rewards were givenmixHash
- A string of a 256-bit hash encoded as a hexadecimalnonce
- The hash of the generated proof-of-work. null if pendingnumber
- The block number of the requested block encoded as a hexadecimal. null if pendingparentHash
- The hash of the parent blockreceiptsRoot
- The root of the receipts trie of the blocksha3Uncles
- The SHA3 of the uncles data in the blocksize
- The size of this block in bytes as an Integer value encoded as hexadecimalstateRoot
- The root of the final state trie of the blocktimestamp
- The unix timestamp for when the block was collatedtotalDifficulty
- The integer of the total difficulty of the chain until this block encoded as a hexadecimaltransactions
- An array of transaction objects - please see eth_getTransactionByHash for exact shapetransactionsRoot
- The root of the transaction trie of the blockuncles
- An array of uncle hashes
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockByNumber","params":["0x5F4E6",false],"id":1,"jsonrpc":"2.0"}'
eth_getBlockTransactionCountByHash
Returns the number of transactions for the block matching the given block hash.
Parameters
hash
- string - The hash of the block
Returns
result
- The number of transactions associated with a specific block, in hexadecimal value
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockTransactionCountByHash","params":["0x43c330b1bc3b8ec49ae75e67a81712c05791f4c16003fad98d9dca03556e3cf2"],"id":1,"jsonrpc":"2.0"}'
eth_getBlockTransactionCountByNumber
Returns the number of transactions for the block matching the given block number.
Parameters
blockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain
Returns
result
- The number of transactions in a specific block represented in hexadecimal format
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockTransactionCountByNumber","params":["0x6B04E"],"id":1,"jsonrpc":"2.0"}'
eth_getCode
Returns the compiled bytecode of a smart contract.
Parameters
address
- string - The address of the smart contract from which the bytecode will be obtainedblockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain
Returns
result
- The bytecode from a given address returned as a string
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getCode","params":["0x4200000000000000000000000000000000000015","latest"],"id":1,"jsonrpc":"2.0"}'
eth_getFilterChanges
Polling method for a filter, which returns an array of events that have occurred since the last poll.
Parameters
filter ID
- string - The filter id that is returned from eth_newFilter, eth_newBlockFilter or eth_newPendingTransactionFilter
Returns
array
- An array of one of the following, depending on the filter type, or empty if there were no changes since the last poll:eth_newBlockFilter
:blockHash
- The 32 byte hash of a block that meets your filter requirements
eth_newPendingTransactionFilter
:transactionHash
- The 32 byte hash of a transaction that meets your filter requirements
eth_newFilter
:address
- An address from which this log originatedtopics
- An array of zero to four 32 Bytes DATA of indexed log arguments. In Solidity, the first topic is the hash of the signature of the event (e.g. Deposit(address, bytes32, uint256)), except you declare the event with the anonymous specifierdata
- It contains one or more 32 Bytes non-indexed arguments of the logblockNumber
- The block number where this log was in. null when its a pending logtransactionHash
- The hash of the transactions this log was created from. null when its a pending logtransactionIndex
- The integer of the transaction's index position that the log was created from. null when it's a pending logblockHash
- The hash of the block where this log was in. null when its a pending loglogIndex
- The integer of the log index position in the block. null when it's a pending logremoved
- It is true when the log was removed due to a chain reorganization, and false if it's a valid log
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getFilterChanges","params":["YOUR_FILTER_ID"],"id":1,"jsonrpc":"2.0"}'
eth_getFilterLogs
Returns an array of all logs matching filter with given id.
Parameters
id
- string - The filter ID
Returns
result
- An array of log objects, or an empty array if nothing has changed since last polladdress
- string - The address from which this log originatedtopics
- array - An array of (0 to 4) 32 Bytes DATA of indexed log arguments. (In solidity: The first topic is the hash of the signature of the event (e.g. Deposit(address,bytes32,uint256)), except you declared the event with the anonymous specifier)data
- string - It contains one or more 32 Bytes non-indexed arguments of the logblockNumber
- string - The block number where this log was in. null when its pending. Null when it's a pending logtransactionHash
- string - The hash of the transaction from which this log was created from. null if the log is pendingtransactionIndex
- string - The integer of the transaction's index position that the log was created from. Null when it's a pending logblockHash
- string - The hash of the block where this log was in. Null when it's a pending loglogIndex
- string - The integer of the log index position in the block. Null when it's a pending logremoved
- boolean - It is true if log was removed, due to a chain reorganization and false if it's a valid log
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getFilterLogs","params":["0xfba02b32cc0fd31639b68144ebc59fd2"],"id":1,"jsonrpc":"2.0"}'
eth_getLogs
Returns an array of all logs matching a given filter object.
Parameters
object
- The transaction call object which contains the following fields:fromBlock
- string - (optional, default: "latest") The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chaintoBlock
- string - (optional, default: "latest") The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chainaddress
- string - (optional) The contract address or a list of addresses from which logs should originatetopics
- string - (optional) An array of DATA topics and also, the topics are order-dependent.blockHash
- string - (optional) With the addition of EIP-234, blockHash is a new filter option that restricts the logs returned to the block number referenced in the blockHash. Using the blockHash field is equivalent to setting the fromBlock and toBlock to the block number the blockHash references. If blockHash is present in the filter criteria, neither fromBlock nor toBlock is allowed
Returns
array
- An array of log objects, or an empty array if nothing has changed since last poll:
address - An address from which this log originatedtopics
-An array of zero to four 32 Bytes DATA of indexed log arguments. In Solidity, the first topic is the hash of the signature of the event (e.g. Deposit(address, bytes32, uint256)), except you declare the event with the anonymous specifierdata
- It contains one or more 32 Bytes non-indexed arguments of the logblockNumber
- The block number where this log was in. null when it's a pending logtransactionHash
- The hash of the transactions this log was created from. null when its a pending logtransactionIndex
- The integer of the transaction's index position that the log was created from. null when it's a pending logblockHash
- The hash of the block where this log was in. null when it's a pending loglogIndex
- The integer of the log index position in the block. null when it's a pending logremoved
- It is true when the log was removed due to a chain reorganization, and false if it's a valid log
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getLogs","params":[{"address": "0xdAC17F958D2ee523a2206206994597C13D831ec7"}],"id":1,"jsonrpc":"2.0"}'
eth_getProof
Returns the value from a storage position at a given address.
Parameters
address
- string - The address of the account for which the balance is to be checkedstorageKeys
- array[strings] - An array of storage-keys that should be proofed and includedblockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain
Returns
address
- The address associated with the accountaccountProof
- An array of rlp-serialized MerkleTree-Nodes which starts with the stateRoot-Node and follows the path of the SHA3 address as keybalance
- The current balance of the account in weicodeHash
- A 32 byte hash of the code of the accountnonce
- The hash of the generated proof-of-work. Null if pendingstorageHash
- A 32 byte SHA3 of the storageRoot. All storage will deliver a MerkleProof starting with this rootHashstorageProof
- An array of storage-entries as requested. Each entry is an object with the following fields:key
- The requested storage keyvalue
- The storage valueproof
- An array of rlp-serialized MerkleTree-Nodes which starts with the stateRoot-Node and follows the path of the SHA3 address as key
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getProof","params":["0x7F0d15C7FAae65896648C8273B6d7E43f58Fa842",["0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"],"latest"],"id":1,"jsonrpc":"2.0"}'
eth_getStorageAt
Returns the value from a storage position at a given address.
Parameters
address
- string - The address to check for storageposition
- string - The integer of the position in storageblockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain
Returns
result
- It returns the value from a storage position at a given address
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getStorageAt","params":["0xE592427A0AEce92De3Edee1F18E0157C05861564", "0x0", "latest"],"id":1,"jsonrpc":"2.0"}'
eth_getTransactionByBlockHashAndIndex
Returns information about a transaction given a blockhash and transaction index position.
Parameters
blockHash
- string - The block hashindex
- string - An integer of the transaction index position encoded as a hexadecimal
Returns
object
- The transaction response object, or null if no transaction is found:blockHash
- The hash of the block where this log was in. null when it's a pending logblockNumber
- The block number where this log was in. null when it's a pending logfrom
- The address of the sendergas
- The gas provided by the sender, encoded as hexadecimalgasPrice
- The gas price provided by the sender in wei, encoded as hexadecimalhash
- The hash of the transactioninput
- The data sent along with the transactionnonce
- The number of transactions made by the sender before this one encoded as hexadecimalto
- The address of the receiver. null when it's a contract creation transactiontransactionIndex
- The integer of the transaction's index position that the log was created from. null when it's a pending logvalue
- The value transferred in wei encoded as hexadecimaltype
- The transaction typesourceHash
- The hash of the source transaction that created this transactionmint
- The minting event associated with the transactionv
- The standardized V field of the signaturer
The R field of the signatures
The S field of the signatureisSystemTx
It indicates whether the transaction is initiated by the system or not
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionByBlockHashAndIndex","params":["0x43c330b1bc3b8ec49ae75e67a81712c05791f4c16003fad98d9dca03556e3cf2","0x0"],"id":1,"jsonrpc":"2.0"}'
eth_getTransactionByBlockNumberAndIndex
Returns information about a transaction given a block number and transaction index position.
Parameters
blockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chainindex
- string - An integer of the transaction index position encoded as a hexadecimal
Returns
object
- The transaction response object, or null if no transaction is found:blockHash
- The hash of the block where this log was in. null when it's a pending logblockNumber
- The block number where this log was in. null when it's a pending logfrom
- The address of the sendergas
- The gas provided by the sender, encoded as hexadecimalgasPrice
- The gas price provided by the sender in wei, encoded as hexadecimalhash
- The hash of the transactioninput
- The data sent along with the transactionnonce
- The number of transactions made by the sender before this one encoded as hexadecimalto
- The address of the receiver. null when it's a contract creation transactiontransactionIndex
- The integer of the transaction's index position that the log was created from. null when it's a pending logvalue
- The value transferred in wei encoded as hexadecimaltype
- The transaction typesourceHash
- The hash of the source transaction that created this transactionmint
- The minting event associated with the transactionv
- The standardized V field of the signaturer
The R field of the signatures
The S field of the signatureisSystemTx
It indicates whether the transaction is initiated by the system or not
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionByBlockNumberAndIndex","params":["0x6b04e", "0x0"],"id":1,"jsonrpc":"2.0"}'
eth_getTransactionByHash
Returns the information about a transaction from a transaction hash.
Parameters
hash
- string - The hash of a transaction
Returns
object
- The transaction response object, or null if no transaction is found:blockHash
- The hash of the block where this log was in. null when it's a pending logblockNumber
- The block number where this log was in. null when it's a pending logfrom
- The address of the sendergas
- The gas provided by the sender, encoded as hexadecimalgasPrice
- The gas price provided by the sender in wei, encoded as hexadecimalhash
- The hash of the transactioninput
- The data sent along with the transactionnonce
- The number of transactions made by the sender before this one encoded as hexadecimalto
- The address of the receiver. null when it's a contract creation transactiontransactionIndex
- The integer of the transaction's index position that the log was created from. null when it's a pending logvalue
- The value transferred in wei encoded as hexadecimaltype
- The transaction typesourceHash
- The hash of the source transaction that created this transactionmint
- The minting event associated with the transactionv
- The standardized V field of the signaturer
The R field of the signatures
The S field of the signatureisSystemTx
It indicates whether the transaction is initiated by the system or not
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionByHash","params":["0x2d3750f7944818e1a4e6b897b6f6ea4d975fcf46720990eb4eda0c00d926a8fd"],"id":1,"jsonrpc":"2.0"}'
eth_getTransactionCount
Returns the number of transactions sent from an address.
Parameters
address
- string - The address from which the transaction count to be checkedblockNumber
- string - The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain
Returns
result
- The integer of the number of transactions sent from an address encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionCount","params":["0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "latest"],"id":1,"jsonrpc":"2.0"}'
eth_getTransactionReceipt
Returns the receipt of a transaction by transaction hash.
Parameters
hash
- string - The hash of a transaction
Returns
object
- A transaction receipt object, or null when no receipt was foundblockHash
- The hash of the block where this transaction was inblockNumber
- The block number where this transaction was added encoded as a hexadecimalcontractAddress
- The contract address created for contract creation, otherwise nullcumulativeGasUsed
- The total gas used when this transaction was executed in the blockeffectiveGasPrice
- The total base charge plus tip paid for each unit of gasfrom
- The address of the sendergasUsed
- The amount of gas used by this specific transaction alonelogs
- An array of log objects that generated this transactionaddress
- The address from which this log was generatedtopics
- An array of zero to four 32 Bytes DATA of indexed log arguments. In Solidity, the first topic is the hash of the signature of the event (e.g. Deposit(address, bytes32, uint256)), except you declare the event with the anonymous specifierdata
- The 32 byte non-indexed argument of the logblockNumber
- The block number where this log was intransactionHash
- The hash of the transaction from which this log was created from. null if the log is pendingtransactionIndex
- The transactions index position from which this log was created from. null if the log is pendingblockHash
- The hash of the block where this log was inlogIndex
- The integer of log index position in the block encoded as hexadecimal. null if the log is pendingremoved
- It is true if log was removed, due to a chain reorganization and false if it's a valid log
logsBloom
- The bloom filter which is used to retrive related logsstatus
- It is either 1 (success) or 0 (failure) encoded as a hexadecimalto
- The address of the receiver. Null when its a contract creation transactiontransactionHash
- The hash of the transactiontransactionIndex
- The transactions index position in the block encoded as a hexadecimaltype
- The type of value
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionReceipt","params":["0x2d3750f7944818e1a4e6b897b6f6ea4d975fcf46720990eb4eda0c00d926a8fd"],"id":1,"jsonrpc":"2.0"}'
eth_getUncleCountByBlockHash
Returns the number of uncles for the block matching the given block hash.
Parameters
hash
- string - The hash of the block to get uncles for
Returns
uncles
- The integer value of the number of uncles in the block encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getUncleCountByBlockHash","params":["0x8125d2cdb126d1eb9c40bd3a3a1c00633d5698c0af4dfa90ef2ad32ba81b6f52"],"id":1,"jsonrpc":"2.0"}'
eth_getUncleCountByBlockNumber
Returns the number of uncles for the block matching the given block number.
Parameters
blockNumber
- string - The integer of a block number encoded in hexadecimal format starting with 0x
Returns
uncles
- The integer value of the number of uncles in the block encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getUncleCountByBlockNumber","params":["0x6B04E"],"id":1,"jsonrpc":"2.0"}'
eth_hashrate
Returns the number of hashes per second that the node is mining with.
Parameters
- N/A
Returns
hashrate
- The number of hashes per second encoded in hexadecimal format
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_hashrate","params":[],"id":67}'
eth_maxPriorityFeePerGas
Get the priority fee needed to be included in a block.
Parameters
- N/A
Returns
result
- The hex value of the priority fee needed to be included in a block
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_maxPriorityFeePerGas","params":[],"id":1,"jsonrpc":"2.0"}'
eth_mining
Returns true if node is actively mining new blocks.
Parameters
- N/A
Returns
result
- It is true if the node is mining, otherwise false
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_mining","params":[],"id":67}'
eth_newBlockFilter
Creates a filter in the node, to notify when a new block arrives. To check if the state has changed, call eth_getFilterChanges.
Parameters
- N/A
Returns
result
- It returns a filter id to be used when calling eth_getFilterChanges
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_newBlockFilter","params":[],"id":67}'
eth_newFilter
Creates a filter object, based on filter options, to notify when the state changes (logs). To check if the state has changed, call eth_getFilterChanges.
Parameters
object
- The transaction response object which contains the following filter information:
fromBlock
- string - (optional) The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chaintoBlock
- string - (optional) The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chainaddress
- string - (optional) The contract address or a list of addresses from which logs should originatetopics
- string - (optional) An array of DATA topics and also, the topics are order-dependent.
Returns
result
- It returns a filter id to be used when calling eth_getFilterChange
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_newFilter","params":[{"fromBlock": "0xe20360", "toBlock": "0xe20411", "address": "0x6b175474e89094c44da98b954eedeac495271d0f","topics": []}],"id":1}'
eth_sendRawTransaction
Creates new message call transaction or a contract creation for signed transactions.
Parameters
data
- The signed transaction
Returns
result
- The transaction hash, or the zero hash if the transaction is not yet available
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":["signed transaction"],"id":1}'
eth_syncing
Returns an object with the sync status of the node if the node is out-of-sync and is syncing. Returns false when the node is already in sync.
Parameters
- N/A
Returns
result
- The result is false if JSON Object is not syncing otherwise it's true:startingblock
- The block at which the import started encoded as hexadecimalcurrentblock
- The current block, same as eth_blockNumber encoded as hexadecimalhighestblock
- The estimated highest block encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":67}'
eth_uninstallFilter
It uninstalls a filter with the given filter id.
Parameters
filter ID
- string - The filter ID that needs to be uninstalled. It should always be called when watch is no longer needed. Additionally, Filters timeout when they aren't requested with eth_getFilterChanges for a period of time
Returns
result
- It returns true if the filter was successfully uninstalled, otherwise false
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_uninstallFilter","params":["0x10ff0bfba9472c87932c56632eef8f5cc70910e8e71d"],"id":1}'
net_listening
Returns true if client is actively listening for network connections.
Parameters
- N/A
Returns
result
- It's true when the client is actively listening for network connections, otherwise false
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"net_listening","params":[],"id":67}'
net_peerCount
Returns number of peers currently connected to the client.
Parameters
- N/A
Returns
result
- The integer of the number of connected peers encoded as hexadecimal
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":67}'
net_version
Returns the current network id.
Parameters
- N/A
Returns
result
- The string value of current network id. Typical values are as follows:- 1 - ethereum mainnet
- 2 - morden testnet (deprecated)
- 3 - ropsten testnet
- 4 - rinkeby testnet
- 5 - goerli testnet
- 11155111 - sepolia testnet
- 10 - optimism mainnet
- 69 - optimism kovan testnet
- 42 - kovan testnet
- 137 - matic/polygon mainnet
- 80001 - matic/polygon mumbai testnet
- 250 - fantom mainnet
- 100 - xdai mainnet
- 56 - bsc mainne
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"net_version","params":[],"id":67}'
web3_clientVersion
Returns the current version of the chain client.
Parameters
- N/A
Returns
result
- The current client version in string format
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":1}'
web3_sha3
Returns Keccak-256 (not the standardized SHA3-256) hash of the given data.
Parameters
data
- The data in hexadecimal form to convert into a SHA3 hash
Returns
data
- The SHA3 hash of the given string
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"web3_sha3","params":["0x68656c6c6f20776f726c64"],"id":1}'
Debug API
debug_getBadBlocks
Returns a list of the last bad blocks that the client has seen on the network.
Parameters
- N/A
Returns
hash
- The hash of the transactionblock
- A block object, or null when no block was foundbaseFeePerGas
- The integer of the difficulty for this block encoded as hexadecimaldifficulty
- The integer of the difficulty for this block encoded as hexadecimalextraData
- The extra data field of this blockgasLimit
- The maximum gas allowed in this block encoded as hexadecimalgasUsed
- The total used gas by all transactions in this block encoded as hexadecimalhash
- The block hash of the requested block. Null if pendinglogsBloom
- The bloom filter for the logs of the block. Null if pendingminer
- The address of the beneficiary to whom the mining rewards were givenmixHash
- A string of a 256-bit hash encoded as hexadecimalnonce
- The hash of the generated proof-of-work. Null if pendingnumber
- The block number of the requested block encoded as hexadecimal. Null if pendingparentHash
- The hash of the parent blockreceiptsRoot
- The root of the receipts trie of the blocksha3Uncles
- The SHA3 of the uncles data in the blocksize
- The size of this block in bytes as an Integer value encoded as hexadecimalstateRoot
- The root of the final state trie of the blocktimestamp
- The unix timestamp for when the block was collatedtransactions
- An array of transaction objects with the following fields:blockHash
- The hash of the block where this log was in. Null when it's a pending logblockNumber
- The block number where this log was in. Null when it's a pending logfrom
- The address of the sendergas
- The gas provided by the sender, encoded as hexadecimalgasPrice
- The gas price provided by the sender in wei, encoded as hexadecimalmaxFeePerGas
- The maximum fee per gas set in the transactionmaxPriorityFeePerGas
- The maximum priority gas fee set in the transactionhash
- The hash of the transactioninput
- The data sent along with the transactionnonce
- The number of transactions made by the sender before this one encoded as hexadecimalto
- The address of the receiver. Null when it's a contract creation transactiontransactionIndex
- The integer of the transaction's index position that the log was created from. Null when it's a pending logvalue
- The value transferred in wei encoded as hexadecimaltype
- The transaction typeaccessList
- A list of addresses and storage keys that the transaction plans to accesschainId
- The chain id of the transaction, if anyv
- The standardized V field of the signaturer
- The R field of the signatures
- The S field of the signature
transactionsRoot
- The root of the transaction trie of the blockuncles
- An array of uncle hashes
rlp
- The RLP encoded header
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_getBadBlocks","params":[],"id":1,"jsonrpc":"2.0"}'
debug_storageRangeAt
Returns the contract storage for the specified range.
Parameters
blockHash
- string - The hash of the blocktxIndex
- integer - The transaction index for the point in which we want the list of accountsaddress
- The contract addressstartKey
- The offset (hash of storage key)limit
- The number of storage entries to return
Returns
storage
- An object with hash values, and for each of them the key and value it representshash
- The hash valuekey
- The key associated with the hashvalue
- The value associated with the hash
nextKey
- The hash of next key if further storage in range. Otherwise, not included
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_storageRangeAt","params":["0x76f64c40d6493cf00426be2eecdaf3f968768619bfb21ce6c57921be497ab3f7",0,"0xdafea492d9c6733ae3d56b7ed1adb60692c98bc5","0x0000000000000000000000000000000000000000000000000000000000000000",1],"id":1,"jsonrpc":"2.0"}'
debug_traceBlock
Returns a full stack trace of all invoked opcodes of all transactions that were included in a block.
Parameters
block
- The RLP encoded blockobject
- The tracer object with the following fields:tracer
- The type of tracer. It could be callTracer or prestateTracercallTracer
- The calltracer keeps track of all call frames, including depth 0 calls, that are made during a transactionprestateTracer
- The prestateTracer replays the transaction and tracks every part of state that occured during the transaction
tracerConfigtracerConfig
- The object to specify the configurations of the traceronlyTopCall
- boolean - When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame
Returns
result
- A result array with the following fields:type
- The type of the callfrom
- The address the transaction is sent fromto
- The address the transaction is directed tovalue
- The integer of the value sent with this transactiongas
- The integer of the gas provided for the transaction executiongasUsed
- The integer of the gas usedinput
- The data given at the time of inputoutput
- The data which is returned as an outputcalls
- A list of sub-calls
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_traceBlock","params":["RLP_ENCODED_BLOCK", {"tracer": "callTracer"}],"id":1,"jsonrpc":"2.0"}'
debug_traceBlockByHash
Returns the possible tracing result number by executing all transactions in the block specified by the block hash with a tracer (Trace Mode required).
Parameters
blockHash
- The hash of the block to be tracedobject
- The tracer object with the following fields:tracer
- The type of tracer. It could be callTracer or prestateTracercallTracer
- The calltracer keeps track of all call frames, including depth 0 calls, that are made during a transactionprestateTracer
- The prestateTracer replays the transaction and tracks every part of state that occured during the transaction
tracerConfigtracerConfig
- The object to specify the configurations of the traceronlyTopCall
- boolean - When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame
Returns
result
- A result array with the following fields:type
- The type of the callfrom
- The address the transaction is sent fromto
- The address the transaction is directed tovalue
- The integer of the value sent with this transactiongas
- The integer of the gas provided for the transaction executiongasUsed
- The integer of the gas usedinput
- The data given at the time of inputoutput
- The data which is returned as an outputcalls
- A list of sub-calls
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_traceBlockByHash","params":["0x8125d2cdb126d1eb9c40bd3a3a1c00633d5698c0af4dfa90ef2ad32ba81b6f52", {"tracer": "callTracer"}],"id":1,"jsonrpc":"2.0"}'
debug_traceBlockByNumber
Returns the tracing result by executing all transactions in the block specified by number with a tracer (Trace Mode required).
Parameters
blockNumber
- The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chainobject
- The tracer object with the following fields:tracer
- The type of tracer. It could be callTracer or prestateTracercallTracer
- The calltracer keeps track of all call frames, including depth 0 calls, that are made during a transactionprestateTracer
- The prestateTracer replays the transaction and tracks every part of state that occured during the transaction
tracerConfigtracerConfig
- The object to specify the configurations of the traceronlyTopCall
- boolean - When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame
Returns
result
- A result array with the following fields:type
- The type of the callfrom
- The address the transaction is sent fromto
- The address the transaction is directed tovalue
- The integer of the value sent with this transactiongas
- The integer of the gas provided for the transaction executiongasUsed
- The integer of the gas usedinput
- The data given at the time of inputoutput
- The data which is returned as an outputcalls
- A list of sub-calls
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_traceBlockByNumber","params":["0x5F4E6", {"tracer": "callTracer"}],"id":1,"jsonrpc":"2.0"}'
debug_traceTransaction
Returns all traces of a given transaction (Trace Mode required).
Parameters
transactionHash
- The transaction hash that needs to be traced, encoded in hexadecimal formatobject
- The tracer object with the following fields:tracer
- The type of tracer. It could be callTracer or prestateTracercallTracer
- The calltracer keeps track of all call frames, including depth 0 calls, that are made during a transactionprestateTracer
- The prestateTracer replays the transaction and tracks every part of state that occured during the transaction
tracerConfigtracerConfig
- The object to specify the configurations of the traceronlyTopCall
- boolean - When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame
timeout
- A string of decimal integers that overrides the JavaScript-based tracing calls default timeout of 5 seconds.
Returns
result
- A result array with the following fields:type
- The type of the callfrom
- The address the transaction is sent fromto
- The address the transaction is directed tovalue
- The integer of the value sent with this transactiongas
- The integer of the gas provided for the transaction executiongasUsed
- The integer of the gas usedinput
- The data given at the time of inputoutput
- The data which is returned as an outputerror
- The type of error, if anyrevertReason
- The type solidity revert reason, if anycalls
- A list of sub-calls
Example
curl https://combo-mainnet.nodereal.io/v1/{{api_key}} \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"debug_traceTransaction","params":["0x2d3750f7944818e1a4e6b897b6f6ea4d975fcf46720990eb4eda0c00d926a8fd", {"tracer": "callTracer"}], "id":1,"jsonrpc":"2.0"}'