Upbit.Net AI API Quick Map

June 29, 2026 ยท View on GitHub

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

Client Roots

IntentUse
REST callsnew UpbitRestClient()
WebSocket streamsnew UpbitSocketClient()
API key authenticationNot supported by this library
Live South Korea environmentUpbitEnvironment.Live
Live Singapore environmentUpbitEnvironment.Singapore
Live Indonesia environmentUpbitEnvironment.Indonesia
Live Thailand environmentUpbitEnvironment.Thailand
Custom environmentUpbitEnvironment.CreateCustom(name, restAddress, socketAddress)
Dependency injectionservices.AddUpbit(options => { ... })

Spot REST

User intentUpbit.Net member
Get supported symbols / marketsclient.SpotApi.ExchangeData.GetSymbolsAsync(includeNotifications: true)
Get supported symbols without notificationsclient.SpotApi.ExchangeData.GetSymbolsAsync(includeNotifications: false)
Get one tickerclient.SpotApi.ExchangeData.GetTickerAsync("USDT-ETH")
Get multiple tickersclient.SpotApi.ExchangeData.GetTickersAsync(new[] { "USDT-ETH", "USDT-BTC" })
Get all tickers for quote assetsclient.SpotApi.ExchangeData.GetTickersByQuoteAssetsAsync(new[] { "USDT", "BTC" })
Get recent tradesclient.SpotApi.ExchangeData.GetTradeHistoryAsync("USDT-ETH", limit: 100)
Get trade history before timeclient.SpotApi.ExchangeData.GetTradeHistoryAsync("USDT-ETH", endTime: endTime, limit: 100)
Get trade history with cursorclient.SpotApi.ExchangeData.GetTradeHistoryAsync("USDT-ETH", cursor: cursor)
Get order bookclient.SpotApi.ExchangeData.GetOrderBookAsync("USDT-ETH", levels: 15)
Get aggregated order bookclient.SpotApi.ExchangeData.GetOrderBookAsync("USDT-ETH", levels: 15, aggregation: 0.01m)
Get multiple order booksclient.SpotApi.ExchangeData.GetOrderBooksAsync(new[] { "USDT-ETH", "USDT-BTC" }, levels: 15)
Get klines/candlesclient.SpotApi.ExchangeData.GetKlinesAsync("USDT-ETH", KlineInterval.OneMinute, limit: 100)
Get klines before timeclient.SpotApi.ExchangeData.GetKlinesAsync("USDT-ETH", KlineInterval.OneMinute, endTime: endTime, limit: 100)
Get one second candlesclient.SpotApi.ExchangeData.GetKlinesAsync("USDT-ETH", KlineInterval.OneSecond)
Get daily candlesclient.SpotApi.ExchangeData.GetKlinesAsync("USDT-ETH", KlineInterval.OneDay)
Get symbol order book configclient.SpotApi.ExchangeData.GetSymbolConfigAsync("USDT-ETH")
Get config for multiple symbolsclient.SpotApi.ExchangeData.GetSymbolConfigAsync("USDT-ETH,USDT-BTC")

Spot WebSocket

User intentUpbit.Net member
Subscribe ticker updatessocketClient.SpotApi.SubscribeToTickerUpdatesAsync("USDT-ETH", handler)
Subscribe many ticker updatessocketClient.SpotApi.SubscribeToTickerUpdatesAsync(new[] { "USDT-ETH", "USDT-BTC" }, handler)
Subscribe trade updatessocketClient.SpotApi.SubscribeToTradeUpdatesAsync("USDT-ETH", handler)
Subscribe many trade updatessocketClient.SpotApi.SubscribeToTradeUpdatesAsync(new[] { "USDT-ETH", "USDT-BTC" }, handler)
Subscribe order book updatessocketClient.SpotApi.SubscribeToOrderBookUpdatesAsync("USDT-ETH", 15, handler)
Subscribe aggregated order book updatessocketClient.SpotApi.SubscribeToOrderBookUpdatesAsync("USDT-ETH", 15, handler, aggregation: 0.01m)
Subscribe many order book updatessocketClient.SpotApi.SubscribeToOrderBookUpdatesAsync(new[] { "USDT-ETH", "USDT-BTC" }, 15, handler)
Subscribe kline/candle updatessocketClient.SpotApi.SubscribeToKlineUpdatesAsync("USDT-ETH", KlineInterval.OneMinute, handler)
Subscribe many kline/candle updatessocketClient.SpotApi.SubscribeToKlineUpdatesAsync(new[] { "USDT-ETH", "USDT-BTC" }, KlineInterval.OneMinute, handler)
Unsubscribe one streamawait socketClient.UnsubscribeAsync(subscription.Data)
Unsubscribe all streamsawait socketClient.UnsubscribeAllAsync()

