GateIo.Net AI API Quick Map

July 21, 2026 ยท View on GitHub

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

Client Roots

IntentUse
REST callsnew GateIoRestClient()
WebSocket streams and socket API requestsnew GateIoSocketClient()
API key authenticationoptions.ApiCredentials = new GateIoCredentials("key", "secret")
Live environmentGateIoEnvironment.Live
Demo/test environmentGateIoEnvironment.Demo
Dependency injectionservices.AddGateIo(options => { ... })
Native spot symbol format"BTC_USDT" / "ETH_USDT"
Perpetual futures settlement asset"usdt", "btc", or "usd"

Spot REST

User intentGateIo.Net member
Get server timeclient.SpotApi.ExchangeData.GetServerTimeAsync()
Get supported assetsclient.SpotApi.ExchangeData.GetAssetsAsync()
Get one assetclient.SpotApi.ExchangeData.GetAssetAsync("ETH")
Get supported spot symbolsclient.SpotApi.ExchangeData.GetSymbolsAsync()
Get one spot symbolclient.SpotApi.ExchangeData.GetSymbolAsync("ETH_USDT")
Get latest spot tickerclient.SpotApi.ExchangeData.GetTickersAsync("ETH_USDT")
Get all spot tickersclient.SpotApi.ExchangeData.GetTickersAsync()
Get spot order bookclient.SpotApi.ExchangeData.GetOrderBookAsync("ETH_USDT")
Get recent spot tradesclient.SpotApi.ExchangeData.GetTradesAsync("ETH_USDT")
Get spot klines/candlesclient.SpotApi.ExchangeData.GetKlinesAsync("ETH_USDT", KlineInterval.OneMinute)
Get asset networksclient.SpotApi.ExchangeData.GetNetworksAsync("ETH")
Get discount tiersclient.SpotApi.ExchangeData.GetDiscountTiersAsync()
Get loan margin tiersclient.SpotApi.ExchangeData.GetLoanMarginTiersAsync()
Get lending symbolsclient.SpotApi.ExchangeData.GetLendingSymbolsAsync()
Get one lending symbolclient.SpotApi.ExchangeData.GetLendingSymbolAsync("ETH_USDT")
Get spot balancesclient.SpotApi.Account.GetBalancesAsync()
Get one spot asset balanceclient.SpotApi.Account.GetBalancesAsync("ETH")
Get spot ledgerclient.SpotApi.Account.GetLedgerAsync(...)
Generate deposit addressclient.SpotApi.Account.GenerateDepositAddressAsync("ETH")
Get deposit historyclient.SpotApi.Account.GetDepositsAsync(...)
Get withdrawal historyclient.SpotApi.Account.GetWithdrawalsAsync(...)
Withdraw assetclient.SpotApi.Account.WithdrawAsync(...)
Cancel withdrawalclient.SpotApi.Account.CancelWithdrawalAsync(withdrawalId)
Transfer between accountsclient.SpotApi.Account.TransferAsync(asset, from, to, quantity, ...)
Get transfer statusclient.SpotApi.Account.GetTransferStatusAsync(...)
Get trading feesclient.SpotApi.Account.GetTradingFeeAsync(...)
Get account total valuationclient.SpotApi.Account.GetAccountBalancesAsync(...)
Get small balancesclient.SpotApi.Account.GetSmallBalancesAsync()
Convert small balancesclient.SpotApi.Account.ConvertSmallBalancesAsync(...)
Get unified account infoclient.SpotApi.Account.GetUnifiedAccountInfoAsync(...)
Get unified borrowable amountclient.SpotApi.Account.GetUnifiedAccountBorrowableAsync("USDT")
Get unified transferable amountclient.SpotApi.Account.GetUnifiedAccountTransferableAsync("USDT")
Borrow or repay unified accountclient.SpotApi.Account.UnifiedAccountBorrowOrRepayAsync(...)
Get unified loansclient.SpotApi.Account.GetUnifiedAccountLoansAsync(...)
Get margin accountsclient.SpotApi.Account.GetMarginAccountsAsync(...)
Borrow or repay margin loanclient.SpotApi.Account.BorrowOrRepayAsync(...)
Set margin leverageclient.SpotApi.Account.SetMarginLeverageAsync(...)
Place spot orderclient.SpotApi.Trading.PlaceOrderAsync(...)
Query spot orderclient.SpotApi.Trading.GetOrderAsync(symbol, orderId)
Get open spot ordersclient.SpotApi.Trading.GetOpenOrdersAsync(...)
Get spot ordersclient.SpotApi.Trading.GetOrdersAsync(open, symbol, ...)
Cancel spot orderclient.SpotApi.Trading.CancelOrderAsync(symbol, orderId)
Cancel all spot ordersclient.SpotApi.Trading.CancelAllOrdersAsync(symbol)
Edit spot orderclient.SpotApi.Trading.EditOrderAsync(...)
Get user tradesclient.SpotApi.Trading.GetUserTradesAsync(...)
Place spot trigger orderclient.SpotApi.Trading.PlaceTriggerOrderAsync(...)
Get spot trigger ordersclient.SpotApi.Trading.GetTriggerOrdersAsync(...)
Cancel spot trigger orderclient.SpotApi.Trading.CancelTriggerOrderAsync(id)
Place multiple spot ordersclient.SpotApi.Trading.PlaceMultipleOrderAsync(...)
Edit multiple spot ordersclient.SpotApi.Trading.EditMultipleOrderAsync(...)

