Package-level declarations

Types

Link copied to clipboard
@Serializable
data class CoinDetailDTO(val id: String, val symbol: String, val name: String, val assetPlatformId: String? = null, val platforms: Map<String, String?>, val categories: List<String>, val description: LocalizationDTO, val links: LinksDTO, val image: ImageDTO, val genesisDate: String? = null, val marketCapRank: Int? = null, val coingeckoRank: Int? = null, val marketData: MarketDataDTO, val lastUpdated: Instant? = null)

Represents the detailed data for a single coin from the /coins/{id} endpoint.

Link copied to clipboard
@Serializable
data class CoinMarketDTO(val id: String, val symbol: String, val name: String, val imageUrl: String, val currentPrice: Double, val marketCap: Long, val marketCapRank: Int, val fullyDilutedValuation: Long?, val totalVolume: Double, val high24h: Double?, val low24h: Double?, val priceChange24h: Double?, val priceChangePercentage24h: Double?, val marketCapChange24h: Double?, val marketCapChangePercentage24h: Double?, val circulatingSupply: Double, val totalSupply: Double?, val maxSupply: Double?, val ath: Double, val athChangePercentage: Double, val athDate: Instant, val atl: Double, val atlChangePercentage: Double, val atlDate: Instant, val roi: RoiDTO? = null, val lastUpdated: Instant?)
Link copied to clipboard
@Serializable
data class ImageDTO(val thumb: String, val small: String, val large: String)

Represents the nested image URLs. JSON: { "thumb": "...", "small": "...", "large": "..." }

Link copied to clipboard
@Serializable
data class LinksDTO(val homepage: List<String?>, val blockchainSite: List<String?>, val officialForumUrl: List<String?>, val reposUrl: ReposUrlDTO, val subredditUrl: String? = null)

Represents the nested links object.

Link copied to clipboard
@Serializable
data class LocalizationDTO(val en: String? = null, val de: String? = null, val es: String? = null, val fr: String? = null)

Represents localized string data, e.g., for descriptions. JSON: { "en": "...", "de": "...", ... }

Link copied to clipboard
@Serializable
data class MarketDataDTO(val currentPrice: Map<String, String>, val ath: Map<String, String>, val athChangePercentage: Map<String, String>, val athDate: Map<String, Instant>, val atl: Map<String, String>, val atlChangePercentage: Map<String, String>, val atlDate: Map<String, Instant>, val marketCap: Map<String, String>, val marketCapRank: Int? = null, val fullyDilutedValuation: Map<String, String?>, val totalVolume: Map<String, String>, val high24h: Map<String, String?>, val low24h: Map<String, String?>, val priceChange24hInCurrency: Map<String, String?>, val priceChangePercentage24hInCurrency: Map<String, String?>, val marketCapChange24hInCurrency: Map<String, String?>, val marketCapChangePercentage24hInCurrency: Map<String, String?>, val circulatingSupply: String, val totalSupply: String? = null, val maxSupply: String? = null)

Represents the core market data. Numerical values are stored as Strings to be later parsed into BigDecimal for precision.

Link copied to clipboard
@Serializable
data class ReposUrlDTO(val github: List<String?>, val bitbucket: List<String?>)
Link copied to clipboard
@Serializable
data class RoiDTO(val times: Double, val currency: String, val percentage: Double)

Represents the ROI (Return on Investment) data, which can be null. The actual fields might be different if the object is present.