EVM API Reference
Web3 JSON-RPC protocolβ
eth_protocolVersionβ
Returns the current findora protocol version.
Parametersβ
none
Returnsβ
String
- The current ethereum protocol version
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_protocolVersion","params":[],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "54"
}
eth_chainIdβ
Returns the current findora chain ID
Parametersβ
none
Returnsβ
String
- The current findora chain ID
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_chainId","params":[],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x869" # 2153
}
eth_accountsβ
Returns a list of addresses owned by client.
Parametersβ
none
Returnsβ
Array
- 20 Bytes - addresses owned by the client.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": ["0x407d73d8a49eeb85d32cf465507dd71d507100c1"]
}
eth_getBalanceβ
Returns a list of addresses owned by client.
Parametersβ
Address
- 20 Bytes - address to check for balance.Quantity or Tag
- (optional) Integer block number, or the string 'latest', 'earliest' or 'pending'.
params: ["0x407d73d8a49eeb85d32cf465507dd71d507100c1"]
Returnsβ
Quantity
- integer of the current balance in wei.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBalance","params":["0x8D97689C9818892B700e27F316cc3E41e17fBeb9", "latest"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x0234c8a3397aab58"
}
eth_sendTransactionβ
Creates new message call transaction or a contract creation, if the data field contains code.
Parametersβ
Object
- The transaction objectfrom
:Address
- 20 Bytes - The address the transaction is send from.to
:Address
- (optional) 20 Bytes - The address the transaction is directed to.gas
:Quantity
- (optional) Integer of the gas provided for the transaction execution. eth_call consumes zero gas, but this parameter may be needed by some executions.gasPrice
:Quantity
- (optional) Integer of the gas price used for each paid gas.value
:Quantity
- (optional) Integer of the value sent with this transaction.data
:Data
- (optional) 4 byte hash of the method signature followed by encoded parameters. For details see Ethereum Contract ABI.nonce
:Quantity
- (optional) Integer of a nonce. This allows to overwrite your own pending transactions that use the same nonce.condition
:Object
- (optional) Conditional submission of the transaction. Can be either an integer block number { block: 1 } or UTC timestamp (in seconds) { time: 1491290692 } or null.
params: [{
"from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"gas": "0x76c0", // 30400
"gasPrice": "0x9184e72a000", // 10000000000000
"value": "0x9184e72a", // 2441406250
"data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"
}]
Returnsβ
Hash
- 32 Bytes - the transaction hash, or the zero hash if the transaction is not yet available.
Use eth_getTransactionReceipt to get the contract address, after the transaction was mined, when you created a contract.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_sendTransaction","params":[{"from":"0xb60e8dd61c5d32be8058bb8eb970870f07233155","to":"0xd46e8dd67c5d32be8058bb8eb970870f07244567","gas":"0x76c0","gasPrice":"0x9184e72a000","value":"0x9184e72a","data":"0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"}],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
eth_callβ
Creates new message call transaction or a contract creation, if the data field contains code.
Parametersβ
Object
- The transaction call objectfrom
:Address
- 20 Bytes - The address the transaction is send from.to
:Address
- (optional) 20 Bytes - The address the transaction is directed to.gas
:Quantity
- (optional) Integer of the gas provided for the transaction execution. eth_call consumes zero gas, but this parameter may be needed by some executions.gasPrice
:Quantity
- (optional) Integer of the gas price used for each paid gas.value
:Quantity
- (optional) Integer of the value sent with this transaction.data
:Data
- (optional) 4 byte hash of the method signature followed by encoded parameters. For details see Ethereum Contract ABI.
Quantity
orTag
- (optional) Integer block number, or the string 'latest', 'earliest' or 'pending'.
params: [{
"from": "0x407d73d8a49eeb85d32cf465507dd71d507100c1",
"to": "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
"value": "0x186a0" // 100000
}]
Returnsβ
Data
- the return value of executed contract.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_call","params":[{"from":"0x407d73d8a49eeb85d32cf465507dd71d507100c1","to":"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b","value":"0x186a0"}],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x"
}
eth_coinbaseβ
Returns the client coinbase address.
Parametersβ
none
Returnsβ
Data
- 20 bytes - the current coinbase address.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":1}'
Response
{
"id":64,
"jsonrpc": "2.0",
"result": "0x407d73d8a49eeb85d32cf465507dd71d507100c1"
}
eth_gasPriceβ
Returns the current price per gas in wei.
Parametersβ
none
Returnsβ
Quantity
- integer of the current gas price in wei.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_gasPrice","params":[],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x9184e72a000" // 10000000000000
}
eth_blockNumberβ
Returns the number of the most recent block.
Parametersβ
none
Returnsβ
Quantity
- integer of the current block number the client is on.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x4b7" // 1207
}
eth_getStorageAtβ
Returns the value from a storage position at a given address.
Parametersβ
Address
- 20 Bytes - address of the storage.Quantity
- integer of the position in the storage.Quantity
orTag
- (optional) integer block number, or the string 'latest', 'earliest' or 'pending'.
params: [
"0x407d73d8a49eeb85d32cf465507dd71d507100c1",
"0x0", // 0
"0x2" // 2
]
Returnsβ
Data
- the value at this storage position.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getStorageAt","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1","0x0","0x2"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x0000000000000000000000000000000000000000000000000000000000000003"
}
eth_getBlockByHashβ
Returns information about a block by hash.
Parametersβ
Data
- 32 Bytes - Hash of a blockBoolean
- If true it returns the full transaction objects, if false only the hashes of the transactions.
params: [
'0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae',
false
]
Returnsβ
Object
- A block object, or null
when no block was found:
number
:QUANTITY
- the block number. null when its pending block.hash
:DATA
, 32 Bytes - hash of the block. null when its pending block.parentHash
:DATA
, 32 Bytes - hash of the parent block.nonce
:DATA
, 8 Bytes - hash of the generated proof-of-work. null when its pending block.sha3Uncles
:DATA
, 32 Bytes - SHA3 of the uncles data in the block.logsBloom
:DATA
, 256 Bytes - the bloom filter for the logs of the block. null when its pending block.transactionsRoot
:DATA
, 32 Bytes - the root of the transaction trie of the block.stateRoot
:DATA
, 32 Bytes - the root of the final state trie of the block.receiptsRoot
:DATA
, 32 Bytes - the root of the receipts trie of the block.miner
:DATA
, 20 Bytes - the address of the beneficiary to whom the mining rewards were given.difficulty
:QUANTITY
- integer of the difficulty for this block.totalDifficulty
:QUANTITY
- integer of the total difficulty of the chain until this block.extraData
:DATA
- the βextra dataβ field of this block.size
:QUANTITY
- integer the size of this block in bytes.gasLimit
:QUANTITY
- the maximum gas allowed in this block.gasUsed
:QUANTITY
- the total used gas by all transactions in this block.timestamp
:QUANTITY
- the unix timestamp for when the block was collated.transactions
:Array
- Array of transaction objects, or 32 Bytes transaction hashes depending on the last given parameter.uncles
:Array
- Array of uncle hashes.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae", false],"id":1}'
Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"difficulty": "0x4ea3f27bc",
"extraData": "0x476574682f4c5649562f76312e302e302f6c696e75782f676f312e342e32",
"gasLimit": "0x1388",
"gasUsed": "0x0",
"hash": "0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae",
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"miner": "0xbb7b8287f3f0a933474a79eae42cbca977791171",
"mixHash": "0x4fffe9ae21f1c9e15207b1f472d5bbdd68c9595d461666602f2be20daf5e7843",
"nonce": "0x689056015818adbe",
"number": "0x1b4",
"parentHash": "0xe99e022112df268087ea7eafaf4790497fd21dbeeb6bd7a1721df161a6657a54",
"receiptsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
"size": "0x220",
"stateRoot": "0xddc8b0234c2e0cad087c8b389aa7ef01f7d79b2570bccb77ce48648aa61c904d",
"timestamp": "0x55ba467c",
"totalDifficulty": "0x78ed983323d",
"transactions": [
],
"transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"uncles": [
]
}
}
eth_getBlockByNumberβ
Returns information about a block by hash.
Parametersβ
Quantity
orTag
- integer of a block number, or the string 'earliest', 'latest' or 'pending'.Boolean
- If true it returns the full transaction objects, if false only the hashes of the transactions.
params: [
"0x1b4", // 436
true
]
Returnsβ
Object
- A block object, or null
when no block was found:
number
:QUANTITY
- the block number. null when its pending block.hash
:DATA
, 32 Bytes - hash of the block. null when its pending block.parentHash
:DATA
, 32 Bytes - hash of the parent block.author
:Address
- 20 Bytes - alias of 'author'miner
:DATA
, 20 Bytes - the address of the beneficiary to whom the mining rewards were given.gasLimit
:QUANTITY
- the maximum gas allowed in this block.gasUsed
:QUANTITY
- the total used gas by all transactions in this block.timestamp
:QUANTITY
- the unix timestamp for when the block was collated.transactions
:Array
- Array of transaction objects, or 32 Bytes transaction hashes depending on the last given parameter.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockByNumber","params":["0x1b4",true],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"number": "0x1b4", // 436
"hash": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331",
"parentHash": "0x9646252be9520f6e71339a8df9c55e4d7619deeb018d2a3f2d21fc165dde5eb5",
"sealFields": [
"0xe04d296d2460cfb8472af2c5fd05b5a214109c25688d3704aed5484f9a7792f2",
"0x0000000000000042"
],
"sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
"logsBloom": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331",
"transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"stateRoot": "0xd5855eb08b3387c0af375e9cdb6acfc05eb8f519e419b874b6ff2ffda7ed1dff",
"miner": "0x4e65fda2159562a496f9f3522f89122a3088497a",
"difficulty": "0x27f07", // 163591
"totalDifficulty": "0x27f07", // 163591
"extraData": "0x0000000000000000000000000000000000000000000000000000000000000000",
"size": "0x27f07", // 163591
"gasLimit": "0x9f759", // 653145
"minGasPrice": "0x9f759", // 653145
"gasUsed": "0x9f759", // 653145
"timestamp": "0x54e34e8e", // 1424182926
"transactions": [{ ... }, { ... }, ...],
"uncles": [
"0x1606e5...",
"0xd5145a9..."
]
}
}
eth_getTransactionCountβ
Returns the number of transactions sent from an address.
Parametersβ
Address
- 20 Bytes - addressQuantity
orTag
- (optional) integer block number, or the string 'latest', 'earliest' or 'pending'.
params: ["0x407d73d8a49eeb85d32cf465507dd71d507100c1"]
Returnsβ
Quantity
- integer of the number of transactions send from this address.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionCount","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x1" // 1
}
eth_getBlockTransactionCountByHashβ
Returns the number of transactions in a block from a block matching the given block hash.
Parametersβ
Hash
- 32 Bytes - hash of a block
params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"]
Returnsβ
Quantity
- integer of the number of transactions in this block.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockTransactionCountByHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0xb" // 11
}
eth_getBlockTransactionCountByNumberβ
Returns the number of transactions in a block matching the given block number.
Parametersβ
Quantity
orTag
- (optional) integer block number, or the string 'latest', 'earliest' or 'pending'.
params: [
'0xe8', // 232
]
Returnsβ
Quantity
- integer of the number of transactions in this block.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByNumber","params":["0xe8"],"id":1}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0xa" // 10
}
eth_getCodeβ
Returns code at a given address
Parametersβ
Address
- 20 bytes - addressQuantity
orTag
- (optional) integer block number, or the string 'latest', 'earliest' or 'pending'.
params: [
'0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b',
'0x2' // 2
]
Returnsβ
Data
- the code from the given address.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getCode","params":["0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b", "0x2"],"id":1}
Response
{
"id":1,
"jsonrpc": "2.0",
"result": "0x600160008035811a818181146012578301005b601b6001356025565b8060005260206000f25b600060078202905091905056"
}
eth_sendRawTransactionβ
Creates new message call transaction or a contract creation for signed transactions.
Parametersβ
Data
- The signed transaction data.
params: ["0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"]
Returnsβ
Hash
- 32 bytes - the transaction hash, or the zero hash if the transaction is not yet available.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_sendRawTransaction","params":["0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
eth_estimateGasβ
Makes a call or transaction, which won't be added to the blockchain and returns the used gas, which can be used for estimating the used gas.
Parametersβ
Object
- Same as eth_call parameters, except that all properties are optional.from
:Address
- (optional) 20 Bytes - The address the transaction is send from.to
:Address
- (optional when creating new contract) 20 Bytes - The address the transaction is directed to.gas
:Quantity
- (optional) Integer of the gas provided for the transaction execution. eth_call consumes zero gas, but this parameter may be needed by some executions.gasPrice
:Quantity
- (optional) Integer of the gas price used for each paid gas.value
:Quantity
- (optional) Integer of the value sent with this transaction.data
:Data
- (optional) 4 byte hash of the method signature followed by encoded parameters. For details see Ethereum Contract ABI.
Quantity
orTag
- (optional) Integer block number, or the string 'latest', 'earliest' or 'pending', see the default block parameter.
params: ["0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"]
Returnsβ
Quantity
- The amount of gas used.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_estimateGas","params":[{ ... }],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": "0x5208" // 21000
}
eth_getTransactionByHashβ
Returns the information about a transaction requested by transaction hash.
Parametersβ
Hash
- 32 Bytes - hash of a transaction.
params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"]
Returnsβ
Object
- A transaction object, or null when no transaction was found:hash
: Hash - 32 Bytes - hash of the transaction.nonce
:Quantity
- the number of transactions made by the sender prior to this one.blockHash
:Hash
- 32 Bytes - hash of the block where this transaction was in. null when its pending.blockNumber
:Quantity
or Tag - block number where this transaction was in. null when its pending.transactionIndex
:Quantity
- integer of the transactions index position in the block. null when its pending.from
:Address
- 20 Bytes - address of the sender.to
:Address
- 20 Bytes - address of the receiver. null when its a contract creation transaction.value
:Quantity
- value transferred in Wei.gasPrice
:Quantity
- gas price provided by the sender in Wei.gas
:Quantity
- gas provided by the sender.input
:Data
- the data send along with the transaction.v
:Quantity
- the standardised V field of the signature.standardV
:Quantity
- the standardised V field of the signature (0 or 1).r
:Quantity
- the R field of the signature.raw
:Data
- raw transaction datapublicKey
:Hash
- public key of the signer.chainId
:Quantity
- the chain id of the transaction, if any.creates
:Hash
- creates contract hashcondition
:Object
- (optional) conditional submission, Block number in block or timestamp in time or null.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionByHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"hash": "0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b",
"nonce": "0x0", // 0
"blockHash": "0xbeab0aa2411b7ab17f30a99d3cb9c6ef2fc5426d6ad6fd9e2a26a6aed1d1055b",
"blockNumber": "0x15df", // 5599
"transactionIndex": "0x1", // 1
"from": "0x407d73d8a49eeb85d32cf465507dd71d507100c1",
"to": "0x853f43d8a49eeb85d32cf465507dd71d507100c1",
"value": "0x7f110", // 520464
"gas": "0x7f110", // 520464
"gasPrice": "0x09184e72a000",
"input": "0x603880600c6000396000f300603880600c6000396000f3603880600c6000396000f360"
}
}
eth_getTransactionByBlockHashAndIndexβ
Returns information about a transaction by block hash and transaction index position.
Parametersβ
Data
- 32 bytes - hash of a blockQuantity
- integer of the transaction index position
params: [
'0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331',
'0x0' // 0
]
Returnsβ
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getTransactionByBlockHashAndIndex","params":["0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b", "0x0"],"id":1}'
Response See eth_getTransactionByHash
eth_getTransactionByBlockNumberAndIndexβ
Returns information about a transaction by block number and transaction index position.
Parametersβ
Quantity
orTag
- a block number, or the string "earliest", "latest" or "pending".Quantity
- integer of the transaction index position
params: [
'0x29c', // 668
'0x0' // 0
]
Returnsβ
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getTransactionByBlockNumberAndIndex","params":["0x29c", "0x0"],"id":1}'
Response See eth_getTransactionByHash
eth_getTransactionReceiptβ
Returns the receipt of a transaction by transaction hash.
Parametersβ
Hash
- hash of a transaction.
params: ["0x444172bef57ad978655171a8af2cfd89baa02a97fcb773067aef7794d6913374"]
Returnsβ
Object
- A transaction receipt object, ornull
when no receipt was found:blockHash
:Hash
- 32 Bytes - hash of the block where this transaction was in.blockNumber
:Quantity
or Tag - block number where this transaction was in.contractAddress
:Address
- 20 Bytes - The contract address created, if the transaction was a contract creation, otherwise null.cumulativeGasUsed
:Quantity
- The total amount of gas used when this transaction was executed in the block.from
:Address
- 20 Bytes - The address of the sender.to
:Address
- 20 Bytes - The address of the receiver. null when itβs a contract creation transaction.gasUsed
:Quantity
- The amount of gas used by this specific transaction alone.logs
:Array
- Array of log objects, which this transaction generated.logsBloom
:Hash
- 256 Bytes - A bloom filter of logs/events generated by contracts during transaction execution. Used to efficiently rule out transactions without expected logs.root
:Hash
- 32 Bytes - Merkle root of the state trie after the transaction has been executed (optional after Byzantium hard fork EIP609)status
:Quantity
- 0x0 indicates transaction failure , 0x1 indicates transaction success. Set for blocks mined after Byzantium hard fork EIP609, null before.transactionHash
:Hash
- 32 Bytes - hash of the transaction.transactionIndex
:Quantity
- Integer of the transactions index position in the block.
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getTransactionReceipt","params":["0x444172bef57ad978655171a8af2cfd89baa02a97fcb773067aef7794d6913374"],"id":1,"jsonrpc":"2.0"}'
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"blockHash": "0x67c0303244ae4beeec329e0c66198e8db8938a94d15a366c7514626528abfc8c",
"blockNumber": "0x6914b0",
"contractAddress": "0x471a8bf3fd0dfbe20658a97155388cec674190bf", // or null, if none was created
"from": "0xc931d93e97ab07fe42d923478ba2465f2",
"to": null, // value is null because this example transaction is a contract creation
"cumulativeGasUsed": "0x158e33",
"gasUsed": "0xba2e6",
"logs": [], // logs as returned by eth_getFilterLogs, etc.
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"root": null,
"status": "0x1",
"transactionHash": "0x444172bef57ad978655171a8af2cfd89baa02a97fcb773067aef7794d6913374",
"transactionIndex": "0x4"
}
}
eth_getLogsβ
Returns an array of all logs matching a given filter object.
Parametersβ
Object
- The filter options:fromBlock
:QUANTITY
|TAG
- (optional, default: "latest") Integer block number, or "latest" for the last mined block or "pending", "earliest" for not yet mined transactions.toBlock
:QUANTITY
|TAG
- (optional, default: "latest") Integer block number, or "latest" for the last mined block or "pending", "earliest" for not yet mined transactions.address
:DATA
|Array
, 20 Bytes - (optional) Contract address or a list of addresses from which logs should originate.topics
:Array
of DATA, - (optional) Array of 32 Bytes DATA topics. Topics are order-dependent. Each topic can also be an array of DATA with βorβ options.blockhash
:DATA
, 32 Bytes - (optional, future) With the addition of EIP-234, blockHash will be a new filter option which restricts the logs returned to the single block with the 32-byte hash blockHash. Using blockHash is equivalent to fromBlock = toBlock = the block number with hash blockHash. If blockHash is present in in the filter criteria, then neither fromBlock nor toBlock are allowed.
params: [{
"topics": ["0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b"]
}]
Returnsβ
Array
- Array of log objects, or an empty array if nothing has changed since last poll.
- For filters created with
eth_newBlockFilter
the return are block hashes (DATA
, 32 Bytes), e.g. ["0x3454645634534..."]. - For filters created with
eth_newPendingTransactionFilter
the return are transaction hashes (DATA
, 32 Bytes), e.g. ["0x6345343454645..."]. - For filters created with
eth_newFilter
logs are objects with following params:removed
:TAG
- true when the log was removed, due to a chain reorganization. false if its a valid log.logIndex
:QUANTITY
- integer of the log index position in the block. null when its pending log.transactionIndex
:QUANTITY
- integer of the transactions index position log was created from. null when its pending log.transactionHash
:DATA
, 32 Bytes - hash of the transactions this log was created from. null when its pending log.blockHash
:DATA
, 32 Bytes - hash of the block where this log was in. null when its pending. null when its pending log.blockNumber
:QUANTITY
- the block number where this log was in. null when its pending. null when its pending log.address
:DATA
, 20 Bytes - address from which this log originated.data
:DATA
- contains one or more 32 Bytes non-indexed arguments of the log.topics
:Array
ofDATA
- 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.)
Exampleβ
Request
curl localhost:8545 \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_getLogs","params":[{"topics":["0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b"]}],"id":1}'
Response
{
"id":1,
"jsonrpc":"2.0",
"result": [{
"logIndex": "0x1", // 1
"blockNumber":"0x1b4", // 436
"blockHash": "0x8216c5785ac562ff41e2dcfdf5785ac562ff41e2dcfdf829c5a142f1fccd7d",
"transactionHash": "0xdf829c5a142f1fccd7d8216c5785ac562ff41e2dcfdf5785ac562ff41e2dcf",
"transactionIndex": "0x0", // 0
"address": "0x16c5785ac562ff41e2dcfdf829c5a142f1fccd7d",
"data":"0x0000000000000000000000000000000000000000000000000000000000000000",
"topics": ["0x59ebeb90bc63057b6515673c3ecf9438e5058bca0f92585014eced636878c9a5"]
},{
...
}]
}