Perpetual Futures REST

Perpetual futures methods use a settlement asset such as "usdt", "btc", or "usd" plus a contract such as "ETH_USDT".

User intentGateIo.Net member
Get futures server timeclient.PerpetualFuturesApi.ExchangeData.GetServerTimeAsync()
Get futures contractsclient.PerpetualFuturesApi.ExchangeData.GetContractsAsync("usdt")
Get one futures contractclient.PerpetualFuturesApi.ExchangeData.GetContractAsync("usdt", "ETH_USDT")
Get futures order bookclient.PerpetualFuturesApi.ExchangeData.GetOrderBookAsync("usdt", "ETH_USDT")
Get futures tradesclient.PerpetualFuturesApi.ExchangeData.GetTradesAsync("usdt", "ETH_USDT")
Get futures klinesclient.PerpetualFuturesApi.ExchangeData.GetKlinesAsync("usdt", "ETH_USDT", KlineInterval.OneMinute)
Get futures index klinesclient.PerpetualFuturesApi.ExchangeData.GetIndexKlinesAsync(...)
Get futures tickerclient.PerpetualFuturesApi.ExchangeData.GetTickersAsync("usdt", "ETH_USDT")
Get all futures tickersclient.PerpetualFuturesApi.ExchangeData.GetTickersAsync("usdt")
Get funding rate historyclient.PerpetualFuturesApi.ExchangeData.GetFundingRateHistoryAsync(...)
Get insurance balance historyclient.PerpetualFuturesApi.ExchangeData.GetInsuranceBalanceHistoryAsync(...)
Get contract statsclient.PerpetualFuturesApi.ExchangeData.GetContractStatsAsync(...)
Get index constituentsclient.PerpetualFuturesApi.ExchangeData.GetIndexConstituentsAsync(...)
Get liquidationsclient.PerpetualFuturesApi.ExchangeData.GetLiquidationsAsync(...)
Get risk limit tiersclient.PerpetualFuturesApi.ExchangeData.GetRiskLimitTiersAsync(...)
Get futures accountclient.PerpetualFuturesApi.Account.GetAccountAsync("usdt")
Get futures ledgerclient.PerpetualFuturesApi.Account.GetLedgerAsync("usdt", ...)
Set position modeclient.PerpetualFuturesApi.Account.UpdatePositionModeAsync("usdt", dualMode)
Set margin modeclient.PerpetualFuturesApi.Account.SetMarginModeAsync("usdt", "ETH_USDT", MarginMode.Isolated)
Get futures trading feeclient.PerpetualFuturesApi.Account.GetTradingFeeAsync("usdt", "ETH_USDT")
Get futures positionsclient.PerpetualFuturesApi.Trading.GetPositionsAsync("usdt", holding: true)
Get one futures positionclient.PerpetualFuturesApi.Trading.GetPositionAsync("usdt", "ETH_USDT")
Update position marginclient.PerpetualFuturesApi.Trading.UpdatePositionMarginAsync(...)
Set futures leverageclient.PerpetualFuturesApi.Trading.UpdatePositionLeverageAsync("usdt", "ETH_USDT", leverage)
Update risk limitclient.PerpetualFuturesApi.Trading.UpdatePositionRiskLimitAsync(...)
Get dual-mode positionsclient.PerpetualFuturesApi.Trading.GetDualModePositionsAsync(...)
Place futures orderclient.PerpetualFuturesApi.Trading.PlaceOrderAsync(...)
Place multiple futures ordersclient.PerpetualFuturesApi.Trading.PlaceMultipleOrderAsync(...)
Get futures ordersclient.PerpetualFuturesApi.Trading.GetOrdersAsync(...)
Get futures orderclient.PerpetualFuturesApi.Trading.GetOrderAsync(...)
Cancel futures orderclient.PerpetualFuturesApi.Trading.CancelOrderAsync(...)
Cancel all futures ordersclient.PerpetualFuturesApi.Trading.CancelAllOrdersAsync(...)
Edit futures orderclient.PerpetualFuturesApi.Trading.EditOrderAsync(...)
Get futures user tradesclient.PerpetualFuturesApi.Trading.GetUserTradesAsync(...)
Get position close historyclient.PerpetualFuturesApi.Trading.GetPositionCloseHistoryAsync(...)
Get liquidation historyclient.PerpetualFuturesApi.Trading.GetLiquidationHistoryAsync(...)
Place futures trigger orderclient.PerpetualFuturesApi.Trading.PlaceTriggerOrderAsync(...)
Get futures trigger ordersclient.PerpetualFuturesApi.Trading.GetTriggerOrdersAsync(...)
Cancel futures trigger orderclient.PerpetualFuturesApi.Trading.CancelTriggerOrderAsync(...)

