#![allow(missing_docs)]
use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::collections::HashMap;
use super::common::{
CommunityData, CurrentPrice, DeveloperData, Image, Links, Localization, MarketCap,
PublicInterestStats, Ticker, TotalVolume,
};
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct CoinsListItem {
pub id: String,
pub symbol: String,
pub name: String,
pub platforms: Option<HashMap<String, Option<String>>>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct SparklineIn7D {
pub price: Vec<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct CoinsMarketItem {
pub id: String,
pub symbol: String,
pub name: String,
pub image: String,
pub current_price: Option<f64>,
pub market_cap: Option<f64>,
pub market_cap_rank: Value,
pub fully_diluted_valuation: Value,
pub total_volume: Option<f64>,
#[serde(rename = "high_24h")]
pub high24_h: Option<f64>,
#[serde(rename = "low_24h")]
pub low24_h: Option<f64>,
#[serde(rename = "price_change_24h")]
pub price_change24_h: Option<f64>,
#[serde(rename = "price_change_percentage_24h")]
pub price_change_percentage24_h: Option<f64>,
#[serde(rename = "market_cap_change_24h")]
pub market_cap_change24_h: Option<f64>,
#[serde(rename = "market_cap_change_percentage_24h")]
pub market_cap_change_percentage24_h: Option<f64>,
pub circulating_supply: Option<f64>,
pub total_supply: Option<f64>,
pub max_supply: Option<f64>,
pub ath: Option<f64>,
pub ath_change_percentage: Option<f64>,
pub ath_date: Option<String>,
pub atl: Option<f64>,
pub atl_change_percentage: Option<f64>,
pub atl_date: Option<String>,
pub roi: Value,
pub last_updated: Option<String>,
#[serde(rename = "sparkline_in_7d")]
pub sparkline_in7_d: Option<SparklineIn7D>,
#[serde(rename = "price_change_percentage_14d_in_currency")]
pub price_change_percentage14_d_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_1h_in_currency")]
pub price_change_percentage1_h_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_1y_in_currency")]
pub price_change_percentage1_y_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_200d_in_currency")]
pub price_change_percentage200_d_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_24h_in_currency")]
pub price_change_percentage24_h_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_30d_in_currency")]
pub price_change_percentage30_d_in_currency: Option<f64>,
#[serde(rename = "price_change_percentage_7d_in_currency")]
pub price_change_percentage7_d_in_currency: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct DetailPlatform {
pub contract_address: String,
pub decimal_place: Option<i64>,
}
#[derive(Serialize, Deserialize, Default, Debug, Clone)]
pub struct CoinsItem {
pub id: String,
pub symbol: String,
pub name: String,
pub web_slug: String,
pub asset_platform_id: Option<String>,
pub platforms: HashMap<String, String>,
pub detail_platforms: HashMap<String, DetailPlatform>,
pub block_time_in_minutes: f64,
pub hashing_algorithm: Value,
pub categories: Vec<String>,
pub public_notice: Value,
pub additional_notices: Vec<Value>,
pub localization: Option<Localization>,
pub description: Description,
pub links: Links,
pub image: Image,
pub country_origin: Value,
pub genesis_date: Value,
pub contract_address: Option<String>,
pub sentiment_votes_up_percentage: Value,
pub sentiment_votes_down_percentage: Value,
pub market_cap_rank: Value,
pub market_data: Option<MarketData>,
pub community_data: Option<CommunityData>,
pub developer_data: Option<DeveloperData>,
pub status_updates: Vec<Value>,
pub last_updated: Value,
pub tickers: Option<Vec<Ticker>>,
}
#[derive(Serialize, Deserialize, Default, Debug, Clone)]
pub struct Description {
pub en: Option<String>,
pub de: Option<String>,
pub es: Option<String>,
pub fr: Option<String>,
pub it: Option<String>,
pub pl: Option<String>,
pub ro: Option<String>,
pub hu: Option<String>,
pub nl: Option<String>,
pub pt: Option<String>,
pub sv: Option<String>,
pub vi: Option<String>,
pub tr: Option<String>,
pub ru: Option<String>,
pub ja: Option<String>,
pub zh: Option<String>,
#[serde(rename = "zh-tw")]
pub zh_tw: Option<String>,
pub ko: Option<String>,
pub ar: Option<String>,
pub th: Option<String>,
pub id: Option<String>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct MarketData {
pub current_price: CurrentPrice,
pub total_value_locked: Value,
pub mcap_to_tvl_ratio: Value,
pub fdv_to_tvl_ratio: Value,
pub roi: Value,
pub ath: Ath,
pub ath_change_percentage: AthChangePercentage,
pub ath_date: AthDate,
pub atl: Atl,
pub atl_change_percentage: AtlChangePercentage,
pub atl_date: AtlDate,
pub market_cap: MarketCap,
pub market_cap_rank: Value,
pub fully_diluted_valuation: FullyDilutedValuation,
pub total_volume: TotalVolume,
#[serde(rename = "high_24h")]
pub high24_h: High24H,
#[serde(rename = "low_24h")]
pub low24_h: Low24H,
#[serde(rename = "price_change_24h")]
pub price_change24_h: Option<f64>,
#[serde(rename = "price_change_percentage_24h")]
pub price_change_percentage24_h: Option<f64>,
#[serde(rename = "price_change_percentage_7d")]
pub price_change_percentage7_d: Option<f64>,
#[serde(rename = "price_change_percentage_14d")]
pub price_change_percentage14_d: Option<f64>,
#[serde(rename = "price_change_percentage_30d")]
pub price_change_percentage30_d: Option<f64>,
#[serde(rename = "price_change_percentage_60d")]
pub price_change_percentage60_d: Option<f64>,
#[serde(rename = "price_change_percentage_200d")]
pub price_change_percentage200_d: Option<f64>,
#[serde(rename = "price_change_percentage_1y")]
pub price_change_percentage1_y: Option<f64>,
#[serde(rename = "market_cap_change_24h")]
pub market_cap_change24_h: Option<f64>,
#[serde(rename = "market_cap_change_percentage_24h")]
pub market_cap_change_percentage24_h: Option<f64>,
#[serde(rename = "price_change_24h_in_currency")]
pub price_change24_h_in_currency: Option<PriceChange24HInCurrency>,
#[serde(rename = "price_change_percentage_1h_in_currency")]
pub price_change_percentage1_h_in_currency: Option<PriceChangePercentage1HInCurrency>,
#[serde(rename = "price_change_percentage_24h_in_currency")]
pub price_change_percentage24_h_in_currency: Option<PriceChangePercentage24HInCurrency>,
#[serde(rename = "price_change_percentage_7d_in_currency")]
pub price_change_percentage7_d_in_currency: Option<PriceChangePercentage7DInCurrency>,
#[serde(rename = "price_change_percentage_14d_in_currency")]
pub price_change_percentage14_d_in_currency: Option<PriceChangePercentage14DInCurrency>,
#[serde(rename = "price_change_percentage_30d_in_currency")]
pub price_change_percentage30_d_in_currency: Option<PriceChangePercentage30DInCurrency>,
#[serde(rename = "price_change_percentage_60d_in_currency")]
pub price_change_percentage60_d_in_currency: Option<PriceChangePercentage60DInCurrency>,
#[serde(rename = "price_change_percentage_200d_in_currency")]
pub price_change_percentage200_d_in_currency: Option<PriceChangePercentage200DInCurrency>,
#[serde(rename = "price_change_percentage_1y_in_currency")]
pub price_change_percentage1_y_in_currency: Option<PriceChangePercentage1YInCurrency>,
#[serde(rename = "market_cap_change_24h_in_currency")]
pub market_cap_change24_h_in_currency: Option<MarketCapChange24HInCurrency>,
#[serde(rename = "market_cap_change_percentage_24h_in_currency")]
pub market_cap_change_percentage24_h_in_currency:
Option<MarketCapChangePercentage24HInCurrency>,
pub total_supply: Value,
pub max_supply: Value,
pub circulating_supply: Value,
#[serde(rename = "sparkline_7d")]
pub sparkline7_d: Option<Sparkline7D>,
pub last_updated: Value,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Ath {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct AthChangePercentage {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct AthDate {
pub aed: Option<String>,
pub ars: Option<String>,
pub aud: Option<String>,
pub bch: Option<String>,
pub bdt: Option<String>,
pub bhd: Option<String>,
pub bmd: Option<String>,
pub bnb: Option<String>,
pub brl: Option<String>,
pub btc: Option<String>,
pub cad: Option<String>,
pub chf: Option<String>,
pub clp: Option<String>,
pub cny: Option<String>,
pub czk: Option<String>,
pub dkk: Option<String>,
pub dot: Option<String>,
pub eos: Option<String>,
pub eth: Option<String>,
pub eur: Option<String>,
pub gbp: Option<String>,
pub hkd: Option<String>,
pub huf: Option<String>,
pub idr: Option<String>,
pub ils: Option<String>,
pub inr: Option<String>,
pub jpy: Option<String>,
pub krw: Option<String>,
pub kwd: Option<String>,
pub lkr: Option<String>,
pub ltc: Option<String>,
pub mmk: Option<String>,
pub mxn: Option<String>,
pub myr: Option<String>,
pub ngn: Option<String>,
pub nok: Option<String>,
pub nzd: Option<String>,
pub php: Option<String>,
pub pkr: Option<String>,
pub pln: Option<String>,
pub rub: Option<String>,
pub sar: Option<String>,
pub sek: Option<String>,
pub sgd: Option<String>,
pub thb: Option<String>,
#[serde(rename = "try")]
pub try_field: Option<String>,
pub twd: Option<String>,
pub uah: Option<String>,
pub usd: Option<String>,
pub vef: Option<String>,
pub vnd: Option<String>,
pub xag: Option<String>,
pub xau: Option<String>,
pub xdr: Option<String>,
pub xlm: Option<String>,
pub xrp: Option<String>,
pub yfi: Option<String>,
pub zar: Option<String>,
pub bits: Option<String>,
pub link: Option<String>,
pub sats: Option<String>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Atl {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct AtlChangePercentage {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct AtlDate {
pub aed: Option<String>,
pub ars: Option<String>,
pub aud: Option<String>,
pub bch: Option<String>,
pub bdt: Option<String>,
pub bhd: Option<String>,
pub bmd: Option<String>,
pub bnb: Option<String>,
pub brl: Option<String>,
pub btc: Option<String>,
pub cad: Option<String>,
pub chf: Option<String>,
pub clp: Option<String>,
pub cny: Option<String>,
pub czk: Option<String>,
pub dkk: Option<String>,
pub dot: Option<String>,
pub eos: Option<String>,
pub eth: Option<String>,
pub eur: Option<String>,
pub gbp: Option<String>,
pub hkd: Option<String>,
pub huf: Option<String>,
pub idr: Option<String>,
pub ils: Option<String>,
pub inr: Option<String>,
pub jpy: Option<String>,
pub krw: Option<String>,
pub kwd: Option<String>,
pub lkr: Option<String>,
pub ltc: Option<String>,
pub mmk: Option<String>,
pub mxn: Option<String>,
pub myr: Option<String>,
pub ngn: Option<String>,
pub nok: Option<String>,
pub nzd: Option<String>,
pub php: Option<String>,
pub pkr: Option<String>,
pub pln: Option<String>,
pub rub: Option<String>,
pub sar: Option<String>,
pub sek: Option<String>,
pub sgd: Option<String>,
pub thb: Option<String>,
#[serde(rename = "try")]
pub try_field: Option<String>,
pub twd: Option<String>,
pub uah: Option<String>,
pub usd: Option<String>,
pub vef: Option<String>,
pub vnd: Option<String>,
pub xag: Option<String>,
pub xau: Option<String>,
pub xdr: Option<String>,
pub xlm: Option<String>,
pub xrp: Option<String>,
pub yfi: Option<String>,
pub zar: Option<String>,
pub bits: Option<String>,
pub link: Option<String>,
pub sats: Option<String>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct FullyDilutedValuation {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct High24H {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Low24H {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChange24HInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct PriceChangePercentage1HInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage24HInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage7DInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage14DInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage30DInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage60DInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage200DInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct PriceChangePercentage1YInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct MarketCapChange24HInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct MarketCapChangePercentage24HInCurrency {
pub aed: Option<f64>,
pub ars: Option<f64>,
pub aud: Option<f64>,
pub bch: Option<f64>,
pub bdt: Option<f64>,
pub bhd: Option<f64>,
pub bmd: Option<f64>,
pub bnb: Option<f64>,
pub brl: Option<f64>,
pub btc: Option<f64>,
pub cad: Option<f64>,
pub chf: Option<f64>,
pub clp: Option<f64>,
pub cny: Option<f64>,
pub czk: Option<f64>,
pub dkk: Option<f64>,
pub dot: Option<f64>,
pub eos: Option<f64>,
pub eth: Option<f64>,
pub eur: Option<f64>,
pub gbp: Option<f64>,
pub hkd: Option<f64>,
pub huf: Option<f64>,
pub idr: Option<f64>,
pub ils: Option<f64>,
pub inr: Option<f64>,
pub jpy: Option<f64>,
pub krw: Option<f64>,
pub kwd: Option<f64>,
pub lkr: Option<f64>,
pub ltc: Option<f64>,
pub mmk: Option<f64>,
pub mxn: Option<f64>,
pub myr: Option<f64>,
pub ngn: Option<f64>,
pub nok: Option<f64>,
pub nzd: Option<f64>,
pub php: Option<f64>,
pub pkr: Option<f64>,
pub pln: Option<f64>,
pub rub: Option<f64>,
pub sar: Option<f64>,
pub sek: Option<f64>,
pub sgd: Option<f64>,
pub thb: Option<f64>,
#[serde(rename = "try")]
pub try_field: Option<f64>,
pub twd: Option<f64>,
pub uah: Option<f64>,
pub usd: Option<f64>,
pub vef: Option<f64>,
pub vnd: Option<f64>,
pub xag: Option<f64>,
pub xau: Option<f64>,
pub xdr: Option<f64>,
pub xlm: Option<f64>,
pub xrp: Option<f64>,
pub yfi: Option<f64>,
pub zar: Option<f64>,
pub bits: Option<f64>,
pub link: Option<f64>,
pub sats: Option<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Sparkline7D {
pub price: Vec<f64>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct History {
pub id: String,
pub symbol: String,
pub name: String,
pub localization: Option<Localization>,
pub image: Image,
pub market_data: Option<HistoryMarketData>,
pub community_data: Option<CommunityData>,
pub developer_data: Option<DeveloperData>,
pub public_interest_stats: Option<PublicInterestStats>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct HistoryMarketData {
pub current_price: CurrentPrice,
pub market_cap: MarketCap,
pub total_volume: TotalVolume,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct MarketChart {
pub prices: Vec<Vec<f64>>,
pub market_caps: Vec<Vec<f64>>,
pub total_volumes: Vec<Vec<f64>>,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct TopGainerLoserCoin {
pub id: String,
pub symbol: String,
pub name: String,
pub image: String,
pub market_cap_rank: u32,
pub usd: f64,
pub usd_24h_vol: f64,
pub usd_24h_change: f64,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct TopGainersLosers {
pub top_gainers: Vec<TopGainerLoserCoin>,
pub top_losers: Vec<TopGainerLoserCoin>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Contract {
pub id: String,
pub symbol: String,
pub name: String,
pub asset_platform_id: String,
pub platforms: Option<HashMap<String, Option<String>>>,
pub block_time_in_minutes: i64,
pub hashing_algorithm: ::serde_json::Value,
pub categories: Vec<String>,
pub public_notice: ::serde_json::Value,
pub additional_notices: Vec<::serde_json::Value>,
pub localization: Localization,
pub description: Description,
pub links: Links,
pub image: Image,
pub country_origin: String,
pub genesis_date: ::serde_json::Value,
pub contract_address: String,
pub sentiment_votes_up_percentage: Value,
pub sentiment_votes_down_percentage: Value,
pub market_cap_rank: Value,
pub coingecko_rank: i64,
pub coingecko_score: f64,
pub developer_score: Value,
pub community_score: f64,
pub liquidity_score: f64,
pub public_interest_score: f64,
pub market_data: MarketData,
pub community_data: CommunityData,
pub developer_data: DeveloperData,
pub public_interest_stats: PublicInterestStats,
pub status_updates: Vec<::serde_json::Value>,
pub last_updated: String,
pub tickers: Vec<Ticker>,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct CategoryId {
pub category_id: String,
pub name: String,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Category {
pub id: String,
pub name: String,
pub market_cap: f64,
#[serde(rename = "market_cap_change_24h")]
pub market_cap_change24_h: f64,
#[serde(rename = "volume_24h")]
pub volume24_h: f64,
pub updated_at: String,
}