WhiteBit.Net AI API Quick Map

June 29, 2026 ยท View on GitHub

Use this file to route common user intents to the correct WhiteBit.Net client member. If a method name or parameter is not listed here, inspect WhiteBit.Net/Interfaces/Clients/** before generating code.

Client Roots

IntentUse
REST callsnew WhiteBitRestClient()
WebSocket streams and socket API requestsnew WhiteBitSocketClient()
API key authenticationoptions.ApiCredentials = new WhiteBitCredentials("key", "secret")
Live environmentWhiteBitEnvironment.Live
Custom environmentWhiteBitEnvironment.CreateCustom(name, restAddress, socketAddress)
Dependency injectionservices.AddWhiteBit(options => { ... })
Direct API rootclient.V4Api
Shared REST clientnew WhiteBitRestClient().V4Api.SharedClient
Shared socket clientnew WhiteBitSocketClient().V4Api.SharedClient

V4 REST: Exchange Data

User intentWhiteBit.Net member
Get server timeclient.V4Api.ExchangeData.GetServerTimeAsync()
Get symbols / marketsclient.V4Api.ExchangeData.GetSymbolsAsync()
Get system statusclient.V4Api.ExchangeData.GetSystemStatusAsync()
Get all tickersclient.V4Api.ExchangeData.GetTickersAsync()
Get one tickerclient.V4Api.ExchangeData.GetTickersAsync() then filter by Symbol
Get assetsclient.V4Api.ExchangeData.GetAssetsAsync()
Get order bookclient.V4Api.ExchangeData.GetOrderBookAsync("ETH_USDT")
Get recent tradesclient.V4Api.ExchangeData.GetRecentTradesAsync("ETH_USDT")
Get public deposit/withdrawal infoclient.V4Api.ExchangeData.GetDepositWithdrawalInfoAsync()
Get collateral symbolsclient.V4Api.ExchangeData.GetCollateralSymbolsAsync()
Get futures symbolsclient.V4Api.ExchangeData.GetFuturesSymbolsAsync()
Get public funding historyclient.V4Api.ExchangeData.GetFundingHistoryAsync("BTC_PERP")

V4 REST: Account

User intentWhiteBit.Net member
Get main balancesclient.V4Api.Account.GetMainBalancesAsync()
Get spot balancesclient.V4Api.Account.GetSpotBalancesAsync()
Get one spot balanceclient.V4Api.Account.GetSpotBalancesAsync("USDT")
Get deposit addressclient.V4Api.Account.GetDepositAddressAsync("USDT", network)
Create deposit addressclient.V4Api.Account.CreateDepositAddressAsync("USDT", network)
Get fiat deposit URLclient.V4Api.Account.GetFiatDepositAddressAsync(...)
Withdrawclient.V4Api.Account.WithdrawAsync(...)
Transfer between account typesclient.V4Api.Account.TransferAsync(fromAccount, toAccount, asset, quantity)
Get deposit/withdrawal historyclient.V4Api.Account.GetDepositWithdrawalHistoryAsync(...)
Get deposit/withdrawal settingsclient.V4Api.Account.GetDepositWithdrawalSettingsAsync()
Get mining reward historyclient.V4Api.Account.GetMiningRewardHistoryAsync(...)
Get collateral balancesclient.V4Api.Account.GetCollateralBalancesAsync()
Get collateral balance summaryclient.V4Api.Account.GetCollateralBalanceSummaryAsync()
Get collateral account summaryclient.V4Api.Account.GetCollateralAccountSummaryAsync()
Get account funding historyclient.V4Api.Account.GetAccountFundingHistoryAsync("BTC_PERP")
Set account leverageclient.V4Api.Account.SetAccountLeverageAsync(leverage)
Get trading feesclient.V4Api.Account.GetTradingFeesAsync()
Get hedge modeclient.V4Api.Account.GetHedgeModeAsync()
Set hedge modeclient.V4Api.Account.SetHedgeModeAsync(enableHedgeMode)

V4 REST: Spot Trading

User intentWhiteBit.Net member
Place spot orderclient.V4Api.Trading.PlaceSpotOrderAsync(...)
Place spot market buy by quote amountclient.V4Api.Trading.PlaceSpotOrderAsync(..., type: NewOrderType.Market, quoteQuantity: amount)
Place multiple spot limit ordersclient.V4Api.Trading.PlaceSpotMultipleOrdersAsync(requests)
Cancel spot orderclient.V4Api.Trading.CancelOrderAsync(symbol, orderId)
Cancel spot order by client idclient.V4Api.Trading.CancelOrderAsync(symbol, clientOrderId: id)
Cancel multiple spot ordersclient.V4Api.Trading.CancelOrdersAsync(requests)
Cancel all spot ordersclient.V4Api.Trading.CancelAllOrdersAsync(symbol)
Get open spot ordersclient.V4Api.Trading.GetOpenOrdersAsync(symbol)
Get closed spot ordersclient.V4Api.Trading.GetClosedOrdersAsync(symbol)
Get spot user tradesclient.V4Api.Trading.GetUserTradesAsync(symbol)
Get trades for an orderclient.V4Api.Trading.GetOrderTradesAsync(orderId)
Edit spot orderclient.V4Api.Trading.EditOrderAsync(symbol, orderId, ...)
Set kill switchclient.V4Api.Trading.SetKillSwitchAsync(symbol, timeout)
Get kill switch statusclient.V4Api.Trading.GetKillSwitchStatusAsync(symbol)

V4 REST: Collateral / Futures Trading

User intentWhiteBit.Net member
Place collateral/futures orderclient.V4Api.CollateralTrading.PlaceOrderAsync(...)
Place collateral/futures reduce-only orderclient.V4Api.CollateralTrading.PlaceOrderAsync(..., reduceOnly: true)
Place hedge-mode long/short orderclient.V4Api.CollateralTrading.PlaceOrderAsync(..., positionSide: PositionSide.Long)
Get open positionsclient.V4Api.CollateralTrading.GetOpenPositionsAsync()
Get open positions by symbolclient.V4Api.CollateralTrading.GetOpenPositionsAsync("ETH_PERP")
Get position historyclient.V4Api.CollateralTrading.GetPositionHistoryAsync(symbol)
Get open conditional ordersclient.V4Api.CollateralTrading.GetOpenConditionalOrdersAsync(symbol)
Place collateral OCO orderclient.V4Api.CollateralTrading.PlaceOcoOrderAsync(...)
Cancel collateral OCO orderclient.V4Api.CollateralTrading.CancelOcoOrderAsync(symbol, orderId)
Cancel conditional orderclient.V4Api.CollateralTrading.CancelConditionalOrderAsync(symbol, orderId)
Cancel OTO orderclient.V4Api.CollateralTrading.CancelOTOOrderAsync(symbol, orderId)

V4 REST: Convert, Codes, Sub-Accounts

User intentWhiteBit.Net member
Get convert estimateclient.V4Api.Convert.GetConvertEstimateAsync(fromAsset, toAsset, quantity, direction)
Confirm convert estimateclient.V4Api.Convert.ConfirmConvertAsync(estimateId)
Get convert historyclient.V4Api.Convert.GetConvertHistoryAsync(...)
Create WhiteBit Codeclient.V4Api.Codes.CreateCodeAsync(asset, quantity, passphrase, description)
Apply WhiteBit Codeclient.V4Api.Codes.ApplyCodeAsync(code, passphrase)
Get created codesclient.V4Api.Codes.GetCreatedCodesAsync()
Get code historyclient.V4Api.Codes.GetCodeHistoryAsync()
Create sub-accountclient.V4Api.SubAccount.CreateSubAccountAsync(alias, ...)
Delete sub-accountclient.V4Api.SubAccount.DeleteSubAccountAsync(id)
Edit sub-accountclient.V4Api.SubAccount.EditSubAccountAsync(id, alias, spotEnabled, collateralEnabled)
Get sub-accountsclient.V4Api.SubAccount.GetSubAccountsAsync()
Transfer to/from sub-accountclient.V4Api.SubAccount.SubaccountTransferAsync(id, direction, asset, quantity)
Block sub-accountclient.V4Api.SubAccount.BlockSubaccountAsync(id)
Unblock sub-accountclient.V4Api.SubAccount.UnblockSubaccountAsync(id)
Get sub-account balancesclient.V4Api.SubAccount.GetSubaccountBalancesAsync(id)
Get sub-account transfer historyclient.V4Api.SubAccount.GetSubaccountTransferHistoryAsync()

V4 WebSocket

User intentWhiteBit.Net member
Request trade history over socketsocketClient.V4Api.GetTradeHistoryAsync(symbol, limit)
Subscribe tradessocketClient.V4Api.SubscribeToTradeUpdatesAsync(symbol, handler)
Subscribe many trade streamssocketClient.V4Api.SubscribeToTradeUpdatesAsync(symbols, handler)
Request last pricesocketClient.V4Api.GetLastPriceAsync(symbol)
Subscribe last pricesocketClient.V4Api.SubscribeToLastPriceUpdatesAsync(symbol, handler)
Request tickersocketClient.V4Api.GetTickerAsync(symbol)
Subscribe tickersocketClient.V4Api.SubscribeToTickerUpdatesAsync(symbol, handler)
Subscribe many tickerssocketClient.V4Api.SubscribeToTickerUpdatesAsync(symbols, handler)
Subscribe book tickersocketClient.V4Api.SubscribeToBookTickerUpdatesAsync(symbol, handler)
Subscribe all book tickerssocketClient.V4Api.SubscribeToBookTickerUpdatesAsync(handler)
Request klinessocketClient.V4Api.GetKlinesAsync(symbol, interval, startTime, endTime)
Subscribe klinessocketClient.V4Api.SubscribeToKlineUpdatesAsync(symbol, interval, handler)
Request order booksocketClient.V4Api.GetOrderBookAsync(symbol, depth)
Subscribe order booksocketClient.V4Api.SubscribeToOrderBookUpdatesAsync(symbol, depth, handler)
Request spot balancessocketClient.V4Api.GetSpotBalancesAsync()
Subscribe spot balancessocketClient.V4Api.SubscribeToSpotBalanceUpdatesAsync(assets, handler)
Request margin balancessocketClient.V4Api.GetMarginBalancesAsync()
Subscribe margin balancessocketClient.V4Api.SubscribeToMarginBalanceUpdatesAsync(assets, handler)
Request open orderssocketClient.V4Api.GetOpenOrdersAsync(symbol)
Subscribe open order updatessocketClient.V4Api.SubscribeToOpenOrderUpdatesAsync(symbols, onOrderMessage)
Request closed orderssocketClient.V4Api.GetClosedOrdersAsync(symbol, orderTypes)
Subscribe closed order updatessocketClient.V4Api.SubscribeToClosedOrderUpdatesAsync(symbols, filter, handler)
Request user tradessocketClient.V4Api.GetUserTradesAsync(symbol)
Subscribe user tradessocketClient.V4Api.SubscribeToUserTradeUpdatesAsync(symbols, handler)
Subscribe positionssocketClient.V4Api.SubscribeToPositionUpdatesAsync(handler)
Subscribe borrowssocketClient.V4Api.SubscribeToBorrowUpdatesAsync(handler)
Subscribe account borrow eventssocketClient.V4Api.SubscribeToAccountBorrowEventUpdatesAsync(handler)
Subscribe margin position eventssocketClient.V4Api.SubscribeToAccountMarginPositionEventUpdatesAsync(handler)

SharedApis

User intentWhiteBit.Net member or interface
Shared REST clientnew WhiteBitRestClient().V4Api.SharedClient
Shared socket clientnew WhiteBitSocketClient().V4Api.SharedClient
Shared spot ticker RESTISpotTickerRestClient.GetSpotTickerAsync(new GetTickerRequest(symbol))
Shared spot symbol RESTISpotSymbolRestClient.GetSpotSymbolsAsync(...)
Shared spot order RESTISpotOrderRestClient.PlaceSpotOrderAsync(...)
Shared futures order RESTIFuturesOrderRestClient.PlaceFuturesOrderAsync(...)
Shared balances RESTIBalanceRestClient.GetBalancesAsync(...)
Shared fees RESTIFeeRestClient.GetFeesAsync(...)
Shared ticker socketITickerSocketClient.SubscribeToTickerUpdatesAsync(...)
Shared book ticker socketIBookTickerSocketClient.SubscribeToBookTickerUpdatesAsync(...)
Shared order book socketIOrderBookSocketClient.SubscribeToOrderBookUpdatesAsync(...)
Shared user trade socketIUserTradeSocketClient.SubscribeToUserTradeUpdatesAsync(...)
Shared position socketIPositionSocketClient.SubscribeToPositionUpdatesAsync(...)
Discover shared capabilitiesclient.V4Api.SharedClient.Discover()

For shared socket subscriptions, keep the concrete socket client and unsubscribe with await socketClient.UnsubscribeAsync(subscription.Data).

Result Handling

SituationPattern
REST success checkDirect and shared REST methods return HttpResult<T> / HttpResult
Socket request success checkWebSocket request/response calls return QueryResult<T>
Socket subscription success checkDirect and shared subscriptions return WebSocketResult<UpdateSubscription>
Generic success checkif (!result.Success) { Console.WriteLine(result.Error); return; }
Read result dataRead result.Data only after result.Success
Retry decisionRetry only when result.Error?.IsTransient == true
CancellationPass ct: cancellationToken

Common Routing Pitfalls

Do not useUse instead
WhiteBitClientWhiteBitRestClient
ApiCredentialsWhiteBitCredentials
client.SpotApiclient.V4Api
client.FuturesApiclient.V4Api.CollateralTrading and client.V4Api.Account
client.GeneralApiclient.V4Api.Account, Codes, or SubAccount
ETHUSDT in direct WhiteBit callsETH_USDT
ETHUSDT for WhiteBit perpetual examplesETH_PERP
.Data without .Success checkCheck .Success first
ITickerSocketClient.UnsubscribeAsync(...)Keep the concrete socket client and call socketClient.UnsubscribeAsync(subscription.Data)