go-coinmarketcap

command module
v0.1.8 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2021 License: MIT Imports: 0 Imported by: 8

README


go-coinmarketcap


The unofficial CoinMarketCap API client for Go.

License Build Status Go Report Card GoDoc PRs Welcome

Supports the CoinMarketCap API Pro Version, V2 and V1 Public API

Contents

Documentation

https://godoc.org/github.com/miguelmota/go-coinmarketcap

Install

go get -u github.com/miguelmota/go-coinmarketcap

Pro V1 (latest)

Type Endpoint Implemented?
Cryptocurrency /v1/cryptocurrency/info
Cryptocurrency /v1/cryptocurrency/map
Cryptocurrency /v1/cryptocurrency/listings/latest
Cryptocurrency /v1/cryptocurrency/market-pairs/latest
Cryptocurrency /v1/cryptocurrency/ohlcv/historical -
Cryptocurrency /v1/cryptocurrency/quotes/latest
Cryptocurrency /v1/cryptocurrency/quotes/historical -
Exchange /v1/exchange/info -
Exchange /v1/exchange/map -
Exchange /v1/exchange/listings/latest -
Exchange /v1/exchange/market-pairs/latest -
Exchange /v1/exchange/quotes/latest -
Exchange /v1/exchange/quotes/historical -
Global Metrics /v1/global-metrics/quotes/latest
Global Metrics /v1/global-metrics/quotes/historical -
Tools /v1/tools/price-conversion

Note: some endpoints require a paid plan.

Getting started

package main

import (
	"fmt"
	"os"

	cmc "github.com/miguelmota/go-coinmarketcap/pro/v1"
)

func main() {
	client := cmc.NewClient(&cmc.Config{
		ProAPIKey: os.Getenv("CMC_PRO_API_KEY"),
	})

	listings, err := client.Cryptocurrency.LatestListings(&cmc.ListingOptions{
		Limit: 1,
	})
	if err != nil {
		panic(err)
	}

	for _, listing := range listings {
		fmt.Println(listing.Name)               // "Bitcoin"
		fmt.Println(listing.Quote["USD"].Price) // 6316.75736886
	}
}

Examples

For more examples, check out the ./pro/v1/example directory and documentation


V2

NOTE: CoinMarketCap deprecated this API on December 2018

Getting started

package main

import (
	"fmt"
	"log"

	cmc "github.com/miguelmota/go-coinmarketcap/v2"
)

func main() {
	tickers, err := cmc.Tickers(&cmc.TickersOptions{
		Start:   0,
		Limit:   100,
		Convert: "USD",
	})
	if err != nil {
		log.Fatal(err)
	}

	for _, ticker := range tickers {
		fmt.Println(ticker.Symbol, ticker.Quotes["USD"].Price)
	}
}

Examples

For more examples, check out the ./v2/example directory and documentation


V1

NOTE: CoinMarketCap deprecated this API on November 2018

Getting started

package main

import (
	"fmt"
	"log"

	cmc "github.com/miguelmota/go-coinmarketcap/v1"
)

func main() {
	tickers, err := cmc.Tickers(&cmc.TickersOptions{
		Start:   0,
		Limit:   100,
		Convert: "USD",
	})
	if err != nil {
		log.Fatal(err)
	}

	for _, ticker := range tickers {
		fmt.Println(ticker.Symbol, ticker.Quotes["USD"].Price)
	}
}

Examples

For more examples, check out the ./v1/example directory and documentation

Contributing

Pull requests are welcome.

Please make sure to add tests when adding new methods.

Development

Test

make test

Release

git tag v0.1.x
make release

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pro
v1
Package coinmarketcap Coin Market Cap API client for Go
Package coinmarketcap Coin Market Cap API client for Go
v1
v2
Package coinmarketcap Coin Market Cap API client for Go
Package coinmarketcap Coin Market Cap API client for Go

Jump to

Keyboard shortcuts

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