change from coinconvert to coingecko for FIAT conversion
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
ce4615d833
commit
9bc4b463ef
@ -5,6 +5,7 @@ import (
|
||||
"net/http"
|
||||
)
|
||||
|
||||
/* // CoinConvert BTC to CAD converter
|
||||
// example: https://api.coinconvert.net/convert/btc/cad?amount=1
|
||||
const fiatConvertURL = "https://api.coinconvert.net/convert/btc/cad"
|
||||
|
||||
@ -39,3 +40,35 @@ func (c *client) ConvertBTCToCAD(amount int) (int, error) {
|
||||
}
|
||||
return (amount * int(fiatConversion.CAD*1000)) / 100000000, nil // one BTC = one hundred million satoshi's
|
||||
}
|
||||
*/
|
||||
|
||||
const fiatConvertURL = "https://api.coingecko.com/api/v3/coins/bitcoin?localization=false&tickers=false&market_data=true&community_data=false&developer_data=false&sparkline=false"
|
||||
|
||||
type FiatConversion struct {
|
||||
MarketData struct {
|
||||
CurrentPrice struct {
|
||||
CAD int `json:"cad"`
|
||||
} `json:"current_price"`
|
||||
} `json:"market_data"`
|
||||
}
|
||||
|
||||
func (c *client) ConvertBTCToCAD(amount int) (int, error) {
|
||||
fiatConversion := &FiatConversion{}
|
||||
|
||||
req, err := http.NewRequest("GET", fiatConvertURL, nil)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("failed to create new GET request: %v", err)
|
||||
}
|
||||
|
||||
res, err := c.httpClient.Do(req)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("http GET request failed: %v", err)
|
||||
}
|
||||
|
||||
err = c.processResponse(res, fiatConversion)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("failed to process response: %v", err)
|
||||
}
|
||||
|
||||
return (amount * int(fiatConversion.MarketData.CurrentPrice.CAD*1000)) / 100000000, nil // one BTC = one hundred million satoshi's
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user