use reqwest;
use crate::apis::ResponseContent;
use super::{Error, configuration};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum EstimateTransactionSmartFeeError {
Status400(crate::models::InlineResponse40065),
Status401(crate::models::InlineResponse40165),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40365),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
Status501(crate::models::InlineResponse501),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetAddressBalanceError {
Status400(crate::models::InlineResponse4001),
Status401(crate::models::InlineResponse4011),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse4031),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetAddressDetailsError {
Status400(crate::models::InlineResponse4002),
Status401(crate::models::InlineResponse4012),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse4032),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetBlockDetailsByBlockHashError {
Status400(crate::models::InlineResponse40027),
Status401(crate::models::InlineResponse40127),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40327),
Status404(crate::models::InlineResponse4042),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetBlockDetailsByBlockHeightError {
Status400(crate::models::InlineResponse40024),
Status401(crate::models::InlineResponse40124),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40324),
Status404(crate::models::InlineResponse4042),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetFeeRecommendationsError {
Status400(crate::models::InlineResponse40051),
Status401(crate::models::InlineResponse40151),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40351),
Status404(crate::models::InlineResponse4041),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetLastMinedBlockError {
Status400(crate::models::InlineResponse40035),
Status401(crate::models::InlineResponse40135),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40335),
Status404(crate::models::InlineResponse4042),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetNextAvailableNonceError {
Status400(crate::models::InlineResponse40053),
Status401(crate::models::InlineResponse40153),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40353),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetRawTransactionDataError {
Status400(crate::models::InlineResponse40062),
Status401(crate::models::InlineResponse40162),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40362),
Status404(crate::models::InlineResponse404),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetTransactionDetailsByTransactionIdError {
Status400(crate::models::InlineResponse4005),
Status401(crate::models::InlineResponse4015),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse4035),
Status404(crate::models::InlineResponse404),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListConfirmedTokensTransfersByAddressAndTimeRangeError {
Status400(crate::models::InlineResponse40058),
Status401(crate::models::InlineResponse40158),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40358),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListConfirmedTransactionsByAddressError {
Status400(crate::models::InlineResponse40010),
Status401(crate::models::InlineResponse40110),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40310),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListConfirmedTransactionsByAddressAndTimeRangeError {
Status400(crate::models::InlineResponse40057),
Status401(crate::models::InlineResponse40157),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40357),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListInternalTransactionsByAddressAndTimeRangeError {
Status400(crate::models::InlineResponse40059),
Status401(crate::models::InlineResponse40159),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40359),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListLatestMinedBlocksError {
Status400(crate::models::InlineResponse40040),
Status401(crate::models::InlineResponse40140),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40340),
Status404(crate::models::InlineResponse4041),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListTransactionsByBlockHashError {
Status400(crate::models::InlineResponse40016),
Status401(crate::models::InlineResponse40116),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40316),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListTransactionsByBlockHeightError {
Status400(crate::models::InlineResponse40022),
Status401(crate::models::InlineResponse40122),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40322),
Status404(crate::models::InlineResponse4042),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListUnconfirmedTransactionsByAddressError {
Status400(crate::models::InlineResponse40014),
Status401(crate::models::InlineResponse40114),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40314),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ListUnspentTransactionOutputsByAddressError {
Status400(crate::models::InlineResponse40054),
Status401(crate::models::InlineResponse40154),
Status402(crate::models::InlineResponse402),
Status403(crate::models::InlineResponse40354),
Status409(crate::models::InlineResponse409),
Status415(crate::models::InlineResponse415),
Status422(crate::models::InlineResponse422),
Status429(crate::models::InlineResponse429),
Status500(crate::models::InlineResponse500),
UnknownValue(serde_json::Value),
}
pub async fn estimate_transaction_smart_fee(configuration: &configuration::Configuration, blockchain: &str, network: &str, context: Option<&str>, confirmation_target: Option<i32>, estimate_mode: Option<&str>) -> Result<crate::models::EstimateTransactionSmartFeeR, Error<EstimateTransactionSmartFeeError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/estimate-transaction-smart-fee", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = confirmation_target {
local_var_req_builder = local_var_req_builder.query(&[("confirmationTarget", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = estimate_mode {
local_var_req_builder = local_var_req_builder.query(&[("estimateMode", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<EstimateTransactionSmartFeeError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_address_balance(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>) -> Result<crate::models::GetAddressBalanceR, Error<GetAddressBalanceError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/balance", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetAddressBalanceError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_address_details(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>) -> Result<crate::models::GetAddressDetailsR, Error<GetAddressDetailsError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetAddressDetailsError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_block_details_by_block_hash(configuration: &configuration::Configuration, blockchain: &str, network: &str, block_hash: &str, context: Option<&str>) -> Result<crate::models::GetBlockDetailsByBlockHashR, Error<GetBlockDetailsByBlockHashError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/hash/{blockHash}", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), blockHash=crate::apis::urlencode(block_hash));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetBlockDetailsByBlockHashError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_block_details_by_block_height(configuration: &configuration::Configuration, blockchain: &str, network: &str, height: i64, context: Option<&str>) -> Result<crate::models::GetBlockDetailsByBlockHeightR, Error<GetBlockDetailsByBlockHeightError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/height/{height}", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), height=height);
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetBlockDetailsByBlockHeightError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_fee_recommendations(configuration: &configuration::Configuration, blockchain: &str, network: &str, context: Option<&str>) -> Result<crate::models::GetFeeRecommendationsR, Error<GetFeeRecommendationsError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/mempool/fees", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetFeeRecommendationsError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_last_mined_block(configuration: &configuration::Configuration, blockchain: &str, network: &str, context: Option<&str>) -> Result<crate::models::GetLastMinedBlockR, Error<GetLastMinedBlockError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/last", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetLastMinedBlockError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_next_available_nonce(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>) -> Result<crate::models::GetNextAvailableNonceR, Error<GetNextAvailableNonceError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/next-available-nonce", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetNextAvailableNonceError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_raw_transaction_data(configuration: &configuration::Configuration, blockchain: &str, network: &str, transaction_id: &str, context: Option<&str>) -> Result<crate::models::GetRawTransactionDataR, Error<GetRawTransactionDataError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/transactions/{transactionId}/raw-data", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), transactionId=crate::apis::urlencode(transaction_id));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetRawTransactionDataError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn get_transaction_details_by_transaction_id(configuration: &configuration::Configuration, blockchain: &str, network: &str, transaction_id: &str, context: Option<&str>) -> Result<crate::models::GetTransactionDetailsByTransactionIdr, Error<GetTransactionDetailsByTransactionIdError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/transactions/{transactionId}", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), transactionId=crate::apis::urlencode(transaction_id));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<GetTransactionDetailsByTransactionIdError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_confirmed_tokens_transfers_by_address_and_time_range(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, from_timestamp: i32, to_timestamp: i32, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListConfirmedTokensTransfersByAddressAndTimeRangeR, Error<ListConfirmedTokensTransfersByAddressAndTimeRangeError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/tokens-transfers-by-time-range", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("fromTimestamp", &from_timestamp.to_string())]);
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("toTimestamp", &to_timestamp.to_string())]);
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListConfirmedTokensTransfersByAddressAndTimeRangeError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_confirmed_transactions_by_address(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListConfirmedTransactionsByAddressR, Error<ListConfirmedTransactionsByAddressError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/transactions", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListConfirmedTransactionsByAddressError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_confirmed_transactions_by_address_and_time_range(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, from_timestamp: i32, to_timestamp: i32, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListConfirmedTransactionsByAddressAndTimeRangeR, Error<ListConfirmedTransactionsByAddressAndTimeRangeError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/transactions-by-time-range", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("fromTimestamp", &from_timestamp.to_string())]);
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("toTimestamp", &to_timestamp.to_string())]);
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListConfirmedTransactionsByAddressAndTimeRangeError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_internal_transactions_by_address_and_time_range(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, from_timestamp: i32, to_timestamp: i32, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListInternalTransactionsByAddressAndTimeRangeR, Error<ListInternalTransactionsByAddressAndTimeRangeError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/internal-by-time-range", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("fromTimestamp", &from_timestamp.to_string())]);
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
local_var_req_builder = local_var_req_builder.query(&[("toTimestamp", &to_timestamp.to_string())]);
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListInternalTransactionsByAddressAndTimeRangeError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_latest_mined_blocks(configuration: &configuration::Configuration, network: &str, blockchain: &str, count: i32, context: Option<&str>) -> Result<crate::models::ListLatestMinedBlocksR, Error<ListLatestMinedBlocksError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/last/{count}", configuration.base_path, network=crate::apis::urlencode(network), blockchain=crate::apis::urlencode(blockchain), count=count);
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListLatestMinedBlocksError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_transactions_by_block_hash(configuration: &configuration::Configuration, blockchain: &str, network: &str, block_hash: &str, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListTransactionsByBlockHashR, Error<ListTransactionsByBlockHashError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/hash/{blockHash}/transactions", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), blockHash=crate::apis::urlencode(block_hash));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListTransactionsByBlockHashError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_transactions_by_block_height(configuration: &configuration::Configuration, blockchain: &str, network: &str, height: i64, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListTransactionsByBlockHeightR, Error<ListTransactionsByBlockHeightError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/blocks/height/{height}/transactions", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), height=height);
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListTransactionsByBlockHeightError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_unconfirmed_transactions_by_address(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::ListUnconfirmedTransactionsByAddressR, Error<ListUnconfirmedTransactionsByAddressError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/address-transactions-unconfirmed/{address}", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListUnconfirmedTransactionsByAddressError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}
pub async fn list_unspent_transaction_outputs_by_address(configuration: &configuration::Configuration, blockchain: &str, network: &str, address: &str, context: Option<&str>, limit: Option<i32>, offset: Option<i32>) -> Result<crate::models::ListUnspentTransactionOutputsByAddressR, Error<ListUnspentTransactionOutputsByAddressError>> {
let local_var_client = &configuration.client;
let local_var_uri_str = format!("{}/blockchain-data/{blockchain}/{network}/addresses/{address}/unspent-outputs", configuration.base_path, blockchain=crate::apis::urlencode(blockchain), network=crate::apis::urlencode(network), address=crate::apis::urlencode(address));
let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
if let Some(ref local_var_str) = context {
local_var_req_builder = local_var_req_builder.query(&[("context", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = limit {
local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
}
if let Some(ref local_var_str) = offset {
local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
}
if let Some(ref local_var_user_agent) = configuration.user_agent {
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
}
if let Some(ref local_var_apikey) = configuration.api_key {
let local_var_key = local_var_apikey.key.clone();
let local_var_value = match local_var_apikey.prefix {
Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
None => local_var_key,
};
local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
};
let local_var_req = local_var_req_builder.build()?;
let local_var_resp = local_var_client.execute(local_var_req).await?;
let local_var_status = local_var_resp.status();
let local_var_content = local_var_resp.text().await?;
if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
serde_json::from_str(&local_var_content).map_err(Error::from)
} else {
let local_var_entity: Option<ListUnspentTransactionOutputsByAddressError> = serde_json::from_str(&local_var_content).ok();
let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
Err(Error::ResponseError(local_var_error))
}
}