pub struct AsyncClient<S = DefaultSleeper> { /* private fields */ }Expand description
An async client for interacting with an Esplora API server.
Implementations§
Source§impl<S: Sleeper> AsyncClient<S>
impl<S: Sleeper> AsyncClient<S>
Sourcepub fn from_builder(builder: Builder) -> Result<Self, Error>
pub fn from_builder(builder: Builder) -> Result<Self, Error>
Build an AsyncClient from a Builder.
Sourcepub fn from_client(url: String, client: Client) -> Self
pub fn from_client(url: String, client: Client) -> Self
Build an AsyncClient from a Client.
Sourcepub async fn get_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
pub async fn get_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>
Get a Transaction option given its Txid
Sourcepub async fn get_tx_no_opt(&self, txid: &Txid) -> Result<Transaction, Error>
pub async fn get_tx_no_opt(&self, txid: &Txid) -> Result<Transaction, Error>
Get a Transaction given its Txid.
Sourcepub async fn get_txid_at_block_index(
&self,
block_hash: &BlockHash,
index: usize,
) -> Result<Option<Txid>, Error>
pub async fn get_txid_at_block_index( &self, block_hash: &BlockHash, index: usize, ) -> Result<Option<Txid>, Error>
Get a Txid of a transaction given its index in a block with a given
hash.
Sourcepub async fn get_tx_status(&self, txid: &Txid) -> Result<TxStatus, Error>
pub async fn get_tx_status(&self, txid: &Txid) -> Result<TxStatus, Error>
Get the status of a Transaction given its Txid.
Sourcepub async fn get_tx_info(&self, txid: &Txid) -> Result<Option<Tx>, Error>
pub async fn get_tx_info(&self, txid: &Txid) -> Result<Option<Tx>, Error>
Get transaction info given its Txid.
Sourcepub async fn get_tx_outspends(
&self,
txid: &Txid,
) -> Result<Vec<OutputStatus>, Error>
pub async fn get_tx_outspends( &self, txid: &Txid, ) -> Result<Vec<OutputStatus>, Error>
Get the spend status of a Transaction’s outputs, given its Txid.
Sourcepub async fn get_header_by_hash(
&self,
block_hash: &BlockHash,
) -> Result<BlockHeader, Error>
pub async fn get_header_by_hash( &self, block_hash: &BlockHash, ) -> Result<BlockHeader, Error>
Get a BlockHeader given a particular block hash.
Sourcepub async fn get_block_status(
&self,
block_hash: &BlockHash,
) -> Result<BlockStatus, Error>
pub async fn get_block_status( &self, block_hash: &BlockHash, ) -> Result<BlockStatus, Error>
Get the BlockStatus given a particular BlockHash.
Sourcepub async fn get_block_by_hash(
&self,
block_hash: &BlockHash,
) -> Result<Option<Block>, Error>
pub async fn get_block_by_hash( &self, block_hash: &BlockHash, ) -> Result<Option<Block>, Error>
Sourcepub async fn get_merkle_proof(
&self,
tx_hash: &Txid,
) -> Result<Option<MerkleProof>, Error>
pub async fn get_merkle_proof( &self, tx_hash: &Txid, ) -> Result<Option<MerkleProof>, Error>
Get a merkle inclusion proof for a Transaction with the given
Txid.
Sourcepub async fn get_merkle_block(
&self,
tx_hash: &Txid,
) -> Result<Option<MerkleBlock>, Error>
pub async fn get_merkle_block( &self, tx_hash: &Txid, ) -> Result<Option<MerkleBlock>, Error>
Get a MerkleBlock inclusion proof for a Transaction with the
given Txid.
Sourcepub async fn get_output_status(
&self,
txid: &Txid,
index: u64,
) -> Result<Option<OutputStatus>, Error>
pub async fn get_output_status( &self, txid: &Txid, index: u64, ) -> Result<Option<OutputStatus>, Error>
Get the spending status of an output given a Txid and the output
index.
Sourcepub async fn broadcast(&self, transaction: &Transaction) -> Result<(), Error>
pub async fn broadcast(&self, transaction: &Transaction) -> Result<(), Error>
Broadcast a Transaction to Esplora.
Sourcepub async fn submit_package(
&self,
transactions: &[Transaction],
maxfeerate: Option<f64>,
maxburnamount: Option<f64>,
) -> Result<SubmitPackageResult, Error>
pub async fn submit_package( &self, transactions: &[Transaction], maxfeerate: Option<f64>, maxburnamount: Option<f64>, ) -> Result<SubmitPackageResult, Error>
Broadcast a package of Transactions to Esplora.
If maxfeerate is provided, any transaction whose
fee is higher will be rejected.
If maxburnamount is provided, any transaction
with higher provably unspendable outputs amount
will be rejected.
Sourcepub async fn get_height(&self) -> Result<u32, Error>
pub async fn get_height(&self) -> Result<u32, Error>
Get the current height of the blockchain tip
Sourcepub async fn get_tip_hash(&self) -> Result<BlockHash, Error>
pub async fn get_tip_hash(&self) -> Result<BlockHash, Error>
Get the BlockHash of the current blockchain tip.
Sourcepub async fn get_block_hash(
&self,
block_height: u32,
) -> Result<BlockHash, Error>
pub async fn get_block_hash( &self, block_height: u32, ) -> Result<BlockHash, Error>
Get the BlockHash of a specific block height
Sourcepub async fn get_address_stats(
&self,
address: &Address,
) -> Result<AddressStats, Error>
pub async fn get_address_stats( &self, address: &Address, ) -> Result<AddressStats, Error>
Get information about a specific address, includes confirmed balance and transactions in the mempool.
Sourcepub async fn get_scripthash_stats(
&self,
script: &Script,
) -> Result<ScriptHashStats, Error>
pub async fn get_scripthash_stats( &self, script: &Script, ) -> Result<ScriptHashStats, Error>
Get statistics about a particular Script hash’s confirmed and mempool transactions.
Sourcepub async fn get_address_txs(
&self,
address: &Address,
last_seen: Option<Txid>,
) -> Result<Vec<Tx>, Error>
pub async fn get_address_txs( &self, address: &Address, last_seen: Option<Txid>, ) -> Result<Vec<Tx>, Error>
Get transaction history for the specified address, sorted with newest first.
Returns up to 50 mempool transactions plus the first 25 confirmed transactions. More can be requested by specifying the last txid seen by the previous query.
Sourcepub async fn get_mempool_address_txs(
&self,
address: &Address,
) -> Result<Vec<Tx>, Error>
pub async fn get_mempool_address_txs( &self, address: &Address, ) -> Result<Vec<Tx>, Error>
Get mempool Transactions for the specified Address, sorted with newest first.
Sourcepub async fn scripthash_txs(
&self,
script: &Script,
last_seen: Option<Txid>,
) -> Result<Vec<Tx>, Error>
pub async fn scripthash_txs( &self, script: &Script, last_seen: Option<Txid>, ) -> Result<Vec<Tx>, Error>
Get transaction history for the specified address/scripthash, sorted with newest first. Returns 25 transactions per page. More can be requested by specifying the last txid seen by the previous query.
Sourcepub async fn get_mempool_scripthash_txs(
&self,
script: &Script,
) -> Result<Vec<Tx>, Error>
pub async fn get_mempool_scripthash_txs( &self, script: &Script, ) -> Result<Vec<Tx>, Error>
Get mempool Transaction history for the
specified Script hash, sorted with newest first.
Sourcepub async fn get_mempool_stats(&self) -> Result<MempoolStats, Error>
pub async fn get_mempool_stats(&self) -> Result<MempoolStats, Error>
Get statistics about the mempool.
Sourcepub async fn get_mempool_recent_txs(
&self,
) -> Result<Vec<MempoolRecentTx>, Error>
pub async fn get_mempool_recent_txs( &self, ) -> Result<Vec<MempoolRecentTx>, Error>
Get a list of the last 10 Transactions to enter the mempool.
Sourcepub async fn get_fee_estimates(&self) -> Result<HashMap<u16, f64>, Error>
pub async fn get_fee_estimates(&self) -> Result<HashMap<u16, f64>, Error>
Get a map where the key is the confirmation target (in number of blocks) and the value is the estimated feerate (in sat/vB).
Sourcepub async fn get_block_txs(
&self,
blockhash: &BlockHash,
start_index: Option<u32>,
) -> Result<Vec<Tx>, Error>
pub async fn get_block_txs( &self, blockhash: &BlockHash, start_index: Option<u32>, ) -> Result<Vec<Tx>, Error>
Get up to 25 Transactions from a Block, given its BlockHash,
beginning at start_index (starts from 0 if start_index is None).
The start_index value MUST be a multiple of 25,
else an error will be returned by Esplora.
Sourcepub async fn get_blocks(
&self,
height: Option<u32>,
) -> Result<Vec<BlockSummary>, Error>
pub async fn get_blocks( &self, height: Option<u32>, ) -> Result<Vec<BlockSummary>, Error>
Gets some recent block summaries starting at the tip or at height if
provided.
The maximum number of summaries returned depends on the backend itself:
esplora returns 10 while mempool.space returns 15.
Sourcepub async fn get_address_utxos(
&self,
address: &Address,
) -> Result<Vec<Utxo>, Error>
pub async fn get_address_utxos( &self, address: &Address, ) -> Result<Vec<Utxo>, Error>
Get all UTXOs locked to an address.
Trait Implementations§
Source§impl<S: Clone> Clone for AsyncClient<S>
impl<S: Clone> Clone for AsyncClient<S>
Source§fn clone(&self) -> AsyncClient<S>
fn clone(&self) -> AsyncClient<S>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more