web3-0.8.4.0: Ethereum API for Haskell

CopyrightAlexander Krupenkin 2016-2018
LicenseBSD3
Maintainermail@akru.me
Stabilityexperimental
Portabilityunknown
Safe HaskellNone
LanguageHaskell2010

Network.Ethereum.Api.Eth

Description

Ethereum node JSON-RPC API methods with eth_ prefix.

Synopsis

Documentation

protocolVersion :: JsonRpc m => m Text Source #

Returns the current ethereum protocol version.

syncing :: JsonRpc m => m SyncingState Source #

Returns an object with data about the sync status or false.

coinbase :: JsonRpc m => m Address Source #

Returns the client coinbase address.

mining :: JsonRpc m => m Bool Source #

Returns true if client is actively mining new blocks.

hashrate :: JsonRpc m => m Quantity Source #

Returns the number of hashes per second that the node is mining with.

getStorageAt :: JsonRpc m => Address -> Quantity -> DefaultBlock -> m HexString Source #

Returns the value from a storage position at a given address.

getTransactionCount :: JsonRpc m => Address -> DefaultBlock -> m Quantity Source #

Returns the number of transactions sent from an address.

getBlockTransactionCountByHash :: JsonRpc m => HexString -> m Quantity Source #

Returns the number of transactions in a block from a block matching the given block hash.

getBlockTransactionCountByNumber :: JsonRpc m => Quantity -> m Quantity Source #

Returns the number of transactions in a block matching the given block number.

getUncleCountByBlockHash :: JsonRpc m => HexString -> m Quantity Source #

Returns the number of uncles in a block from a block matching the given block hash.

getUncleCountByBlockNumber :: JsonRpc m => Quantity -> m Quantity Source #

Returns the number of uncles in a block from a block matching the given block number.

getCode :: JsonRpc m => Address -> DefaultBlock -> m HexString Source #

Returns code at a given address.

sign :: JsonRpc m => Address -> HexString -> m HexString Source #

Returns an Ethereum specific signature with: sign(keccak256("x19Ethereum Signed Message:n" + len(message) + message))).

sendTransaction :: JsonRpc m => Call -> m HexString Source #

Creates new message call transaction or a contract creation, if the data field contains code.

sendRawTransaction :: JsonRpc m => HexString -> m HexString Source #

Creates new message call transaction or a contract creation for signed transactions.

getBalance :: JsonRpc m => Address -> DefaultBlock -> m Quantity Source #

Returns the balance of the account of given address.

newFilter :: JsonRpc m => Filter e -> m Quantity Source #

Creates a filter object, based on filter options, to notify when the state changes (logs). To check if the state has changed, call getFilterChanges.

getFilterChanges :: JsonRpc m => Quantity -> m [Change] Source #

Polling method for a filter, which returns an array of logs which occurred since last poll.

uninstallFilter :: JsonRpc m => Quantity -> m Bool Source #

Uninstalls a filter with given id. Should always be called when watch is no longer needed.

getLogs :: JsonRpc m => Filter e -> m [Change] Source #

Returns an array of all logs matching a given filter object.

call :: JsonRpc m => Call -> DefaultBlock -> m HexString Source #

Executes a new message call immediately without creating a transaction on the block chain.

estimateGas :: JsonRpc m => Call -> m Quantity Source #

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.

getBlockByHash :: JsonRpc m => HexString -> m Block Source #

Returns information about a block by hash.

getBlockByNumber :: JsonRpc m => Quantity -> m Block Source #

Returns information about a block by block number.

getTransactionByHash :: JsonRpc m => HexString -> m (Maybe Transaction) Source #

Returns the information about a transaction requested by transaction hash.

getTransactionByBlockHashAndIndex :: JsonRpc m => HexString -> Quantity -> m (Maybe Transaction) Source #

Returns information about a transaction by block hash and transaction index position.

getTransactionByBlockNumberAndIndex :: JsonRpc m => DefaultBlock -> Quantity -> m (Maybe Transaction) Source #

Returns information about a transaction by block number and transaction index position.

getTransactionReceipt :: JsonRpc m => HexString -> m (Maybe TxReceipt) Source #

Returns the receipt of a transaction by transaction hash.

accounts :: JsonRpc m => m [Address] Source #

Returns a list of addresses owned by client.

newBlockFilter :: JsonRpc m => m Quantity Source #

Creates a filter in the node, to notify when a new block arrives.

getBlockFilterChanges :: JsonRpc m => Quantity -> m [HexString] Source #

Polling method for a block filter, which returns an array of block hashes occurred since last poll.

blockNumber :: JsonRpc m => m Quantity Source #

Returns the number of most recent block.

gasPrice :: JsonRpc m => m Quantity Source #

Returns the current price per gas in wei.

getUncleByBlockHashAndIndex :: JsonRpc m => HexString -> Quantity -> m Block Source #

Returns information about a uncle of a block by hash and uncle index position.

getUncleByBlockNumberAndIndex :: JsonRpc m => DefaultBlock -> Quantity -> m Block Source #

Returns information about a uncle of a block by number and uncle index position.

newPendingTransactionFilter :: JsonRpc m => m Quantity Source #

Creates a filter in the node, to notify when new pending transactions arrive. To check if the state has changed, call getFilterChanges. Returns a FilterId.

getFilterLogs :: JsonRpc m => Quantity -> m [Change] Source #

Returns an array of all logs matching filter with given id.

getWork :: JsonRpc m => m [HexString] Source #

Returns the hash of the current block, the seedHash, and the boundary condition to be met ("target").

submitWork :: JsonRpc m => HexString -> HexString -> HexString -> m Bool Source #

Used for submitting a proof-of-work solution. Parameters: 1. DATA, 8 Bytes - The nonce found (64 bits) 2. DATA, 32 Bytes - The header's pow-hash (256 bits) 3. DATA, 32 Bytes - The mix digest (256 bits)

submitHashrate :: JsonRpc m => HexString -> HexString -> m Bool Source #

Used for submitting mining hashrate. Parameters: 1. Hashrate, a hexadecimal string representation (32 bytes) of the hash rate 2. ID, String - A random hexadecimal(32 bytes) ID identifying the client