Alpha REST

User intentGateIo.Net member
Get Alpha assetsclient.AlphaApi.ExchangeData.GetAssetsAsync(...)
Get Alpha tickersclient.AlphaApi.ExchangeData.GetTickersAsync(...)
Get Alpha account infoclient.AlphaApi.Account.GetAccountInfoAsync()
Get Alpha ledgerclient.AlphaApi.Account.GetLedgerAsync(...)
Get Alpha quoteclient.AlphaApi.Trading.GetQuoteAsync(...)
Place Alpha orderclient.AlphaApi.Trading.PlaceOrderAsync(...)
Get Alpha ordersclient.AlphaApi.Trading.GetOrdersAsync(...)
Get Alpha orderclient.AlphaApi.Trading.GetOrderAsync(...)

Rebate REST

User intentGateIo.Net member
Get partner subordinatesclient.RebateApi.Partner.GetSubordinatesAsync()

Spot WebSocket

User intentGateIo.Net member
Subscribe spot tradessocketClient.SpotApi.SubscribeToTradeUpdatesAsync(symbol, handler)
Subscribe many spot tradessocketClient.SpotApi.SubscribeToTradeUpdatesAsync(symbols, handler)
Subscribe spot ticker updatessocketClient.SpotApi.SubscribeToTickerUpdatesAsync(symbol, handler)
Subscribe many spot ticker updatessocketClient.SpotApi.SubscribeToTickerUpdatesAsync(symbols, handler)
Subscribe spot klinessocketClient.SpotApi.SubscribeToKlineUpdatesAsync(symbol, interval, handler)
Subscribe spot book tickersocketClient.SpotApi.SubscribeToBookTickerUpdatesAsync(symbol, handler)
Subscribe spot order booksocketClient.SpotApi.SubscribeToOrderBookUpdatesAsync(symbol, handler)
Subscribe spot order book v2socketClient.SpotApi.SubscribeToOrderBookV2UpdatesAsync(symbol, depth, handler)
Subscribe spot partial order booksocketClient.SpotApi.SubscribeToPartialOrderBookUpdatesAsync(symbol, depth, updateMs, handler)
Subscribe spot order updatessocketClient.SpotApi.SubscribeToOrderUpdatesAsync(handler)
Subscribe spot user trade updatessocketClient.SpotApi.SubscribeToUserTradeUpdatesAsync(handler)
Subscribe spot balance updatessocketClient.SpotApi.SubscribeToBalanceUpdatesAsync(handler)
Subscribe margin balance updatessocketClient.SpotApi.SubscribeToMarginBalanceUpdatesAsync(handler)
Subscribe funding balance updatessocketClient.SpotApi.SubscribeToFundingBalanceUpdatesAsync(handler)
Subscribe cross-margin balance updatessocketClient.SpotApi.SubscribeToCrossMarginBalanceUpdatesAsync(handler)
Subscribe trigger order updatessocketClient.SpotApi.SubscribeToTriggerOrderUpdatesAsync(handler)
Socket API place spot ordersocketClient.SpotApi.PlaceOrderAsync(...)
Socket API cancel spot ordersocketClient.SpotApi.CancelOrderAsync(...)
Socket API get spot ordersocketClient.SpotApi.GetOrderAsync(...)
Socket API get spot orderssocketClient.SpotApi.GetOrdersAsync(...)

