types

package
v0.0.0-...-2f6433a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 1, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CryptocurrencyMarketPairItem

type CryptocurrencyMarketPairItem struct {
	Exchange struct {
		Id   int    `json:"id"`
		Name string `json:"name"`
		Slug string `json:"slug"`
	} `json:"exchange"`
	MarketId       int    `json:"market_id"`
	MarketPair     string `json:"market_pair"`
	Category       string `json:"category"`
	FeeType        string `json:"fee_type"`
	MarketPairBase struct {
		CurrencyId     int    `json:"currency_id"`
		CurrencySymbol string `json:"currency_symbol"`
		ExchangeSymbol string `json:"exchange_symbol"`
		CurrencyType   string `json:"currency_type"`
	} `json:"market_pair_base"`
	MarketPairQuote struct {
		CurrencyId     int    `json:"currency_id"`
		CurrencySymbol string `json:"currency_symbol"`
		ExchangeSymbol string `json:"exchange_symbol"`
		CurrencyType   string `json:"currency_type"`
	} `json:"market_pair_quote"`
	Quote map[string]struct {
		Price          float64   `json:"price"`
		PriceQuote     float64   `json:"price_quote"`
		Volume24H      float64   `json:"volume_24h"`
		Volume24HBase  float64   `json:"volume_24h_base"`
		Volume24HQuote float64   `json:"volume_24h_quote"`
		LastUpdated    time.Time `json:"last_updated"`
	} `json:"quote"`
}

type CryptocurrencyPricePerformanceStatsItem

type CryptocurrencyPricePerformanceStatsItem struct {
	Id          int       `json:"id"`
	Name        string    `json:"name"`
	Symbol      string    `json:"symbol"`
	Slug        string    `json:"slug"`
	LastUpdated time.Time `json:"last_updated"`
	Periods     map[string]struct {
		OpenTimestamp  time.Time `json:"open_timestamp"`
		HighTimestamp  time.Time `json:"high_timestamp"`
		LowTimestamp   time.Time `json:"low_timestamp"`
		CloseTimestamp time.Time `json:"close_timestamp"`
		Quote          map[string]struct {
			Open           float64   `json:"open"`
			OpenTimestamp  time.Time `json:"open_timestamp"`
			High           float64   `json:"high"`
			HighTimestamp  time.Time `json:"high_timestamp"`
			Low            float64   `json:"low"`
			LowTimestamp   time.Time `json:"low_timestamp"`
			Close          float64   `json:"close"`
			CloseTimestamp time.Time `json:"close_timestamp"`
			PercentChange  float64   `json:"percent_change"`
			PriceChange    float64   `json:"price_change"`
		} `json:"quote"`
	} `json:"periods"`
}

type ExchangeInfoItem

type ExchangeInfoItem struct {
	Id           int        `json:"id"`
	Name         string     `json:"name"`
	Slug         string     `json:"slug"`
	Description  string     `json:"description"`
	DateLaunched *time.Time `json:"date_launched"`
	Notice       *string    `json:"notice"`
	Countries    *[]string  `json:"countries"`
	Fiats        []string   `json:"fiats"`
	Tags         *[]struct {
		Name  string `json:"name"`
		Slug  string `json:"slug"`
		Group string `json:"group"`
	} `json:"tags"`
	Type                  string    `json:"type"`
	MakerFee              float64   `json:"maker_fee"`
	TakerFee              float64   `json:"taker_fee"`
	WeeklyVisits          int       `json:"weekly_visits"`
	SpotVolumeUsd         float64   `json:"spot_volume_usd"`
	SpotVolumeLastUpdated time.Time `json:"spot_volume_last_updated"`
	Urls                  struct {
		Website []string      `json:"website"`
		Twitter []string      `json:"twitter"`
		Blog    []interface{} `json:"blog"`
		Chat    []string      `json:"chat"`
		Fee     []string      `json:"fee"`
	} `json:"urls"`
}

type ExchangeMarketPairItem

type ExchangeMarketPairItem struct {
	MarketId        int         `json:"market_id"`
	MarketPair      string      `json:"market_pair"`
	Category        string      `json:"category"`
	FeeType         string      `json:"fee_type"`
	OutlierDetected int         `json:"outlier_detected"`
	Exclusions      interface{} `json:"exclusions"`
	MarketPairBase  struct {
		CurrencyId     int    `json:"currency_id"`
		CurrencySymbol string `json:"currency_symbol"`
		ExchangeSymbol string `json:"exchange_symbol"`
		CurrencyType   string `json:"currency_type"`
	} `json:"market_pair_base"`
	MarketPairQuote struct {
		CurrencyId     int    `json:"currency_id"`
		CurrencySymbol string `json:"currency_symbol"`
		ExchangeSymbol string `json:"exchange_symbol"`
		CurrencyType   string `json:"currency_type"`
	} `json:"market_pair_quote"`
	Quote map[string]struct {
		Price            float64   `json:"price"`
		Volume24H        float64   `json:"volume_24h"`
		Volume24HBase    float64   `json:"volume_24h_base"`
		Volume24HQuote   float64   `json:"volume_24h_quote"`
		VolumePercentage float64   `json:"volume_percentage"`
		LastUpdated      time.Time `json:"last_updated"`
	} `json:"quote"`
}