SharedApis REST

Use SharedApis for exchange-agnostic market-data code across Upbit, Binance, OKX, Kraken, and other CryptoExchange.Net libraries.

User intentUpbit.Net member or interface
Shared spot REST clientnew UpbitRestClient().SpotApi.SharedClient
Shared spot ticker RESTISpotTickerRestClient.GetSpotTickerAsync(new GetTickerRequest(symbol))
Shared spot tickers RESTISpotTickerRestClient.GetSpotTickersAsync(new GetTickersRequest())
Shared symbols RESTISpotSymbolRestClient.GetSpotSymbolsAsync(new GetSymbolsRequest())
Shared klines RESTIKlineRestClient.GetKlinesAsync(new GetKlinesRequest(symbol, interval), pageRequest, ct)
Shared order book RESTIOrderBookRestClient.GetOrderBookAsync(new GetOrderBookRequest(symbol), ct)
Shared recent trades RESTIRecentTradeRestClient.GetRecentTradesAsync(new GetRecentTradesRequest(symbol), ct)
Shared trade history RESTITradeHistoryRestClient.GetTradeHistoryAsync(new GetTradeHistoryRequest(symbol), pageRequest, ct)
Shared book ticker RESTIBookTickerRestClient.GetBookTickerAsync(new GetBookTickerRequest(symbol), ct)

SharedApis WebSocket

User intentUpbit.Net member or interface
Shared spot socket clientnew UpbitSocketClient().SpotApi.SharedClient
Shared ticker socketITickerSocketClient.SubscribeToTickerUpdatesAsync(new SubscribeTickerRequest(symbol), handler)
Shared trade socketITradeSocketClient.SubscribeToTradeUpdatesAsync(new SubscribeTradeRequest(symbol), handler)
Shared order book socketIOrderBookSocketClient.SubscribeToOrderBookUpdatesAsync(new SubscribeOrderBookRequest(symbol), handler)
Shared book ticker socketIBookTickerSocketClient.SubscribeToBookTickerUpdatesAsync(new SubscribeBookTickerRequest(symbol), handler)
Shared kline socketIKlineSocketClient.SubscribeToKlineUpdatesAsync(new SubscribeKlineRequest(symbol, interval), handler)
Shared socket unsubscribeKeep concrete UpbitSocketClient and call socketClient.UnsubscribeAsync(subscription.Data)
Discover shared capabilitiesclient.SpotApi.SharedClient.Discover() or socketClient.SpotApi.SharedClient.Discover()

Kline Intervals

User intentUpbit.Net enum
1 second candleKlineInterval.OneSecond
1 minute candleKlineInterval.OneMinute
3 minute candleKlineInterval.ThreeMinutes
5 minute candleKlineInterval.FiveMinutes
10 minute candleKlineInterval.TenMinutes
15 minute candleKlineInterval.FifteenMinutes
30 minute candleKlineInterval.ThirtyMinutes
1 hour candleKlineInterval.OneHour
4 hour candleKlineInterval.FourHours
1 day candleKlineInterval.OneDay
1 week candleKlineInterval.OneWeek
1 month candleKlineInterval.OneMonth
1 year candleKlineInterval.OneYear

Environments And Symbols

User intentUse
Korea live marketsUpbitEnvironment.Live
Singapore live marketsUpbitEnvironment.Singapore
Indonesia live marketsUpbitEnvironment.Indonesia
Thailand live marketsUpbitEnvironment.Thailand
Symbol formatQUOTE-BASE, for example USDT-ETH, KRW-BTC, SGD-BTC
SharedApis symbolnew SharedSymbol(TradingMode.Spot, "ETH", "USDT")
List available environment namesUpbitEnvironment.All

Result Handling

SituationPattern
REST success checkDirect and shared REST methods return HttpResult<T> / HttpResult
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
Socket teardownawait socketClient.UnsubscribeAsync(sub.Data)

Common Routing Pitfalls

Do not useUse instead
Raw HttpClient to Upbit endpointsUpbitRestClient / UpbitSocketClient
ApiCredentials, UpbitCredentials, API key setupNo credentials; public APIs only
SpotApi.TradingNot supported by this library
SpotApi.AccountNot supported by this library
Futures, margin, private streamsNot supported by this library
ETHUSDTUSDT-ETH
Testnet environmentRegional live environments only
.Data without .Success checkCheck .Success first
ITickerSocketClient.UnsubscribeAsync(...)Keep the concrete socket client and call socketClient.UnsubscribeAsync(subscription.Data)