Perpetual Futures WebSocket

User intentGateIo.Net member
Subscribe futures tradessocketClient.PerpetualFuturesApi.SubscribeToTradeUpdatesAsync(settle, contract, handler)
Subscribe futures ticker updatessocketClient.PerpetualFuturesApi.SubscribeToTickerUpdatesAsync(settle, contract, handler)
Subscribe futures book tickersocketClient.PerpetualFuturesApi.SubscribeToBookTickerUpdatesAsync(settle, contract, handler)
Subscribe futures order book v2socketClient.PerpetualFuturesApi.SubscribeToOrderBookV2UpdatesAsync(settle, contract, depth, handler)
Subscribe futures order booksocketClient.PerpetualFuturesApi.SubscribeToOrderBookUpdatesAsync(settle, contract, updateMs, depth, handler)
Subscribe futures klinessocketClient.PerpetualFuturesApi.SubscribeToKlineUpdatesAsync(settle, contract, interval, handler)
Subscribe futures contract statssocketClient.PerpetualFuturesApi.SubscribeToContractStatsUpdatesAsync(settle, contract, interval, handler)
Subscribe futures order updatessocketClient.PerpetualFuturesApi.SubscribeToOrderUpdatesAsync(userId, settle, handler)
Subscribe futures user tradessocketClient.PerpetualFuturesApi.SubscribeToUserTradeUpdatesAsync(userId, settle, handler)
Subscribe futures liquidationssocketClient.PerpetualFuturesApi.SubscribeToUserLiquidationUpdatesAsync(userId, settle, handler)
Subscribe futures auto-deleveragesocketClient.PerpetualFuturesApi.SubscribeToUserAutoDeleverageUpdatesAsync(userId, settle, handler)
Subscribe futures position closesocketClient.PerpetualFuturesApi.SubscribeToPositionCloseUpdatesAsync(userId, settle, handler)
Subscribe futures balance updatessocketClient.PerpetualFuturesApi.SubscribeToBalanceUpdatesAsync(userId, settle, handler)
Subscribe futures risk limit updatessocketClient.PerpetualFuturesApi.SubscribeToReduceRiskLimitUpdatesAsync(userId, settle, handler)
Subscribe futures position updatessocketClient.PerpetualFuturesApi.SubscribeToPositionUpdatesAsync(userId, settle, handler)
Subscribe futures trigger orderssocketClient.PerpetualFuturesApi.SubscribeToTriggerOrderUpdatesAsync(userId, settle, handler)
Subscribe futures ADL updatessocketClient.PerpetualFuturesApi.SubscribeToAdlUpdatesAsync(settle, handler)
Socket API place futures ordersocketClient.PerpetualFuturesApi.PlaceOrderAsync(...)
Socket API cancel futures ordersocketClient.PerpetualFuturesApi.CancelOrderAsync(settle, orderId)
Socket API get futures ordersocketClient.PerpetualFuturesApi.GetOrderAsync(settle, orderId)
Socket API get futures orderssocketClient.PerpetualFuturesApi.GetOrdersAsync(...)

