From 0bc522d036928bc538ccd13f7623e90f3e963300 Mon Sep 17 00:00:00 2001 From: dasbd72 Date: Sat, 2 Mar 2024 00:02:17 +0800 Subject: [PATCH] bitfinex wallet service --- bitfinex/wallet_service.go | 28 ++++++++++++++++++++++++++++ cmd/ccy-cli/bitfinex.go | 15 +++++++-------- 2 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 bitfinex/wallet_service.go diff --git a/bitfinex/wallet_service.go b/bitfinex/wallet_service.go new file mode 100644 index 0000000..a09ad2c --- /dev/null +++ b/bitfinex/wallet_service.go @@ -0,0 +1,28 @@ +package bitfinex + +import ( + "context" + "encoding/json" + "net/http" +) + +type ( + GetWalletsResponse [][]interface{} +) + +func (c *Client) GetWalletStatus(ctx context.Context, opts ...RequestOption) (*GetWalletsResponse, error) { + res, err := c.CallAPI(ctx, Request_builder{ + Method: http.MethodPost, + Endpoint: "/auth/r/wallets", + SecType: SecTypePrivate, + }.Build(), opts...) + if err != nil { + return nil, err + } + data := &GetWalletsResponse{} + err = json.Unmarshal(res, data) + if err != nil { + return nil, err + } + return data, nil +} diff --git a/cmd/ccy-cli/bitfinex.go b/cmd/ccy-cli/bitfinex.go index 3da8964..6ea41ed 100644 --- a/cmd/ccy-cli/bitfinex.go +++ b/cmd/ccy-cli/bitfinex.go @@ -2,8 +2,8 @@ package main import ( "context" + "encoding/json" "log" - "net/http" "os" "github.com/dasbd72/go-exchange-sdk/bitfinex" @@ -18,12 +18,6 @@ func Bitfinex(cmd *cobra.Command, args []string) { os.Getenv("BFX_API_SECRET"), ) - res, err := c.CallAPI(ctx, bitfinex.Request_builder{ - Method: http.MethodPost, - Endpoint: "/auth/r/wallets", - SecType: bitfinex.SecTypePrivate, - Params: map[string]interface{}{}, - }.Build()) // res, err := c.CallAPI(ctx, bitfinex.Request_builder{ // Method: http.MethodGet, // Endpoint: "/ticker", @@ -31,8 +25,13 @@ func Bitfinex(cmd *cobra.Command, args []string) { // SecType: bitfinex.SecTypePrivate, // Params: map[string]interface{}{}, // }.Build()) + data, err := c.GetWalletStatus(ctx) if err != nil { log.Fatal(err) } - log.Println(string(res)) + b, err := json.MarshalIndent(data, "", " ") + if err != nil { + log.Fatal(err) + } + log.Println(string(b)) }