X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=markets%2Fpoloniex.go;h=cadc8295c2464c6dedbab9306671eeea4ae7a031;hb=refs%2Ftags%2Fv0.0.18;hp=9aaeafbfcb1cedc3f6812bb0cd34d61a97ff160d;hpb=50c6eea630c5bf6d1513d093125f11ce30deaff5;p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FFront.git diff --git a/markets/poloniex.go b/markets/poloniex.go index 9aaeafb..cadc829 100644 --- a/markets/poloniex.go +++ b/markets/poloniex.go @@ -20,7 +20,7 @@ func poloniexInvalidCredentialsError(err error) bool { if err == nil { return false } - return strings.Contains(err.Error(), "Invalid API key/secret pair") + return strings.Contains(err.Error(), "Invalid API key/secret pair") || strings.Contains(err.Error(), "Set the API KEY and API SECRET") } func poloniexRestrictedIPError(err error) bool { @@ -52,6 +52,22 @@ func NewPoloniex() *Poloniex { } } +func (p *Poloniex) TestCredentials(apiKey, apiSecret string) error { + client, _ := poloniex.NewClient(apiKey, apiSecret) + + _, err := client.TradeReturnDepositAdresses() + + if poloniexInvalidCredentialsError(err) { + return utils.Error{InvalidCredentials, "invalid poloniex credentials"} + } + + if poloniexRestrictedIPError(err) { + return utils.Error{IPRestricted, "IP restricted api key"} + } + + return err +} + func (p *Poloniex) GetBalance(apiKey, apiSecret string) (Summary, error) { client, _ := poloniex.NewClient(apiKey, apiSecret) var summary Summary