SharedApis

Use SharedApis for exchange-agnostic code across GateIo, Binance, Bybit, OKX, Kraken, and other CryptoExchange.Net libraries.

User intentGateIo.Net member or interface
Shared spot REST clientnew GateIoRestClient().SpotApi.SharedClient
Shared perpetual futures REST clientnew GateIoRestClient().PerpetualFuturesApi.SharedClient
Shared spot socket clientnew GateIoSocketClient().SpotApi.SharedClient
Shared perpetual futures socket clientnew GateIoSocketClient().PerpetualFuturesApi.SharedClient
Discover shared capabilitiesclient.SpotApi.SharedClient.Discover()
Read cached shared spot symbol catalogISpotSymbolRestClient.SpotSymbolCatalog
Read cached shared futures symbol catalogIFuturesSymbolRestClient.FuturesSymbolCatalog
Filter shared symbols by asset classificationSet BaseAssetType, BaseAssetSubType, QuoteAssetType, or QuoteAssetSubType on GetSymbolsRequest
Shared spot ticker RESTISpotTickerRestClient.GetSpotTickerAsync(new GetTickerRequest(symbol))
Shared spot order RESTISpotOrderRestClient.PlaceSpotOrderAsync(...)
Shared futures order RESTIFuturesOrderRestClient.PlaceFuturesOrderAsync(...)
Shared ticker socketITickerSocketClient.SubscribeToTickerUpdatesAsync(...)
Shared order book socketIOrderBookSocketClient.SubscribeToOrderBookUpdatesAsync(...)

Shared REST methods return HttpResult<T> / HttpResult; shared socket subscriptions return WebSocketResult<UpdateSubscription>; shared symbol/cache helpers such as SupportsSpotSymbolAsync and SupportsFuturesSymbolAsync can return ExchangeCallResult<T>.

Shared spot and futures symbol results populate DisplayName, BaseAssetType, BaseAssetSubType, QuoteAssetType, and QuoteAssetSubType. Catalogs are backed by the symbol cache populated by shared symbol retrieval.

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

Result Handling

SituationPattern
REST success checkif (!result.Success) { Console.WriteLine(result.Error); return; }
Socket subscription success checkif (!sub.Success) { Console.WriteLine(sub.Error); return; } where sub is WebSocketResult<UpdateSubscription>
Socket request success checkif (!query.Success) { Console.WriteLine(query.Error); return; } where query is QueryResult<T> or QueryResult
Read REST dataRead result.Data only after result.Success
Read shared helper dataRead ExchangeCallResult<T>.Data only after .Success
Retry decisionRetry only when result.Error?.IsTransient == true
CancellationPass ct: cancellationToken

Common Routing Pitfalls

Do not useUse instead
GateIoClientGateIoRestClient
ApiCredentialsGateIoCredentials
ETHUSDT in native Gate.io callsETH_USDT
UsdFuturesApi / CoinFuturesApiPerpetualFuturesApi
Futures call without settlement assetInclude "usdt", "btc", or "usd" first
Decimal futures order quantityInteger contract quantity
SpotApi.MarginSpotApi.Account / SpotApi.ExchangeData margin methods
.Data without .Success checkCheck .Success first
ITickerSocketClient.UnsubscribeAsync(...)Keep the concrete socket client and call socketClient.UnsubscribeAsync(subscription.Data)