type ExchangeQuotesItem

type ExchangeQuotesItem struct {
	Id             int       `json:"id"`
	Name           string    `json:"name"`
	Slug           string    `json:"slug"`
	NumCoins       int       `json:"num_coins"`
	NumMarketPairs int       `json:"num_market_pairs"`
	LastUpdated    time.Time `json:"last_updated"`
	TrafficScore   float64   `json:"traffic_score"`
	Rank           int       `json:"rank"`
	ExchangeScore  float64   `json:"exchange_score"`
	LiquidityScore float64   `json:"liquidity_score"`
	Quote          map[string]struct {
		Volume24H              float64 `json:"volume_24h"`
		Volume24HAdjusted      float64 `json:"volume_24h_adjusted"`
		Volume7D               float64 `json:"volume_7d"`
		Volume30D              float64 `json:"volume_30d"`
		PercentChangeVolume24H float64 `json:"percent_change_volume_24h"`
		PercentChangeVolume7D  float64 `json:"percent_change_volume_7d"`
		PercentChangeVolume30D float64 `json:"percent_change_volume_30d"`
		EffectiveLiquidity24H  float64 `json:"effective_liquidity_24h"`
	} `json:"quote"`
}

type GetCryptocurrencyInfoReq

type GetCryptocurrencyInfoReq struct {
	Id          string `schema:"id,omitempty"`
	Slug        string `schema:"slug,omitempty"`
	Symbol      string `schema:"symbol,omitempty"`
	Address     string `schema:"address,omitempty"`
	SkipInvalid bool   `schema:"skip_invalid,omitempty"`
	Aux         string `schema:"aux,omitempty"`
}

