package handlers import ( "context" "codeberg.org/dijitol/trading_post/src/cardmarket" ) type Account struct { UserID uint32 `json:"idUser"` Username string `json:"username"` Type uint8 `json:"isCommercial"` Reputation uint8 `json:"reputation"` SalesCount uint32 `json:"sellCount"` OnVacation bool `json:"onVacation"` Country string `json:"country"` MaySell bool `json:"maySell"` SellerStatus uint8 `json:"sellerActivation"` ShipsFast int8 `json:"shipsFast"` SoldItemCount uint32 `json:"soldItems"` AvgShippingTime uint8 `json:"avgShippingTime"` DisplayLanguageID uint8 `json:"idDisplayLanguage"` Name struct { First string `json:"firstName"` Last string `json:"lastName"` } `json:"name"` HomeAddress struct { ReceiverName string `json:"name"` Extra string `json:"extra"` Street string `json:"street"` PostCode string `json:"zip"` City string `json:"city"` Country string `json:"country"` } `json:"homeAddress"` Email string `json:"email"` PhoneNumber string `json:"phoneNumber"` VAT string `json:"vat"` LegalInformation string `json:"legalInformation"` RegistrationDate string `json:"registerDate"` IsActivated bool `json:"isActivated"` BankAccount struct { AccountOwner string `json:"accountOwner"` IBAN string `json:"iban"` BIC string `json:"bic"` BankName string `json:"bankName"` } `json:"bankAccount"` ArticlesInShoppingCart uint16 `json:"articlesInShoppingCart"` UnreadMessages uint16 `json:"unreadMessages"` Wallet struct { TotalBalance float32 `json:"totalBalance"` MoneyBalance float32 `json:"moneyBalance"` BonusBalance float32 `json:"bonusBalance"` UnpaidAmount float32 `json:"unpaidAmount"` ProviderRechargeAmount float32 `json:"providerRechargeAmount"` CurrencyID uint8 `json:"idCurrency"` CurrencyCode string `json:"currencyCode"` } `json:"moneyDetails"` RiskGroup uint8 `json:"riskGroup"` LossPercentage string `json:"lossPercentage"` } func GetAccountInformation(ctx context.Context, c *cardmarket.ApiClient) (Account, error) { type responseBody struct { Account Account `json:"account"` Links cardmarket.Links `json:"links"` } respBody := &responseBody{} if err := c.Get(ctx, "/account", nil, respBody); err != nil { return Account{}, err } return respBody.Account, nil }