[https://coinmarketcap.com/api/documentation/v1/#operation/getV2CryptocurrencyInfo]

type GetCryptocurrencyInfoResp

type GetCryptocurrencyInfoResp map[string]InfoItem

type GetCryptocurrencyMapReq

type GetCryptocurrencyMapReq struct {
	ListingStatus ListingStatus `schema:"listing_status,omitempty,default:active"`
	Start         int           `schema:"start"`
	Limit         int           `schema:"limit"`
	Sort          Sort          `schema:"sort,omitempty"`
	Symbol        string        `schema:"symbol,omitempty"`
	Aux           string        `schema:"aux,omitempty"`
}

GetMapResp CoinMarketCap ID Map [https://coinmarketcap.com/api/documentation/v1/#operation/getV1CryptocurrencyMap]

func (*GetCryptocurrencyMapReq) ValidParams

func (p *GetCryptocurrencyMapReq) ValidParams() error

type GetCryptocurrencyMapResp

type GetCryptocurrencyMapResp []struct {
	Id                  int       `json:"id"`
	Rank                int       `json:"rank"`
	Name                string    `json:"name"`
	Symbol              string    `json:"symbol"`
	Slug                string    `json:"slug"`
	IsActive            int       `json:"is_active"`
	Status              string    `json:"status"`
	FirstHistoricalData time.Time `json:"first_historical_data"`
	LastHistoricalData  time.Time `json:"last_historical_data"`
	Platform            *struct {
		Id           int    `json:"id"`
		Name         string `json:"name"`
		Symbol       string `json:"symbol"`
		Slug         string `json:"slug"`
		TokenAddress string `json:"token_address"`
	} `json:"platform"`
}

type GetCryptocurrencyMarketPairReq

type GetCryptocurrencyMarketPairReq struct {
	Id            string `schema:"id,omitempty"`
	Slug          string `schema:"slug,omitempty"`
	Symbol        string `schema:"symbol,omitempty"`
	Start         int    `schema:"start,omitempty,default:1"`
	Limit         int    `schema:"limit,omitempty"`
	SortDir       string `schema:"sort_dir,omitempty"`
	Sort          string `schema:"sort,omitempty"`
	Aux           string `schema:"aux,omitempty"`
	MatchedId     string `schema:"matched_id,omitempty"`
	MatchedSymbol string `schema:"matched_symbol,omitempty"`
	Category      string `schema:"category,omitempty"`
	FeeType       string `schema:"fee_type,omitempty"`
	Convert       string `schema:"convert,omitempty"`
	ConvertId     string `schema:"convert_id,omitempty"`
}

type GetCryptocurrencyMarketPairResp

type GetCryptocurrencyMarketPairResp struct {
	Id             int                            `json:"id"`
	Name           string                         `json:"name"`
	Symbol         string                         `json:"symbol"`
	NumMarketPairs int                            `json:"num_market_pairs"`
	MarketPairs    []CryptocurrencyMarketPairItem `json:"market_pairs"`
}

type GetCryptocurrencyPricePerformanceStatsReq

type GetCryptocurrencyPricePerformanceStatsReq struct {
	Id          string `schema:"id,omitempty"`
	Slug        string `schema:"slug,omitempty"`
	Symbol      string `schema:"symbol,omitempty"`
	TimePeriod  string `schema:"time_period,omitempty"`
	Convert     string `schema:"convert,omitempty"`
	ConvertId   string `schema:"convert_id,omitempty"`
	SkipInvalid bool   `schema:"skip_invalid,omitempty,default:true"`
}

Returns price performance statistics [https://coinmarketcap.com/api/documentation/v1/#operation/getV2CryptocurrencyOhlcvLatest]

type GetCryptocurrencyPricePerformanceStatsResp

type GetCryptocurrencyPricePerformanceStatsResp map[string]CryptocurrencyPricePerformanceStatsItem

type GetCryptocurrencyQuoteResp

type GetCryptocurrencyQuoteResp map[string]QuoteItem

type GetCryptocurrencyQuotesReq

type GetCryptocurrencyQuotesReq struct {
	Id          string `schema:"id,omitempty"`
	Slug        string `schema:"slug,omitempty"`
	Symbol      string `schema:"symbol,omitempty"`
	Convert     string `schema:"convert,omitempty"`
	ConvertId   string `schema:"convert_id,omitempty"`
	Aux         string `schema:"aux,omitempty"`
	SkipInvalid bool   `schema:"skip_invalid,omitempty,default:true"`
}

Returns the latest market quote [https://coinmarketcap.com/api/documentation/v1/#operation/getV2CryptocurrencyQuotesLatest]

type GetExchangeInfoReq

type GetExchangeInfoReq struct {
	Id   string `schema:"id,omitempty"`
	Slug string `schema:"slug,omitempty"`
	Aux  string `schema:"aux,omitempty"`
}

type GetExchangeInfoResp

type GetExchangeInfoResp map[string]ExchangeInfoItem

type GetExchangeMapReq

type GetExchangeMapReq struct {
	ListingStatus ListingStatus `schema:"listing_status,omitempty,default:active"`
	Start         int           `schema:"start,omitempty,default:1"`
	Limit         int           `schema:"limit,omitempty"`
	Sort          Sort          `schema:"sort,omitempty"`
	Symbol        string        `schema:"symbol,omitempty"`
	Aux           string        `schema:"aux,omitempty"`
}

func (*GetExchangeMapReq) ValidParams

func (p *GetExchangeMapReq) ValidParams() error

type GetExchangeMapResp

type GetExchangeMapResp []struct {
	Id                  int       `json:"id"`
	Name                string    `json:"name"`
	Slug                string    `json:"slug"`
	IsActive            int       `json:"is_active"`
	Status              string    `json:"status"`
	FirstHistoricalData time.Time `json:"first_historical_data"`
	LastHistoricalData  time.Time `json:"last_historical_data"`
}

type GetExchangeMarketPairReq

type GetExchangeMarketPairReq struct {
	Id            string `schema:"id,omitempty"`
	Slug          string `schema:"slug,omitempty"`
	Start         int    `schema:"start,omitempty,default:1"`
	Limit         int    `schema:"limit,omitempty"`
	Aux           string `schema:"aux,omitempty"`
	MatchedId     string `schema:"matched_id,omitempty"`
	MatchedSymbol string `schema:"matched_symbol,omitempty"`
	Category      string `schema:"category,omitempty"`
	FeeType       string `schema:"fee_type,omitempty"`
	Convert       string `schema:"convert,omitempty"`
	ConvertId     string `schema:"convert_id,omitempty"`
}

type GetExchangeMarketPairResp

type GetExchangeMarketPairResp struct {
	Id             int                      `json:"id"`
	Name           string                   `json:"name"`
	Slug           string                   `json:"slug"`
	NumMarketPairs int                      `json:"num_market_pairs"`
	Volume24H      float64                  `json:"volume_24h"`
	MarketPairs    []ExchangeMarketPairItem `json:"market_pairs"`
}

type GetExchangeQuotesReq

type GetExchangeQuotesReq struct {
	Id        string `schema:"id,omitempty"`
	Slug      string `schema:"slug,omitempty"`
	Convert   string `schema:"convert,omitempty"`
	ConvertId string `schema:"convert_id,omitempty"`
	Aux       string `schema:"aux,omitempty"`
}

type GetExchangeQuotesResp

type GetExchangeQuotesResp map[string]ExchangeQuotesItem

type GetFiatItem

type GetFiatItem struct {
	Id     int    `json:"id"`
	Name   string `json:"name"`
	Sign   string `json:"sign"`
	Symbol string `json:"symbol"`
}

type GetFiatMapReq

type GetFiatMapReq struct {
	Start         int  `schema:"start,omitempty"`
	Limit         int  `schema:"limit,omitempty"`
	Sort          Sort `schema:"sort,omitempty"`
	IncludeMetals bool `schema:"include_metals,omitempty"`
}

type GetFiatResp

type GetFiatResp []GetFiatItem

type InfoItem

type InfoItem struct {
	Urls struct {
		Website      []string `json:"website"`
		TechnicalDoc []string `json:"technical_doc"`
		Twitter      []string `json:"twitter"`
		Reddit       []string `json:"reddit"`
		MessageBoard []string `json:"message_board"`
		Announcement []string `json:"announcement"`
		Chat         []string `json:"chat"`
		Explorer     []string `json:"explorer"`
		SourceCode   []string `json:"source_code"`
	} `json:"urls"`
	Id                            int       `json:"id"`
	Name                          string    `json:"name"`
	Symbol                        string    `json:"symbol"`
	Slug                          string    `json:"slug"`
	Description                   string    `json:"description"`
	Notice                        *string   `json:"notice"`
	DateAdded                     time.Time `json:"date_added"`
	DateLaunched                  time.Time `json:"date_launched"`
	Tags                          []string  `json:"tags"`
	Platform                      *Platform `json:"platform"`
	Category                      string    `json:"category"`
	SelfReportedCirculatingSupply *float64  `json:"self_reported_circulating_supply"`
	SelfReportedMarketCap         *float64  `json:"self_reported_market_cap"`
	SelfReportedTags              *[]string `json:"self_reported_tags"`
	InfiniteSupply                bool      `json:"infinite_supply"`
}

type ListingStatus

type ListingStatus string

type OpenAPIRsp

type OpenAPIRsp struct {
	Status struct {
		Timestamp    time.Time `json:"timestamp"`
		ErrorCode    int       `json:"error_code"`
		ErrorMessage string    `json:"error_message"`
		Elapsed      int       `json:"elapsed"`
		CreditCount  int       `json:"credit_count"`
	} `json:"status"`
	Data jsoniter.RawMessage `json:"data"`
}

type Platform

type Platform struct {
	Id           string `json:"id"`
	Name         string `json:"name"`
	Symbol       string `json:"symbol"`
	Slug         string `json:"slug"`
	TokenAddress string `json:"token_address"`
}

type QuoteItem

type QuoteItem struct {
	Id                int       `json:"id"`
	Name              string    `json:"name"`
	Symbol            string    `json:"symbol"`
	Slug              string    `json:"slug"`
	IsActive          int       `json:"is_active"`
	IsFiat            int       `json:"is_fiat"`
	CirculatingSupply float64   `json:"circulating_supply"`
	TotalSupply       float64   `json:"total_supply"`
	MaxSupply         float64   `json:"max_supply"`
	DateAdded         time.Time `json:"date_added"`
	NumMarketPairs    int       `json:"num_market_pairs"`
	CmcRank           int       `json:"cmc_rank"`
	LastUpdated       time.Time `json:"last_updated"`
	Tags              *[]struct {
		Name     string `json:"name"`
		Slug     string `json:"slug"`
		Category string `json:"category"`
	} `json:"tags"`
	Platform *struct {
		Id           int    `json:"id"`
		Name         string `json:"name"`
		Symbol       string `json:"symbol"`
		Slug         string `json:"slug"`
		TokenAddress string `json:"token_address"`
	} `json:"platform"`
	SelfReportedCirculatingSupply *float64 `json:"self_reported_circulating_supply"`
	SelfReportedMarketCap         *float64 `json:"self_reported_market_cap"`
	Quote                         map[string]struct {
		Price                 float64   `json:"price"`
		Volume24H             float64   `json:"volume_24h"`
		VolumeChange24H       float64   `json:"volume_change_24h"`
		PercentChange1H       float64   `json:"percent_change_1h"`
		PercentChange24H      float64   `json:"percent_change_24h"`
		PercentChange7D       float64   `json:"percent_change_7d"`
		PercentChange30D      float64   `json:"percent_change_30d"`
		MarketCap             float64   `json:"market_cap"`
		MarketCapDominance    float64   `json:"market_cap_dominance"`
		FullyDilutedMarketCap float64   `json:"fully_diluted_market_cap"`
		LastUpdated           time.Time `json:"last_updated"`
	} `json:"quote"`
}

type Sort

type Sort string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL